All functions:
  Elements:
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:37,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:42,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:44,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:45,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 48
    functionName: BehaviorTreeTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_tree.cpp
    functionUses: 0
    functionsReached:
    - milliseconds
    - addChild
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: ~BehaviorTreeTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_tree.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~BehaviorTreeTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: BehaviorTreeTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_tree.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeTest(const BehaviorTreeTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: '& operator=(const BehaviorTreeTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_tree.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BehaviorTreeTest
    signature: BehaviorTreeTest & operator=(const BehaviorTreeTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: BehaviorTreeTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_tree.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeTest(BehaviorTreeTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: '& operator=(BehaviorTreeTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_tree.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BehaviorTreeTest
    signature: BehaviorTreeTest & operator=(BehaviorTreeTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:60,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:61,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:63,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:65,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:66,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:66,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:67,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:67,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:68,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:68,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:69,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 70
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_tree.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(BehaviorTreeTest, Condition1ToFalseCondition2True)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:74,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:75,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:77,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:79,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:80,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:80,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:81,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:81,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:82,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:82,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:83,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 84
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_tree.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(BehaviorTreeTest, Condition2ToFalseCondition1True)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::printTreeRecursively
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:89,1
    - Dst: BT::printTreeRecursively
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:93,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:97,1
    - Dst: std::getline
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:97,1
    - Dst: ASSERT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:98,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:98,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:101,1
    - Dst: std::getline
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:101,1
    - Dst: ASSERT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:102,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:102,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:102,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:104,1
    - Dst: std::getline
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:104,1
    - Dst: ASSERT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:105,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:105,1
    - Dst: c_str
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:105,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:105,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:107,1
    - Dst: std::getline
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:107,1
    - Dst: ASSERT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:108,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:108,1
    - Dst: c_str
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:108,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:108,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:110,1
    - Dst: std::getline
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:110,1
    - Dst: ASSERT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:111,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:111,1
    - Dst: c_str
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:111,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:111,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:113,1
    - Dst: std::getline
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:113,1
    - Dst: ASSERT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:114,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:114,1
    - Dst: c_str
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:114,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:114,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:117,1
    - Dst: std::getline
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:117,1
    - Dst: ASSERT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:118,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:118,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:121,1
    - Dst: std::getline
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 122
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_tree.cpp
    functionUses: 0
    functionsReached:
    - std::string::c_str
    - ASSERT_STREQ
    - name
    - std::getline
    - ASSERT_FALSE
    - BT::printTreeRecursively
    - ASSERT_TRUE
    - c_str
    linkageType: ''
    returnType: void
    signature: void TEST_F(BehaviorTreeTest, PrintWithStream)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: testing::InitGoogleTest
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:126,1
    - Dst: RUN_ALL_TESTS
      Src: /src/behaviortreecpp/tests/gtest_tree.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 124
    functionDepth: 0
    functionLinenumber: 124
    functionLinenumberEnd: 128
    functionName: main
    functionSourceFile: /src/behaviortreecpp/tests/gtest_tree.cpp
    functionUses: 0
    functionsReached:
    - RUN_ALL_TESTS
    - testing::InitGoogleTest
    linkageType: ''
    returnType: int
    signature: int main(int argc, char** argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setChild
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 38
    functionName: DeadlineTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - setChild
    linkageType: ''
    returnType: void
    signature: void DeadlineTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: ~DeadlineTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~DeadlineTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: DeadlineTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DeadlineTest(const DeadlineTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: '& operator=(const DeadlineTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DeadlineTest
    signature: DeadlineTest & operator=(const DeadlineTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: DeadlineTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DeadlineTest(DeadlineTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: '& operator=(DeadlineTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DeadlineTest
    signature: DeadlineTest & operator=(DeadlineTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setChild
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: RepeatTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - setChild
    linkageType: ''
    returnType: void
    signature: void RepeatTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: ~RepeatTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RepeatTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: RepeatTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RepeatTest(const RepeatTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: '& operator=(const RepeatTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RepeatTest
    signature: RepeatTest & operator=(const RepeatTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: RepeatTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RepeatTest(RepeatTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: '& operator=(RepeatTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RepeatTest
    signature: RepeatTest & operator=(RepeatTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:67,1
    - Dst: setChild
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: RepeatTestAsync
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - setChild
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void RepeatTestAsync()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 71
    functionName: ~RepeatTestAsync() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RepeatTestAsync() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 72
    functionName: RepeatTestAsync
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RepeatTestAsync(const RepeatTestAsync&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 73
    functionName: '& operator=(const RepeatTestAsync&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RepeatTestAsync
    signature: RepeatTestAsync & operator=(const RepeatTestAsync&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: RepeatTestAsync
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RepeatTestAsync(RepeatTestAsync&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 75
    functionName: '& operator=(RepeatTestAsync&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RepeatTestAsync
    signature: RepeatTestAsync & operator=(RepeatTestAsync&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setChild
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 86
    functionName: RetryTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - setChild
    linkageType: ''
    returnType: void
    signature: void RetryTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 87
    functionName: ~RetryTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RetryTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 88
    functionName: RetryTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RetryTest(const RetryTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 89
    functionName: '& operator=(const RetryTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RetryTest
    signature: RetryTest & operator=(const RetryTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 90
    functionName: RetryTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RetryTest(RetryTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 91
    functionName: '& operator=(RetryTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RetryTest
    signature: RetryTest & operator=(RetryTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setChild
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:102,1
    - Dst: setChild
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 104
    functionName: TimeoutAndRetry
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - setChild
    linkageType: ''
    returnType: void
    signature: void TimeoutAndRetry()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:111,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:114,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:114,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:115,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:117,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:117,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:118,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:119,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:120,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 121
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(DeadlineTest, DeadlineTriggeredTest)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setTime
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:125,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:128,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:130,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:130,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:131,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:133,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:133,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:134,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:135,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:135,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 137
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - setTime
    - ASSERT_EQ
    - status
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(DeadlineTest, DeadlineNotTriggeredTest)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:141,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:143,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:144,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:144,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:145,1
    - Dst: tickCount
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:145,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:147,1
    - Dst: resetTicks
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:148,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:150,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:151,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:151,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:152,1
    - Dst: tickCount
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 153
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - tickCount
    - resetTicks
    - ASSERT_EQ
    - status
    - setExpectedResult
    - executeTick
    linkageType: ''
    returnType: void
    signature: void TEST_F(RetryTest, RetryTestA)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:157,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:159,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:163,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:163,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:164,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:167,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:167,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:168,1
    - Dst: successCount
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:168,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:169,1
    - Dst: failureCount
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:169,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:172,1
    - Dst: resetCounters
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:173,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:175,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:178,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:178,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:179,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:182,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:182,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:183,1
    - Dst: successCount
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:183,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:184,1
    - Dst: failureCount
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:184,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 185
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - successCount
    - ASSERT_EQ
    - status
    - failureCount
    - setExpectedResult
    - std::this_thread::sleep_for
    - resetCounters
    - executeTick
    - std::chrono::milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(RepeatTestAsync, RepeatTestAsync)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:189,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:191,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:192,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:192,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:193,1
    - Dst: tickCount
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:193,1
    - Dst: resetTicks
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:196,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:197,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:199,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:200,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:200,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:201,1
    - Dst: tickCount
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 202
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - tickCount
    - resetTicks
    - ASSERT_EQ
    - status
    - setExpectedResult
    - executeTick
    linkageType: ''
    returnType: void
    signature: void TEST_F(RepeatTest, RepeatTestA)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:207,1
    - Dst: std::chrono::high_resolution_clock::now
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:209,1
    - Dst: std::chrono::high_resolution_clock::now
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:211,1
    - Dst: std::chrono::seconds
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:211,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:213,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:213,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:214,1
    - Dst: std::chrono::microseconds
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:214,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 216
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - std::chrono::high_resolution_clock::now
    - std::chrono::seconds
    - std::chrono::microseconds
    - setExpectedResult
    - std::this_thread::sleep_for
    - executeTick
    - ASSERT_NE
    linkageType: ''
    returnType: void
    signature: void TEST_F(TimeoutAndRetry, Issue57)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:220,1
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:222,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:234,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:238,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:239,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:242,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:244,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 245
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void TEST(Decorator, RunOnce)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:250,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:261,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:264,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:265,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:266,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:269,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:269,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:270,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:271,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:276,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:276,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:277,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:279,1
    - Dst: std::chrono::duration_cast<std::chrono::milliseconds>
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:280,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:283,1
    - Dst: ASSERT_GE
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:285,1
    - Dst: auto::count
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:285,1
    - Dst: ASSERT_LE
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:287,1
    - Dst: auto::count
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:287,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 248
    functionDepth: 1
    functionLinenumber: 248
    functionLinenumberEnd: 288
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::count
    - std::chrono::steady_clock::now
    - ASSERT_EQ
    - ASSERT_LE
    - std::this_thread::sleep_for
    - auto::tickOnce
    - ASSERT_GE
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - std::chrono::milliseconds
    - std::chrono::duration_cast<std::chrono::milliseconds>
    linkageType: ''
    returnType: void
    signature: void TEST(Decorator, DelayWithXML)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:293,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:304,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:305,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 291
    functionDepth: 1
    functionLinenumber: 291
    functionLinenumberEnd: 309
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(Decorator, ForceFailure_ChildSuccess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:313,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:324,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:325,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 329
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(Decorator, ForceFailure_ChildFailure)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:334,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:345,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:346,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:349,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 332
    functionDepth: 1
    functionLinenumber: 332
    functionLinenumberEnd: 350
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(Decorator, ForceSuccess_ChildFailure)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:354,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:365,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:366,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:369,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 352
    functionDepth: 1
    functionLinenumber: 352
    functionLinenumberEnd: 370
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(Decorator, ForceSuccess_ChildSuccess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:375,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:386,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:387,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 391
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 391
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(Decorator, Inverter_ChildSuccess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:395,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:406,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:407,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:410,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 393
    functionDepth: 1
    functionLinenumber: 393
    functionLinenumberEnd: 411
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(Decorator, Inverter_ChildFailure)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:416,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:430,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:431,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:434,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 413
    functionDepth: 1
    functionLinenumber: 413
    functionLinenumberEnd: 435
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(Decorator, Inverter_InSequence)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:440,1
    - Dst: BT::BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:443,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:461,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:464,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:465,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:466,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:469,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:470,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:471,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:474,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:475,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_decorator.cpp:476,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 477
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_decorator.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - BT::BehaviorTreeFactory::registerSimpleAction
    - ASSERT_EQ
    - auto::tickOnce
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(Decorator, KeepRunningUntilFailure)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:16,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:37,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:38,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:39,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:40,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:41,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 12
    functionDepth: 1
    functionLinenumber: 12
    functionLinenumberEnd: 43
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached:
    - RegisterTestTick
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(PreconditionsDecorator, Integers)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:49,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:73,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:74,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:75,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:76,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:77,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 45
    functionDepth: 1
    functionLinenumber: 45
    functionLinenumberEnd: 79
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached:
    - RegisterTestTick
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(PreconditionsDecorator, DoubleEquals)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:85,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:106,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:107,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:108,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:109,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 81
    functionDepth: 1
    functionLinenumber: 81
    functionLinenumberEnd: 111
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached:
    - RegisterTestTick
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(PreconditionsDecorator, StringEquals)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 118
    functionName: KeepRunning::KeepRunning
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void KeepRunning(const std::string& name, const BT::NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 123
    functionName: KeepRunning::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: KeepRunning::onStart
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus onStart() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 133
    functionName: KeepRunning::onRunning
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus onRunning() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: KeepRunning::onHalted
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void onHalted() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:144,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:160,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:162,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:162,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:164,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:165,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:165,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:167,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:168,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 169
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - EXPECT_EQ
    - BehaviorTreeFactory::registerNodeType
    - auto::tickOnce
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(PreconditionsDecorator, ChecksConditionOnce)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:174,1
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:176,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:199,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:201,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:201,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:202,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:205,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:206,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:207,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:208,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:208,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:209,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:212,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:213,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:214,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:214,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 171
    functionDepth: 1
    functionLinenumber: 171
    functionLinenumberEnd: 216
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - EXPECT_EQ
    - BehaviorTreeFactory::registerNodeType
    - auto::tickOnce
    - RegisterTestTick
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(PreconditionsDecorator, CanRunChildrenMultipleTimes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:222,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:240,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:241,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:242,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:243,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:244,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:245,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 247
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached:
    - RegisterTestTick
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(Preconditions, Basic)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:253,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:267,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:268,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:268,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:270,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:271,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:272,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:273,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:275,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:276,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:277,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:278,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:280,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:281,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:282,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:283,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 284
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::subtrees::front
    - set
    - ASSERT_EQ
    - auto::tickOnce
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void TEST(Preconditions, Issue533)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' node_name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 291
    functionName: CoroTestNode::CoroTestNode
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CoroTestNode(const std::string& node_name, const BT::NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setStatusRunningAndYield
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 301
      start: 293
    functionDepth: 0
    functionLinenumber: 293
    functionLinenumberEnd: 301
    functionName: CoroTestNode::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached:
    - setStatusRunningAndYield
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 306
    functionName: CoroTestNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:314,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:327,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:328,1
    - Dst: dynamic_cast<CoroTestNode*>
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:330,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:330,1
    - Dst: back
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:330,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 332
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::subtrees::front
    - auto::tickWhileRunning
    - dynamic_cast<CoroTestNode*>
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - back
    linkageType: ''
    returnType: void
    signature: void TEST(Preconditions, Issue585)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:346,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:348,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:349,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:349,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:353,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:354,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:354,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 355
      start: 334
    functionDepth: 0
    functionLinenumber: 334
    functionLinenumberEnd: 355
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached:
    - auto::rootBlackboard
    - auto::tickOnce
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    linkageType: ''
    returnType: void
    signature: void TEST(Preconditions, Issue615_NoSkipWhenRunning_A)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:368,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:369,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:371,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:372,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:372,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:375,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:376,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:376,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:379,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:380,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:380,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 357
    functionDepth: 0
    functionLinenumber: 357
    functionLinenumberEnd: 381
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - auto::tickOnce
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(Preconditions, Issue615_NoSkipWhenRunning_B)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 388
    functionName: SimpleOutput::SimpleOutput
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleOutput(const std::string& name, const BT::NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OutputPort<bool>
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 390
    functionDepth: 0
    functionLinenumber: 390
    functionLinenumberEnd: 393
    functionName: SimpleOutput::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached:
    - OutputPort<bool>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:397,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 395
    functionDepth: 0
    functionLinenumber: 395
    functionLinenumberEnd: 399
    functionName: SimpleOutput::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached:
    - setOutput
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:434,1
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:435,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:437,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:438,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:440,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:442,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:443,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:444,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 402
    functionDepth: 1
    functionLinenumber: 402
    functionLinenumberEnd: 445
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void TEST(Preconditions, Remapping)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:462,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:463,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:464,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:466,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:467,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:468,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:470,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:471,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:471,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:474,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:475,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:477,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:478,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:478,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 447
    functionDepth: 0
    functionLinenumber: 447
    functionLinenumberEnd: 479
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - auto::tickOnce
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(Preconditions, WhileCallsOnHalt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:492,1
    - Dst: auto::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:493,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:495,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:496,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:497,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:499,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:500,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:501,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:503,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:504,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:505,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:507,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:508,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_preconditions.cpp:509,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 510
      start: 481
    functionDepth: 0
    functionLinenumber: 481
    functionLinenumberEnd: 510
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_preconditions.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - auto::rootBlackboard
    - auto::createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST(Preconditions, SkippedSequence)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::reflected_min
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - timeout
    - will_fail
    - ' node_name'
    - ' config'
    argTypes:
    - milliseconds
    - bool
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: SimpleCoroAction::SimpleCoroAction
    functionSourceFile: /src/behaviortreecpp/tests/gtest_coroutines.cpp
    functionUses: 0
    functionsReached:
    - magic_enum::detail::reflected_min
    linkageType: ''
    returnType: void
    signature: "void SimpleCoroAction(milliseconds timeout, bool will_fail, const
      std::string& node_name,\n                   const BT::NodeConfig& config)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::reflected_min
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:38,1
    - Dst: CoroActionNode::halt
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 35
    functionDepth: 1
    functionLinenumber: 35
    functionLinenumberEnd: 41
    functionName: SimpleCoroAction::halt
    functionSourceFile: /src/behaviortreecpp/tests/gtest_coroutines.cpp
    functionUses: 0
    functionsReached:
    - magic_enum::detail::reflected_min
    - CoroActionNode::halt
    linkageType: ''
    returnType: void
    signature: void halt() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: SimpleCoroAction::wasHalted
    functionSourceFile: /src/behaviortreecpp/tests/gtest_coroutines.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool wasHalted()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ms
    argTypes:
    - Millisecond
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: SimpleCoroAction::setRequiredTime
    functionSourceFile: /src/behaviortreecpp/tests/gtest_coroutines.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setRequiredTime(Millisecond ms)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::reflected_min
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:58,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:60,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:63,1
    - Dst: setStatusRunningAndYield
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:65,1
    - Dst: magic_enum::detail::reflected_min
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:69,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 71
    functionName: SimpleCoroAction::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_coroutines.cpp
    functionUses: 0
    functionsReached:
    - setStatusRunningAndYield
    - std::chrono::steady_clock::now
    - magic_enum::detail::reflected_min
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:86,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:89,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:90,1
    - Dst: Millisecond
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' node'
    argTypes:
    - BT::TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 93
    functionName: executeWhileRunning
    functionSourceFile: /src/behaviortreecpp/tests/gtest_coroutines.cpp
    functionUses: 0
    functionsReached:
    - std::this_thread::sleep_for
    - Millisecond
    - executeTick
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus executeWhileRunning(BT::TreeNode& node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:86,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:89,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:90,1
    - Dst: Millisecond
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:90,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' node'
    argTypes:
    - BT::TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 93
    functionName: executeWhileRunning
    functionSourceFile: /src/behaviortreecpp/tests/gtest_coroutines.cpp
    functionUses: 0
    functionsReached:
    - std::this_thread::sleep_for
    - Millisecond
    - executeTick
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus executeWhileRunning(BT::TreeNode& node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:99,1
    - Dst: BT::assignDefaultRemapping<SimpleCoroAction>
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:100,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:103,1
    - Dst: executeWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:103,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:104,1
    - Dst: SimpleCoroAction::wasHalted
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:104,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:106,1
    - Dst: executeWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:106,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:108,1
    - Dst: SimpleCoroAction::wasHalted
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:108,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:111,1
    - Dst: executeWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:111,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:113,1
    - Dst: SimpleCoroAction::wasHalted
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:113,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:115,1
    - Dst: executeWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:115,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:118,1
    - Dst: SimpleCoroAction::wasHalted
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 119
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_coroutines.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_FALSE
    - BT::Blackboard::create
    - EXPECT_EQ
    - BT::assignDefaultRemapping<SimpleCoroAction>
    - executeWhileRunning
    - SimpleCoroAction::wasHalted
    linkageType: ''
    returnType: void
    signature: void TEST(CoroTest, do_action)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:124,1
    - Dst: BT::assignDefaultRemapping<SimpleCoroAction>
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:125,1
    - Dst: count
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:129,1
    - Dst: BT::TimeoutNode::setChild
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:131,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:133,1
    - Dst: executeWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:133,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:134,1
    - Dst: SimpleCoroAction::wasHalted
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:134,1
    - Dst: SimpleCoroAction::setRequiredTime
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:137,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:139,1
    - Dst: executeWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:139,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:140,1
    - Dst: SimpleCoroAction::wasHalted
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 141
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_coroutines.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_FALSE
    - BT::Blackboard::create
    - count
    - EXPECT_TRUE
    - EXPECT_EQ
    - SimpleCoroAction::setRequiredTime
    - BT::assignDefaultRemapping<SimpleCoroAction>
    - BT::TimeoutNode::setChild
    - executeWhileRunning
    - SimpleCoroAction::wasHalted
    linkageType: ''
    returnType: void
    signature: void TEST(CoroTest, do_action_timeout)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:146,1
    - Dst: BT::assignDefaultRemapping<SimpleCoroAction>
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:147,1
    - Dst: count
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:153,1
    - Dst: BT::TimeoutNode::setChild
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:156,1
    - Dst: BT::SequenceNode::addChild
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:157,1
    - Dst: BT::SequenceNode::addChild
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:158,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:160,1
    - Dst: executeWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:160,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:161,1
    - Dst: SimpleCoroAction::wasHalted
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:161,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:162,1
    - Dst: SimpleCoroAction::wasHalted
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 163
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_coroutines.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_FALSE
    - BT::Blackboard::create
    - count
    - SimpleCoroAction::wasHalted
    - EXPECT_EQ
    - EXPECT_TRUE
    - BT::assignDefaultRemapping<SimpleCoroAction>
    - BT::TimeoutNode::setChild
    - executeWhileRunning
    - BT::SequenceNode::addChild
    linkageType: ''
    returnType: void
    signature: void TEST(CoroTest, sequence_child)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:168,1
    - Dst: BT::assignDefaultRemapping<SimpleCoroAction>
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:169,1
    - Dst: SimpleCoroAction::executeTick
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:172,1
    - Dst: std::async
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:174,1
    - Dst: SimpleCoroAction::halt
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:174,1
    - Dst: auto::wait
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:175,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:176,1
    - Dst: SimpleCoroAction::wasHalted
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:176,1
    - Dst: std::async
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:178,1
    - Dst: SimpleCoroAction::executeTick
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:178,1
    - Dst: auto::wait
      Src: /src/behaviortreecpp/tests/gtest_coroutines.cpp:179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 165
    functionDepth: 2
    functionLinenumber: 165
    functionLinenumberEnd: 180
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_coroutines.cpp
    functionUses: 0
    functionsReached:
    - SimpleCoroAction::executeTick
    - auto::wait
    - BT::Blackboard::create
    - SimpleCoroAction::halt
    - EXPECT_TRUE
    - BT::assignDefaultRemapping<SimpleCoroAction>
    - std::async
    - SimpleCoroAction::wasHalted
    linkageType: ''
    returnType: void
    signature: void TEST(CoroTest, OtherThreadHalt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::loadSubstitutionRuleFromJSON
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:52,1
    - Dst: BehaviorTreeFactory::substitutionRules
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:54,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:56,1
    - Dst: size
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:56,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:57,1
    - Dst: count
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:57,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:58,1
    - Dst: count
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:58,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:59,1
    - Dst: count
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:59,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:60,1
    - Dst: count
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:60,1
    - Dst: std::get_if<TestNodeConfig>
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:62,1
    - Dst: at
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:62,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:63,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:64,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:64,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:65,1
    - Dst: std::get_if<TestNodeConfig>
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:67,1
    - Dst: at
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:67,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:68,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:69,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:69,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:70,1
    - Dst: auto::post_script::empty
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:70,1
    - Dst: std::get_if<TestNodeConfig>
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:72,1
    - Dst: at
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:72,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:73,1
    - Dst: auto::return_status_script::empty
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:73,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:74,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:76,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:78,1
    - Dst: std::get_if<std::string>
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:78,1
    - Dst: at
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 79
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_substitution.cpp
    functionUses: 0
    functionsReached:
    - std::chrono::milliseconds
    - auto::post_script::empty
    - std::get_if<TestNodeConfig>
    - count
    - BehaviorTreeFactory::substitutionRules
    - ASSERT_EQ
    - size
    - ASSERT_FALSE
    - auto::return_status_script::empty
    - ASSERT_TRUE
    - std::get_if<std::string>
    - BehaviorTreeFactory::loadSubstitutionRuleFromJSON
    - at
    linkageType: ''
    returnType: void
    signature: void TEST(Substitution, Parser)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerScriptingEnum
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:84,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:85,1
    - Dst: BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:90,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:92,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:93,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:95,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:95,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:96,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 97
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_substitution.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::registerScriptingEnum
    - auto::tickWhileRunning
    - BT::Blackboard::create
    - ASSERT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - auto::get
    - BehaviorTreeFactory::addSubstitutionRule
    linkageType: ''
    returnType: void
    signature: void TEST(Substitution, TestNodePostScriptUsesRegisteredEnums)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:102,1
    - Dst: BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:107,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:109,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:110,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:111,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:113,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:113,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:114,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 115
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_substitution.cpp
    functionUses: 0
    functionsReached:
    - auto::set
    - auto::tickWhileRunning
    - BT::Blackboard::create
    - ASSERT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - auto::get
    - BehaviorTreeFactory::addSubstitutionRule
    linkageType: ''
    returnType: void
    signature: void TEST(Substitution, TestNodePostScriptReadsStatusNamedBlackboardKey)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_THROW
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:133,1
    - Dst: BehaviorTreeFactory::loadSubstitutionRuleFromJSON
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 134
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_substitution.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::loadSubstitutionRuleFromJSON
    - ASSERT_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(Substitution, ParserRejectsMissingReturnStatusAndScript)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::loadSubstitutionRuleFromJSON
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:165,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:166,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:168,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:169,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:171,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:171,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:172,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 173
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_substitution.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - BT::Blackboard::create
    - ASSERT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - auto::get
    - BehaviorTreeFactory::loadSubstitutionRuleFromJSON
    linkageType: ''
    returnType: void
    signature: void TEST(Substitution, ScriptedReturnStatusFromJson)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:189,1
    - Dst: BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:195,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:197,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:198,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:200,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:200,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:201,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 202
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_substitution.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - BT::Blackboard::create
    - ASSERT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - auto::get
    - BehaviorTreeFactory::addSubstitutionRule
    linkageType: ''
    returnType: void
    signature: void TEST(Substitution, ScriptedReturnStatusOverridesFixedStatus)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:218,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:222,1
    - Dst: BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:223,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:225,1
    - Dst: std::async
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:227,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:227,1
    - Dst: auto::wait_for
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:229,1
    - Dst: std::chrono::seconds
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:229,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:230,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:232,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 233
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_substitution.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - std::chrono::seconds
    - ASSERT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - auto::get
    - BehaviorTreeFactory::addSubstitutionRule
    - auto::wait_for
    - std::chrono::milliseconds
    - ASSERT_NE
    - std::async
    linkageType: ''
    returnType: void
    signature: void TEST(Substitution, ScriptedReturnStatusAsyncSubstitution)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:246,1
    - Dst: BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:250,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:252,1
    - Dst: ASSERT_THROW
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:253,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:253,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 235
    functionDepth: 0
    functionLinenumber: 235
    functionLinenumberEnd: 254
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_substitution.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - BehaviorTreeFactory::addSubstitutionRule
    - ASSERT_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(Substitution, ScriptedReturnStatusRejectsIdle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:276,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:277,1
    - Dst: BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:281,1
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:285,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:285,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:288,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 290
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_substitution.cpp
    functionUses: 0
    functionsReached:
    - Tree::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - BehaviorTreeFactory::addSubstitutionRule
    - ASSERT_NO_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(Substitution, SubTreeNodeSubstitution)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:313,1
    - Dst: InputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:315,1
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:318,1
    - Dst: BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:323,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:325,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:326,1
    - Dst: std::async
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:330,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:330,1
    - Dst: auto::wait_for
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:332,1
    - Dst: std::chrono::seconds
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:332,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:333,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:335,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 336
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_substitution.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - std::chrono::seconds
    - ASSERT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - InputPort<std::string>
    - BehaviorTreeFactory::createTree
    - BehaviorTreeFactory::addSubstitutionRule
    - auto::get
    - BehaviorTreeFactory::registerSimpleAction
    - auto::wait_for
    - ASSERT_NE
    - std::async
    linkageType: ''
    returnType: void
    signature: void TEST(Substitution, StringSubstitutionWithSimpleAction_Issue930)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:354,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:359,1
    - Dst: BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:360,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:362,1
    - Dst: std::async
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:367,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:367,1
    - Dst: auto::wait_for
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:369,1
    - Dst: std::chrono::seconds
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:369,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:370,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:372,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:372,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 340
    functionDepth: 0
    functionLinenumber: 340
    functionLinenumberEnd: 373
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_substitution.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - std::chrono::seconds
    - ASSERT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - auto::get
    - BehaviorTreeFactory::addSubstitutionRule
    - auto::wait_for
    - std::chrono::milliseconds
    - ASSERT_NE
    - std::async
    linkageType: ''
    returnType: void
    signature: void TEST(Substitution, TestNodeConfigAsyncSubstitution_Issue930)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:404,1
    - Dst: BehaviorTreeFactory::loadSubstitutionRuleFromJSON
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:407,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:408,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:409,1
    - Dst: std::async
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:413,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:413,1
    - Dst: auto::wait_for
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:415,1
    - Dst: std::chrono::seconds
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:415,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:416,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:418,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:418,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 419
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_substitution.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - std::chrono::seconds
    - ASSERT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - auto::get
    - BehaviorTreeFactory::registerSimpleAction
    - BehaviorTreeFactory::loadSubstitutionRuleFromJSON
    - ASSERT_NE
    - std::async
    - auto::wait_for
    linkageType: ''
    returnType: void
    signature: void TEST(Substitution, JsonStringSubstitution_Issue930)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:435,1
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:439,1
    - Dst: BehaviorTreeFactory::loadSubstitutionRuleFromJSON
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:439,1
    - Dst: BehaviorTreeFactory::substitutionRules
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:441,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:442,1
    - Dst: size
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:442,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:443,1
    - Dst: count
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:443,1
    - Dst: std::get_if<std::string>
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:444,1
    - Dst: at
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:444,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:445,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:446,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 423
    functionDepth: 1
    functionLinenumber: 423
    functionLinenumberEnd: 447
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_substitution.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::substitutionRules
    - count
    - ASSERT_EQ
    - size
    - BehaviorTreeFactory::registerSimpleAction
    - std::get_if<std::string>
    - BehaviorTreeFactory::loadSubstitutionRuleFromJSON
    - at
    - ASSERT_NE
    - ASSERT_NO_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(Substitution, JsonWithEmptyTestNodeConfigs_Issue930)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:462,1
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:467,1
    - Dst: BehaviorTreeFactory::loadSubstitutionRuleFromJSON
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:467,1
    - Dst: BehaviorTreeFactory::substitutionRules
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:469,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:470,1
    - Dst: size
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:470,1
    - Dst: std::get_if<std::string>
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:471,1
    - Dst: at
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:471,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:472,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:473,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 451
    functionDepth: 1
    functionLinenumber: 451
    functionLinenumberEnd: 474
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_substitution.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::substitutionRules
    - ASSERT_EQ
    - size
    - BehaviorTreeFactory::registerSimpleAction
    - std::get_if<std::string>
    - BehaviorTreeFactory::loadSubstitutionRuleFromJSON
    - at
    - ASSERT_NE
    - ASSERT_NO_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(Substitution, JsonWithoutTestNodeConfigs_Issue930)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:505,1
    - Dst: BehaviorTreeFactory::loadSubstitutionRuleFromJSON
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:510,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:511,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:512,1
    - Dst: std::async
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:515,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:515,1
    - Dst: auto::wait_for
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:517,1
    - Dst: std::chrono::seconds
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:517,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:518,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:521,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:521,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:522,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 479
    functionDepth: 0
    functionLinenumber: 479
    functionLinenumberEnd: 523
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_substitution.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - std::chrono::seconds
    - ASSERT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - auto::get
    - BehaviorTreeFactory::registerSimpleAction
    - ASSERT_TRUE
    - BehaviorTreeFactory::loadSubstitutionRuleFromJSON
    - ASSERT_NE
    - std::async
    - auto::wait_for
    linkageType: ''
    returnType: void
    signature: void TEST(Substitution, JsonStringSubstitutionWithDelay_Issue930)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:539,1
    - Dst: BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:542,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:543,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:544,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:547,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_substitution.cpp:547,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 548
      start: 527
    functionDepth: 0
    functionLinenumber: 527
    functionLinenumberEnd: 548
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_substitution.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - BehaviorTreeFactory::addSubstitutionRule
    - BehaviorTreeFactory::registerSimpleAction
    linkageType: ''
    returnType: void
    signature: void TEST(Substitution, StringSubstitutionRegistrationID_Issue930)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - tick_counter
    argTypes:
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12
      start: 8
    functionDepth: 0
    functionLinenumber: 8
    functionLinenumberEnd: 12
    functionName: TestTick
    functionSourceFile: /src/behaviortreecpp/tests/test_helper.hpp
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus TestTick(int* tick_counter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/tests/test_helper.hpp:19,1
    - Dst: snprintf
      Src: /src/behaviortreecpp/tests/test_helper.hpp:23,1
    - Dst: c_str
      Src: /src/behaviortreecpp/tests/test_helper.hpp:23,1
    - Dst: registerSimpleAction
      Src: /src/behaviortreecpp/tests/test_helper.hpp:25,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/tests/test_helper.hpp:25,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ' factory'
    - ' name_prefix'
    - ' tick_counters'
    argTypes:
    - BT::BehaviorTreeFactory
    - std::string
    - std::array<int, N>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 15
    functionDepth: 1
    functionLinenumber: 15
    functionLinenumberEnd: 27
    functionName: RegisterTestTick
    functionSourceFile: /src/behaviortreecpp/tests/test_helper.hpp
    functionUses: 8
    functionsReached:
    - snprintf
    - size
    - std::bind
    - registerSimpleAction
    - c_str
    linkageType: ''
    returnType: void
    signature: "void RegisterTestTick(BT::BehaviorTreeFactory& factory,\n                             const
      std::string& name_prefix,\n                             std::array<int, N>&
      tick_counters)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: port_distribution
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:33,1
    - Dst: std::make_unique<BT::Groot2Publisher>
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:36,1
    - Dst: num
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:40,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:46,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - ' tree'
    argTypes:
    - BT::Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 47
    functionName: Groot2Test::makePublisher
    functionSourceFile: /src/behaviortreecpp/tests/groot2_test_utils.hpp
    functionUses: 0
    functionsReached:
    - num
    - port_distribution
    - std::runtime_error
    - std::make_unique<BT::Groot2Publisher>
    linkageType: ''
    returnType: PublisherAndPort
    signature: PublisherAndPort makePublisher(const BT::Tree& tree)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - uid
    - mode
    - position
    argTypes:
    - uint16_t
    - BT::Monitor::Hook::Mode
    - BT::Monitor::Hook::Position
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 59
    functionName: Groot2Test::makeHook
    functionSourceFile: /src/behaviortreecpp/tests/groot2_test_utils.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nlohmann::json
    signature: "nlohmann::json makeHook(uint16_t uid, BT::Monitor::Hook::Mode mode,\n
      \                              BT::Monitor::Hook::Position position, bool once
      = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:66,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:67,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:68,1
    - Dst: connect
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:69,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - port
    argTypes:
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 70
    functionName: Groot2Test::Client::Client
    functionSourceFile: /src/behaviortreecpp/tests/groot2_test_utils.hpp
    functionUses: 0
    functionsReached:
    - set
    - to_string
    - connect
    linkageType: ''
    returnType: void
    signature: void Client(unsigned port)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::multipart_t
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:76,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:77,1
    - Dst: BT::Monitor::SerializeHeader
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:77,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:80,1
    - Dst: zmq::multipart_t::send
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:82,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:84,1
    - Dst: zmq::multipart_t::multipart_t
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:87,1
    - Dst: zmq::multipart_t::recv
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:88,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:90,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - type
    argTypes:
    - BT::Monitor::RequestType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 93
    functionName: Groot2Test::Client::rawRequest
    functionSourceFile: /src/behaviortreecpp/tests/groot2_test_utils.hpp
    functionUses: 0
    functionsReached:
    - zmq::multipart_t::addstr
    - BT::Monitor::SerializeHeader
    - zmq::multipart_t::send
    - zmq::multipart_t::recv
    - zmq::multipart_t::multipart_t
    - std::runtime_error
    linkageType: ''
    returnType: zmq::multipart_t
    signature: "zmq::multipart_t rawRequest(BT::Monitor::RequestType type,\n                              std::optional<std::string>
      payload = std::nullopt)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Groot2Test::Client::rawRequest
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:98,1
    - Dst: std::move
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:98,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:99,1
    - Dst: size
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:99,1
    - Dst: BT::Monitor::size
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:99,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:101,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - type
    argTypes:
    - BT::Monitor::RequestType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 104
    functionName: Groot2Test::Client::request
    functionSourceFile: /src/behaviortreecpp/tests/groot2_test_utils.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - size
    - auto::empty
    - Groot2Test::Client::rawRequest
    - std::runtime_error
    - BT::Monitor::size
    linkageType: ''
    returnType: zmq::multipart_t
    signature: "zmq::multipart_t request(BT::Monitor::RequestType type,\n                           std::optional<std::string>
      payload = std::nullopt)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: port_distribution
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:33,1
    - Dst: std::make_unique<BT::Groot2Publisher>
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:36,1
    - Dst: num
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:40,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:46,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 1
    argNames:
    - ' tree'
    argTypes:
    - BT::Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 47
    functionName: Groot2Test::makePublisher
    functionSourceFile: /src/behaviortreecpp/tests/groot2_test_utils.hpp
    functionUses: 0
    functionsReached:
    - num
    - port_distribution
    - std::runtime_error
    - std::make_unique<BT::Groot2Publisher>
    linkageType: ''
    returnType: PublisherAndPort
    signature: PublisherAndPort makePublisher(const BT::Tree& tree)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - uid
    - mode
    - position
    argTypes:
    - uint16_t
    - BT::Monitor::Hook::Mode
    - BT::Monitor::Hook::Position
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 59
    functionName: Groot2Test::makeHook
    functionSourceFile: /src/behaviortreecpp/tests/groot2_test_utils.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nlohmann::json
    signature: "nlohmann::json makeHook(uint16_t uid, BT::Monitor::Hook::Mode mode,\n
      \                              BT::Monitor::Hook::Position position, bool once
      = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:66,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:67,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:68,1
    - Dst: connect
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:69,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - port
    argTypes:
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 70
    functionName: Groot2Test::Client::Client
    functionSourceFile: /src/behaviortreecpp/tests/groot2_test_utils.hpp
    functionUses: 0
    functionsReached:
    - set
    - to_string
    - connect
    linkageType: ''
    returnType: void
    signature: void Client(unsigned port)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::multipart_t
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:76,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:77,1
    - Dst: BT::Monitor::SerializeHeader
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:77,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:80,1
    - Dst: zmq::multipart_t::send
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:82,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:84,1
    - Dst: zmq::multipart_t::multipart_t
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:87,1
    - Dst: zmq::multipart_t::recv
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:88,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:90,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - type
    argTypes:
    - BT::Monitor::RequestType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 93
    functionName: Groot2Test::Client::rawRequest
    functionSourceFile: /src/behaviortreecpp/tests/groot2_test_utils.hpp
    functionUses: 1
    functionsReached:
    - zmq::multipart_t::addstr
    - BT::Monitor::SerializeHeader
    - zmq::multipart_t::send
    - zmq::multipart_t::recv
    - zmq::multipart_t::multipart_t
    - std::runtime_error
    linkageType: ''
    returnType: zmq::multipart_t
    signature: "zmq::multipart_t rawRequest(BT::Monitor::RequestType type,\n                              std::optional<std::string>
      payload = std::nullopt)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Groot2Test::Client::rawRequest
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:98,1
    - Dst: std::move
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:98,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:99,1
    - Dst: size
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:99,1
    - Dst: BT::Monitor::size
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:99,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/groot2_test_utils.hpp:101,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - type
    argTypes:
    - BT::Monitor::RequestType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 95
    functionDepth: 2
    functionLinenumber: 95
    functionLinenumberEnd: 104
    functionName: Groot2Test::Client::request
    functionSourceFile: /src/behaviortreecpp/tests/groot2_test_utils.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - size
    - auto::empty
    - Groot2Test::Client::rawRequest
    - std::runtime_error
    - BT::Monitor::size
    linkageType: ''
    returnType: zmq::multipart_t
    signature: "zmq::multipart_t request(BT::Monitor::RequestType type,\n                           std::optional<std::string>
      payload = std::nullopt)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:27,1
    - Dst: Any::empty
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:27,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:32,1
    - Dst: Any::empty
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 23
    functionDepth: 1
    functionLinenumber: 23
    functionLinenumberEnd: 34
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_any.cpp
    functionUses: 0
    functionsReached:
    - Any::empty
    - EXPECT_TRUE
    - EXPECT_FALSE
    linkageType: ''
    returnType: void
    signature: void TEST(Any, Empty)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:41,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:41,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:42,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:42,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:43,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:43,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:44,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:44,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:45,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:45,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:51,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:51,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:52,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:52,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:53,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:53,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:54,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:54,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:55,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:55,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:61,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:61,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:62,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:62,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:63,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:63,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:64,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:64,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:65,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:65,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:71,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:71,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:72,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:72,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:73,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:73,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:74,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:74,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:75,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:75,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:81,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:81,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:82,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:82,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:83,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:83,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:84,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:84,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:85,1
    - Dst: Any::isType
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 87
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_any.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_TRUE
    - EXPECT_FALSE
    - Any::isType
    linkageType: ''
    returnType: void
    signature: void TEST(Any, IsType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:94,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:94,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:95,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:95,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:95,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:95,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:96,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:96,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:97,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:97,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:98,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:98,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:101,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:101,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:102,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:102,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:102,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:102,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:103,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:103,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:104,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:104,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:105,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:105,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:111,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:112,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:112,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:113,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:113,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:114,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:114,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:117,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:118,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:118,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:119,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:119,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:120,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:120,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:123,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:123,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:124,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:124,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:124,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:124,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:125,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:125,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:126,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:126,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:127,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:127,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:130,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:130,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:131,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:131,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:131,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:131,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:132,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:132,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:133,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:133,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:134,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:134,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:140,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:141,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:141,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:142,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:142,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:143,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:143,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:144,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:144,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:147,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:147,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:148,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:148,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:148,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:148,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:149,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:149,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:150,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:150,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:151,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:151,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:152,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:152,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:155,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:155,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:156,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:156,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:156,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:156,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:157,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:157,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:158,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:158,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:159,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:159,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:160,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:160,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:166,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:166,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:167,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:167,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:167,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:167,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:168,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:168,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:169,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:169,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:171,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:173,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:173,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:173,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:173,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:175,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:176,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:180,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:180,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:181,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:181,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:181,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:181,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:183,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:184,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:184,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:186,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:188,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:188,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:188,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:188,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:190,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:191,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:195,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:195,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:197,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:198,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:198,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:201,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:201,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:203,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:206,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:206,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:207,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:207,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:213,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:214,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:215,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:216,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:216,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:220,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:224,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:228,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:228,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:229,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:229,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:233,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:233,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:234,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:234,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:237,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:238,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:238,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:239,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:239,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:242,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:243,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:243,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:244,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:244,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:250,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_any.cpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 88
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 252
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_any.cpp
    functionUses: 0
    functionsReached:
    - std::from_chars
    - std::string::size
    - typeid
    - EXPECT_FALSE
    - EXPECT_DOUBLE_EQ
    - std::string::data
    - EXPECT_TRUE
    - EXPECT_EQ
    - Any::cast
    linkageType: ''
    returnType: void
    signature: void TEST(Any, Cast)
  - BBCount: 5
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - ' c'
    argTypes:
    - Color
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 16
    functionDepth: 0
    functionLinenumber: 16
    functionLinenumberEnd: 30
    functionName: ToStr
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * ToStr(const Color& c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: ActionEnum::ActionEnum
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ActionEnum(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:41,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:42,1
    - Dst: ToStr
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: ActionEnum::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached:
    - ToStr
    - getInput
    - name
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<Color>
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: ActionEnum::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<Color>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:69,1
    - Dst: BehaviorTreeFactory::registerScriptingEnums
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:70,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:72,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:74,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:76,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:78,1
    - Dst: dynamic_cast<ActionEnum*>
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:80,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:80,1
    - Dst: auto::name
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:82,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:84,1
    - Dst: auto::name
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:86,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:88,1
    - Dst: auto::name
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:90,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:92,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 96
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached:
    - get
    - BehaviorTreeFactory::createTreeFromText
    - auto::subtrees::front
    - dynamic_cast<ActionEnum*>
    - auto::name
    - auto::tickWhileRunning
    - BehaviorTreeFactory::registerScriptingEnums
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(Enums, StrintToEnum)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerScriptingEnums
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:121,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:123,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:125,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 128
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - BehaviorTreeFactory::registerScriptingEnums
    linkageType: ''
    returnType: void
    signature: void TEST(Enums, SwitchNodeWithEnum)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 141
    functionName: PrintEnum::PrintEnum
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PrintEnum(const std::string& name, const BT::NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 143
    functionName: ~PrintEnum() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~PrintEnum() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 144
    functionName: PrintEnum::PrintEnum
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PrintEnum(const PrintEnum&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 145
    functionName: '& operator=(const PrintEnum&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PrintEnum
    signature: PrintEnum & operator=(const PrintEnum&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 146
    functionName: PrintEnum::PrintEnum
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PrintEnum(PrintEnum&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 147
    functionName: '& operator=(PrintEnum&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PrintEnum
    signature: PrintEnum & operator=(PrintEnum&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<BatteryStatus>
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 154
    functionName: PrintEnum::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<BatteryStatus>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<BatteryStatus>
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:159,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 168
    functionName: PrintEnum::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached:
    - getInput<BatteryStatus>
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 174
    functionDepth: 0
    functionLinenumber: 174
    functionLinenumberEnd: 176
    functionName: IsHealthOk::IsHealthOk
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IsHealthOk(const std::string& name, const BT::NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 178
    functionName: ~IsHealthOk() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~IsHealthOk() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 179
    functionName: IsHealthOk::IsHealthOk
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IsHealthOk(const IsHealthOk&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 180
    functionName: '& operator=(const IsHealthOk&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IsHealthOk
    signature: IsHealthOk & operator=(const IsHealthOk&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 181
    functionName: IsHealthOk::IsHealthOk
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IsHealthOk(IsHealthOk&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 182
    functionName: '& operator=(IsHealthOk&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IsHealthOk
    signature: IsHealthOk & operator=(IsHealthOk&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:186,1
    - Dst: BT::InputPort<bool>
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: IsHealthOk::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<bool>
    - BT::InputPort<std::string>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getInput<bool>
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:192,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:199,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 190
    functionDepth: 1
    functionLinenumber: 190
    functionLinenumberEnd: 209
    functionName: IsHealthOk::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached:
    - auto::value
    - getInput<bool>
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerScriptingEnums
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:240,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:241,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:242,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:244,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:246,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:247,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:249,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:250,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 251
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - BehaviorTreeFactory::registerScriptingEnums
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(Enums, SubtreeRemapping)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 260
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 260
    functionName: ActionWithNodeType::ActionWithNodeType
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ActionWithNodeType(const std::string& name, const NodeConfig&
      config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<NodeType>
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:264,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:267,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:267,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:269,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 262
    functionDepth: 1
    functionLinenumber: 262
    functionLinenumberEnd: 271
    functionName: ActionWithNodeType::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached:
    - getInput<NodeType>
    - auto::value
    - auto::error
    - RuntimeError
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<NodeType>
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 276
    functionName: ActionWithNodeType::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached:
    - InputPort<NodeType>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:294,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:298,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:299,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:300,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:302,1
    - Dst: dynamic_cast<ActionWithNodeType*>
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:304,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:304,1
    - Dst: auto::name
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:306,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:308,1
    - Dst: auto::name
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:310,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_enums.cpp:312,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 281
    functionDepth: 1
    functionLinenumber: 281
    functionLinenumberEnd: 316
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_enums.cpp
    functionUses: 0
    functionsReached:
    - get
    - BehaviorTreeFactory::createTreeFromText
    - auto::subtrees::front
    - auto::name
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - dynamic_cast<ActionWithNodeType*>
    linkageType: ''
    returnType: void
    signature: void TEST(Enums, ParseEnumWithConvertFromString_Issue948)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:32,1
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:34,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:36,1
    - Dst: BT::isStatusCompleted
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:41,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:44,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:47,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:49,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:51,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:52,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:53,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:55,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:56,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:57,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 11
    functionDepth: 2
    functionLinenumber: 11
    functionLinenumberEnd: 58
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickExactlyOnce
    - BT::isStatusCompleted
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - RegisterTestTick
    - ASSERT_NE
    linkageType: ''
    returnType: void
    signature: void TEST(Reactive, RunningChildren)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:82,1
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:84,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:86,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:87,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 60
    functionDepth: 2
    functionLinenumber: 60
    functionLinenumberEnd: 90
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void TEST(Reactive, Issue587)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:110,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:113,1
    - Dst: auto::applyVisitor
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:117,1
    - Dst: dynamic_cast<BT::AlwaysFailureNode*>
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:118,1
    - Dst: auto::setPreTickFunction
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:120,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:124,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 126
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - dynamic_cast<BT::AlwaysFailureNode*>
    - ASSERT_EQ
    - auto::setPreTickFunction
    - name
    - auto::applyVisitor
    linkageType: ''
    returnType: void
    signature: void TEST(Reactive, PreTickHooks)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:147,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:149,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:152,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:153,1
    - Dst: ASSERT_GE
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:156,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:158,1
    - Dst: TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:158,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:159,1
    - Dst: TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 128
    functionDepth: 2
    functionLinenumber: 128
    functionLinenumberEnd: 160
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - ASSERT_GE
    - RegisterTestTick
    - TreeObserver::getStatistics
    linkageType: ''
    returnType: void
    signature: void TEST(Reactive, TestLogging)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:183,1
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:185,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 162
    functionDepth: 2
    functionLinenumber: 162
    functionLinenumberEnd: 188
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive.cpp
    functionUses: 0
    functionsReached:
    - RegisterTestTick
    - BT::BehaviorTreeFactory::createTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(Reactive, TwoAsyncNodesInReactiveSequence)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:195,1
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:197,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:210,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:211,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:213,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:214,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 192
    functionDepth: 2
    functionLinenumber: 192
    functionLinenumberEnd: 215
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void TEST(Reactive, ReactiveSequence_FirstChildFails)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:220,1
    - Dst: BT::BehaviorTreeFactory::registerSimpleCondition
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:226,1
    - Dst: BT::BehaviorTreeFactory::registerBuilder
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:230,1
    - Dst: std::make_unique<TrackingAction>
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:259,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:274,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:277,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:278,1
    - Dst: ASSERT_GE
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:279,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:280,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:283,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:284,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:288,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:289,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 217
    functionDepth: 1
    functionLinenumber: 217
    functionLinenumberEnd: 291
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::registerSimpleCondition
    - BT::BehaviorTreeFactory::createTreeFromText
    - BT::BehaviorTreeFactory::registerBuilder
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - ASSERT_EQ
    - ASSERT_FALSE
    - auto::tickOnce
    - ASSERT_GE
    - ASSERT_TRUE
    - std::make_unique<TrackingAction>
    linkageType: ''
    returnType: void
    signature: void TEST(Reactive, ReactiveSequence_HaltOnConditionChange)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 4
    argNames:
    - ' name'
    - ' config'
    - ' tick_count'
    - ' was_halted'
    argTypes:
    - std::string
    - BT::NodeConfig
    - int
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 243
    functionName: TrackingAction::TrackingAction
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void TrackingAction(const std::string& name, const BT::NodeConfig&
      config,\n                         int& tick_count, bool& was_halted)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 248
    functionName: TrackingAction::onStart
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus onStart() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 253
    functionName: TrackingAction::onRunning
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus onRunning() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 254
    functionDepth: 0
    functionLinenumber: 254
    functionLinenumberEnd: 257
    functionName: TrackingAction::onHalted
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void onHalted() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:296,1
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:298,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:311,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:312,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:314,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 293
    functionDepth: 2
    functionLinenumber: 293
    functionLinenumberEnd: 316
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void TEST(Reactive, ReactiveFallback_FirstChildSucceeds)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:320,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:334,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:335,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 318
    functionDepth: 1
    functionLinenumber: 318
    functionLinenumberEnd: 338
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(Reactive, ReactiveFallback_AllChildrenFail)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:342,1
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:344,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:357,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:358,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:360,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:361,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 340
    functionDepth: 2
    functionLinenumber: 340
    functionLinenumberEnd: 362
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void TEST(Reactive, ReactiveFallback_SecondChildSucceeds)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:366,1
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:368,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:382,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:383,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:385,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:386,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:387,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:388,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 364
    functionDepth: 2
    functionLinenumber: 364
    functionLinenumberEnd: 389
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void TEST(Reactive, ReactiveSequence_AllChildrenSucceed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:394,1
    - Dst: BT::BehaviorTreeFactory::registerSimpleCondition
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:397,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:414,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:415,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:417,1
    - Dst: ASSERT_GE
      Src: /src/behaviortreecpp/tests/gtest_reactive.cpp:419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 391
    functionDepth: 1
    functionLinenumber: 391
    functionLinenumberEnd: 420
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::registerSimpleCondition
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - ASSERT_GE
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(Reactive, ReactiveSequence_ReEvaluatesOnEveryTick)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10
      start: 10
    functionDepth: 0
    functionLinenumber: 10
    functionLinenumberEnd: 10
    functionName: IMotor
    functionSourceFile: /src/behaviortreecpp/tests/gtest_interface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IMotor()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11
      start: 11
    functionDepth: 0
    functionLinenumber: 11
    functionLinenumberEnd: 11
    functionName: ~IMotor()
    functionSourceFile: /src/behaviortreecpp/tests/gtest_interface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~IMotor()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12
      start: 12
    functionDepth: 0
    functionLinenumber: 12
    functionLinenumberEnd: 12
    functionName: IMotor
    functionSourceFile: /src/behaviortreecpp/tests/gtest_interface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IMotor(const IMotor&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13
      start: 13
    functionDepth: 0
    functionLinenumber: 13
    functionLinenumberEnd: 13
    functionName: '& operator=(const IMotor&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_interface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IMotor
    signature: IMotor & operator=(const IMotor&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 14
    functionName: IMotor
    functionSourceFile: /src/behaviortreecpp/tests/gtest_interface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IMotor(IMotor&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15
      start: 15
    functionDepth: 0
    functionLinenumber: 15
    functionLinenumberEnd: 15
    functionName: '& operator=(IMotor&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_interface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IMotor
    signature: IMotor & operator=(IMotor&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 26
    functionName: doMove
    functionSourceFile: /src/behaviortreecpp/tests/gtest_interface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void doMove() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - ' motor'
    argTypes:
    - std::string
    - BT::NodeConfig
    - IMotor
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 48
    functionName: PathFollow::PathFollow
    functionSourceFile: /src/behaviortreecpp/tests/gtest_interface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PathFollow(const std::string& name, const BT::NodeConfig& config,
      IMotor& motor)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: PathFollow::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_interface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: doMove
      Src: /src/behaviortreecpp/tests/gtest_interface.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 58
    functionName: PathFollow::onStart
    functionSourceFile: /src/behaviortreecpp/tests/gtest_interface.cpp
    functionUses: 0
    functionsReached:
    - doMove
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus onStart() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: doMove
      Src: /src/behaviortreecpp/tests/gtest_interface.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 64
    functionName: PathFollow::onRunning
    functionSourceFile: /src/behaviortreecpp/tests/gtest_interface.cpp
    functionUses: 0
    functionsReached:
    - doMove
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus onRunning() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: PathFollow::onHalted
    functionSourceFile: /src/behaviortreecpp/tests/gtest_interface.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void onHalted() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_interface.cpp:75,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_interface.cpp:76,1
    - Dst: std::ref
      Src: /src/behaviortreecpp/tests/gtest_interface.cpp:76,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_interface.cpp:78,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_interface.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 80
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_interface.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - std::ref
    - auto::tickWhileRunning
    - BT::BehaviorTreeFactory::registerNodeType
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(Factory, VirtualInterface_Issue_945)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:35,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:37,1
    - Dst: blackboard::debugMessage
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:41,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:45,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:46,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:47,1
    - Dst: Tree::subtrees::size
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 14
    functionDepth: 1
    functionLinenumber: 14
    functionLinenumberEnd: 48
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - Tree::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - blackboard::debugMessage
    - Tree::subtrees::size
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, SiblingPorts_Issue_72)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 55
    functionName: CopyPorts::CopyPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CopyPorts(const std::string& name, const BT::NodeConfig& config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<std::string>
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:59,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:62,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:62,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:64,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:64,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 66
    functionName: CopyPorts::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - auto::value
    - throwRuntimeError
    - auto::error
    - getInput<std::string>
    - setOutput
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:70,1
    - Dst: BT::OutputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: CopyPorts::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<std::string>
    - BT::OutputPort<std::string>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:94,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:95,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:97,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:99,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 101
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - Tree::tickWhileRunning
    - BehaviorTreeFactory::registerNodeType
    - ASSERT_EQ
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, GoodRemapping)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:106,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:107,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:125,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:126,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:127,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:127,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:145,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:146,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:147,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 148
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - Tree::tickWhileRunning
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - EXPECT_ANY_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, BadRemapping)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:172,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:174,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:175,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:177,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 179
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - Tree::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, SubtreePlusA)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:204,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:206,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:207,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:209,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 211
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - Tree::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, SubtreePlusB)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<std::string>
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:219,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:222,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:222,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 224
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 224
    functionName: ReadInConstructor::ReadInConstructor
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - auto::error
    - throwRuntimeError
    - getInput<std::string>
    linkageType: ''
    returnType: void
    signature: void ReadInConstructor(const std::string& name, const BT::NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 229
    functionName: ReadInConstructor::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 230
    functionDepth: 0
    functionLinenumber: 230
    functionLinenumberEnd: 233
    functionName: ReadInConstructor::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<std::string>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:239,1
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:254,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:255,1
    - Dst: BT::NodeConfig::blackboard::set
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:256,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:258,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:259,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:261,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 236
    functionDepth: 1
    functionLinenumber: 236
    functionLinenumberEnd: 263
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - Tree::tickWhileRunning
    - BT::BehaviorTreeFactory::createTree
    - BT::Blackboard::create
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::registerNodeType
    - BT::NodeConfig::blackboard::set
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, SubtreePlusD)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:284,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:285,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:287,1
    - Dst: Tree::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:288,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:290,1
    - Dst: blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:290,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:291,1
    - Dst: blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 266
    functionDepth: 1
    functionLinenumber: 266
    functionLinenumberEnd: 292
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - Tree::tickOnce
    - BT::BehaviorTreeFactory::createTree
    - ASSERT_EQ
    - blackboard::get
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, ScriptRemap)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 300
      start: 298
    functionDepth: 0
    functionLinenumber: 298
    functionLinenumberEnd: 300
    functionName: ModifyPose::ModifyPose
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ModifyPose(const std::string& name, const BT::NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BidirectionalPort<Pose2D>
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:304,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 302
    functionDepth: 0
    functionLinenumber: 302
    functionLinenumberEnd: 305
    functionName: ModifyPose::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BT::BidirectionalPort<Pose2D>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:310,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 307
    functionDepth: 0
    functionLinenumber: 307
    functionLinenumberEnd: 314
    functionName: ModifyPose::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - getInput
    - setOutput
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:331,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:332,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:333,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:334,1
    - Dst: Tree::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:335,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 317
    functionDepth: 1
    functionLinenumber: 317
    functionLinenumberEnd: 336
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - Tree::tickOnce
    - BT::BehaviorTreeFactory::createTree
    - BT::BehaviorTreeFactory::registerNodeType
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, StringConversions_Issue530)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfiguration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 345
    functionName: NaughtyNav2Node::NaughtyNav2Node
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - blackboard::get
    linkageType: ''
    returnType: void
    signature: void NaughtyNav2Node(const std::string& name, const BT::NodeConfiguration&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:349,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:349,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 347
    functionDepth: 0
    functionLinenumber: 347
    functionLinenumberEnd: 352
    functionName: NaughtyNav2Node::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - get
    - config
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 356
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 356
    functionName: NaughtyNav2Node::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:391,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:392,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:394,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:396,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:397,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:399,1
    - Dst: Tree::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:401,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 403
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - Tree::tickOnce
    - auto::set
    - BT::Blackboard::create
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, SubtreeNav2_Issue563)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:433,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:435,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:437,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:438,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:440,1
    - Dst: Tree::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:442,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 444
      start: 405
    functionDepth: 1
    functionLinenumber: 405
    functionLinenumberEnd: 444
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - Tree::tickOnce
    - auto::set
    - BT::Blackboard::create
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, SubtreeNav2_Issue724)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:470,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:472,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:473,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:475,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:476,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:477,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 446
    functionDepth: 2
    functionLinenumber: 446
    functionLinenumberEnd: 478
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - Tree::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, SubtreeIssue592)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:504,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:505,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:506,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 480
    functionDepth: 0
    functionLinenumber: 480
    functionLinenumberEnd: 507
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, Issue623_String_to_Pose2d)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfiguration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 514
      start: 512
    functionDepth: 0
    functionLinenumber: 512
    functionLinenumberEnd: 514
    functionName: Assert::Assert
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Assert(const std::string& name, const BT::NodeConfiguration& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<bool>
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:518,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 519
      start: 516
    functionDepth: 0
    functionLinenumber: 516
    functionLinenumberEnd: 519
    functionName: Assert::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<bool>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<bool>
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:524,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 522
    functionDepth: 0
    functionLinenumber: 522
    functionLinenumberEnd: 528
    functionName: Assert::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - getInput<bool>
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:553,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:554,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:555,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 531
    functionDepth: 0
    functionLinenumber: 531
    functionLinenumberEnd: 556
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, Issue653_SetBlackboard)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:593,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:594,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 558
    functionDepth: 0
    functionLinenumber: 558
    functionLinenumberEnd: 595
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, SubtreeModels)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - console
    argTypes:
    - std::string
    - BT::NodeConfiguration
    - std::vector<std::string>*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 600
    functionDepth: 0
    functionLinenumber: 600
    functionLinenumberEnd: 603
    functionName: PrintToConsole::PrintToConsole
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void PrintToConsole(const std::string& name, const BT::NodeConfiguration&
      config,\n                 std::vector<std::string>* console)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:607,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 605
    functionDepth: 0
    functionLinenumber: 605
    functionLinenumberEnd: 608
    functionName: PrintToConsole::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<std::string>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<std::string>
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:613,1
    - Dst: push_back
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:615,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:615,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 611
    functionDepth: 1
    functionLinenumber: 611
    functionLinenumberEnd: 620
    functionName: PrintToConsole::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - auto::value
    - getInput<std::string>
    - push_back
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:654,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:656,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:657,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:658,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:660,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:660,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:661,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:662,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:663,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 665
      start: 624
    functionDepth: 1
    functionLinenumber: 624
    functionLinenumberEnd: 665
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - std::vector::size
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, RemappingIssue696)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:693,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:695,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:696,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:697,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:700,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:701,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:701,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:702,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 703
      start: 667
    functionDepth: 1
    functionLinenumber: 667
    functionLinenumberEnd: 703
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - std::vector::size
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, PrivateAutoRemapping)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:729,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:731,1
    - Dst: ASSERT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:732,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:732,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 705
    functionDepth: 0
    functionLinenumber: 705
    functionLinenumberEnd: 733
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_ANY_THROW
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, SubtreeNameNotRegistered)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:753,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 735
    functionDepth: 0
    functionLinenumber: 735
    functionLinenumberEnd: 754
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, RecursiveSubtree)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:788,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 789
      start: 756
    functionDepth: 0
    functionLinenumber: 756
    functionLinenumberEnd: 789
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, RecursiveCycle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:812,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 813
      start: 791
    functionDepth: 0
    functionLinenumber: 791
    functionLinenumberEnd: 813
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, SubstringTreeIDsAreNotRecursive)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_THROW
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:842,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:842,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 843
      start: 820
    functionDepth: 0
    functionLinenumber: 820
    functionLinenumberEnd: 843
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, DuplicateSubTreeName_Groot2Issue56)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:869,1
    - Dst: FAIL
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:870,1
    - Dst: what
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:874,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:875,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:875,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:877,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:877,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 880
      start: 846
    functionDepth: 1
    functionLinenumber: 846
    functionLinenumberEnd: 880
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - FAIL
    - EXPECT_TRUE
    - std::string::find
    - what
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, DuplicateSubTreeName_ErrorMessage)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:903,1
    - Dst: Tree::applyVisitor
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:907,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:908,1
    - Dst: std::set::count
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:908,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:908,1
    - Dst: std::set::insert
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:909,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:909,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:912,1
    - Dst: Tree::subtrees::size
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:912,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:913,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:914,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 915
      start: 883
    functionDepth: 1
    functionLinenumber: 883
    functionLinenumberEnd: 915
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - Tree::tickWhileRunning
    - std::set::count
    - EXPECT_EQ
    - ASSERT_EQ
    - Tree::applyVisitor
    - std::set::insert
    - fullPath
    - Tree::subtrees::size
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, UniqueSubTreeNames_WorksCorrectly)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:938,1
    - Dst: Tree::applyVisitor
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:942,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:943,1
    - Dst: std::set::count
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:943,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:943,1
    - Dst: std::set::insert
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:944,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:944,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:947,1
    - Dst: Tree::subtrees::size
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:947,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:948,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:949,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 918
    functionDepth: 1
    functionLinenumber: 918
    functionLinenumberEnd: 950
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - Tree::tickWhileRunning
    - std::set::count
    - EXPECT_EQ
    - ASSERT_EQ
    - Tree::applyVisitor
    - std::set::insert
    - fullPath
    - Tree::subtrees::size
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, NoNameAttribute_AutoGeneratesUniquePaths)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_THROW
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:975,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:975,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 976
      start: 953
    functionDepth: 0
    functionLinenumber: 953
    functionLinenumberEnd: 976
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, NestedDuplicateNames_ShouldFail)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:1007,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:1010,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:1012,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_subtree.cpp:1013,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1014
      start: 980
    functionDepth: 0
    functionLinenumber: 980
    functionLinenumberEnd: 1014
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_subtree.cpp
    functionUses: 0
    functionsReached:
    - auto::rootBlackboard
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(SubTree, LiteralNumericPortsPreserveType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_match.cpp:7,1
    - Dst: wildcards_match
      Src: /src/behaviortreecpp/tests/gtest_match.cpp:7,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_match.cpp:8,1
    - Dst: wildcards_match
      Src: /src/behaviortreecpp/tests/gtest_match.cpp:8,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_match.cpp:9,1
    - Dst: wildcards_match
      Src: /src/behaviortreecpp/tests/gtest_match.cpp:9,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_match.cpp:11,1
    - Dst: wildcards_match
      Src: /src/behaviortreecpp/tests/gtest_match.cpp:11,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_match.cpp:12,1
    - Dst: wildcards_match
      Src: /src/behaviortreecpp/tests/gtest_match.cpp:12,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_match.cpp:13,1
    - Dst: wildcards_match
      Src: /src/behaviortreecpp/tests/gtest_match.cpp:13,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_match.cpp:14,1
    - Dst: wildcards_match
      Src: /src/behaviortreecpp/tests/gtest_match.cpp:14,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15
      start: 5
    functionDepth: 1
    functionLinenumber: 5
    functionLinenumberEnd: 15
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_match.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_FALSE
    - ASSERT_TRUE
    - wildcards_match
    linkageType: ''
    returnType: void
    signature: void TEST(Match, Match)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Vector3D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 20
    functionName: operator==(const Vector3D& other) const
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Vector3D& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Quaternion3D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: operator==(const Quaternion3D& other) const
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Quaternion3D& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Pose3D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: operator==(const Pose3D& other) const
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Pose3D& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:54,1
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:55,1
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: TestTypes::BT_JSON_CONVERTER
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached:
    - add_field
    linkageType: ''
    returnType: void
    signature: void BT_JSON_CONVERTER(Vector3D, v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:61,1
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:62,1
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:63,1
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 65
    functionName: TestTypes::BT_JSON_CONVERTER
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached:
    - add_field
    linkageType: ''
    returnType: void
    signature: void BT_JSON_CONVERTER(Quaternion3D, v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:69,1
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 71
    functionName: TestTypes::BT_JSON_CONVERTER
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached:
    - add_field
    linkageType: ''
    returnType: void
    signature: void BT_JSON_CONVERTER(Pose3D, v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' t'
    - ' j'
    argTypes:
    - Time
    - nlohmann::json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: TestTypes::jsonFromTime
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void jsonFromTime(const Time& t, nlohmann::json& j)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:82,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' j'
    - ' t'
    argTypes:
    - nlohmann::json
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 84
    functionName: TestTypes::jsonToTime
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached:
    - static_cast<uint32_t>
    linkageType: ''
    returnType: void
    signature: void jsonToTime(const nlohmann::json& j, Time& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Vector3D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 20
    functionName: operator==(const Vector3D& other) const
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Vector3D& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Quaternion3D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: operator==(const Quaternion3D& other) const
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Quaternion3D& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Pose3D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: operator==(const Pose3D& other) const
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Pose3D& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:54,1
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:55,1
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:56,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: TestTypes::BT_JSON_CONVERTER
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached:
    - add_field
    linkageType: ''
    returnType: void
    signature: void BT_JSON_CONVERTER(Vector3D, v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:61,1
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:62,1
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:63,1
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 65
    functionName: TestTypes::BT_JSON_CONVERTER
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached:
    - add_field
    linkageType: ''
    returnType: void
    signature: void BT_JSON_CONVERTER(Quaternion3D, v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:69,1
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 71
    functionName: TestTypes::BT_JSON_CONVERTER
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached:
    - add_field
    linkageType: ''
    returnType: void
    signature: void BT_JSON_CONVERTER(Pose3D, v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' t'
    - ' j'
    argTypes:
    - Time
    - nlohmann::json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: TestTypes::jsonFromTime
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void jsonFromTime(const Time& t, nlohmann::json& j)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:82,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' j'
    - ' t'
    argTypes:
    - nlohmann::json
    - Time
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 84
    functionName: TestTypes::jsonToTime
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached:
    - static_cast<uint32_t>
    linkageType: ''
    returnType: void
    signature: void jsonToTime(const nlohmann::json& j, Time& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:96,1
    - Dst: addConverter
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:97,1
    - Dst: addConverter
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:98,1
    - Dst: addConverter
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:99,1
    - Dst: addConverter
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:101,1
    - Dst: addConverter
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 103
    functionName: JsonTest::JsonTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached:
    - addConverter
    - BT::Blackboard::get
    linkageType: ''
    returnType: void
    signature: void JsonTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:108,1
    - Dst: toJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:113,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:113,1
    - Dst: toJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:114,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:114,1
    - Dst: toJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:115,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:115,1
    - Dst: nlohmann::json::dump
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:117,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:119,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:120,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:122,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:123,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:124,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:125,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:127,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:128,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:129,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:130,1
    - Dst: fromJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:132,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:133,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:133,1
    - Dst: auto::first::cast
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:134,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:135,1
    - Dst: fromJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:137,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:138,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:138,1
    - Dst: auto::first::cast
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:139,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:140,1
    - Dst: fromJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:142,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:143,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:143,1
    - Dst: auto::first::cast
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:144,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:145,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 147
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached:
    - fromJson
    - auto::first::cast
    - toJson
    - ASSERT_EQ
    - nlohmann::json::dump
    - auto::error
    - ASSERT_TRUE
    - BT::Blackboard::get
    - BT::Blackboard::getAny
    linkageType: ''
    returnType: void
    signature: void TEST_F(JsonTest, TwoWaysConversion)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:151,1
    - Dst: toJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:155,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:155,1
    - Dst: nlohmann::json::dump
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:156,1
    - Dst: fromJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:159,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:159,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:160,1
    - Dst: auto::first::cast
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:161,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:162,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:163,1
    - Dst: fromJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:166,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:167,1
    - Dst: auto::first::cast
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:168,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:169,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:170,1
    - Dst: fromJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:173,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:174,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:175,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 149
    functionDepth: 1
    functionLinenumber: 149
    functionLinenumberEnd: 178
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached:
    - fromJson
    - auto::first::cast
    - typeid
    - toJson
    - ASSERT_EQ
    - nlohmann::json::dump
    - ASSERT_TRUE
    - BT::Blackboard::get
    - BT::Blackboard::getAny
    linkageType: ''
    returnType: void
    signature: void TEST_F(JsonTest, CustomTime)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:184,1
    - Dst: BT::convertFromString<TestTypes::Vector3D>
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:184,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:186,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:187,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 189
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached:
    - BT::convertFromString<TestTypes::Vector3D>
    - ASSERT_EQ
    - ASSERT_NO_THROW
    linkageType: ''
    returnType: void
    signature: void TEST_F(JsonTest, ConvertFromString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:193,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:194,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:195,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:196,1
    - Dst: ExportBlackboardToJSON
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:198,1
    - Dst: auto::dump
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:199,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:201,1
    - Dst: ImportBlackboardFromJSON
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:202,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:204,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:204,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:205,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:205,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:207,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:208,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:209,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 191
    functionDepth: 1
    functionLinenumber: 191
    functionLinenumberEnd: 211
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached:
    - ImportBlackboardFromJSON
    - auto::set
    - BT::Blackboard::create
    - ASSERT_EQ
    - auto::get
    - ExportBlackboardToJSON
    - auto::dump
    linkageType: ''
    returnType: void
    signature: void TEST_F(JsonTest, BlackboardInOut)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:215,1
    - Dst: toJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:219,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:219,1
    - Dst: nlohmann::json::dump
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:221,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:223,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:224,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:225,1
    - Dst: fromJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:227,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:228,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:228,1
    - Dst: auto::first::cast
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:229,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:231,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:231,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:231,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:232,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:234,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 213
    functionDepth: 1
    functionLinenumber: 213
    functionLinenumberEnd: 236
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached:
    - fromJson
    - auto::first::cast
    - toJson
    - ASSERT_EQ
    - nlohmann::json::dump
    - auto::error
    - ASSERT_TRUE
    - std::vector::size
    - BT::Blackboard::get
    - BT::Blackboard::getAny
    - auto::size
    linkageType: ''
    returnType: void
    signature: void TEST_F(JsonTest, VectorInteger)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:240,1
    - Dst: toJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:243,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:243,1
    - Dst: nlohmann::json::dump
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:244,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:245,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:246,1
    - Dst: fromJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:247,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:248,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:248,1
    - Dst: auto::first::cast
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:249,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:250,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:250,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:250,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:251,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:253,1
    - Dst: fromJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:256,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:257,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:257,1
    - Dst: auto::first::cast
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:258,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:259,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:259,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:259,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:260,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:262,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 238
    functionDepth: 1
    functionLinenumber: 238
    functionLinenumberEnd: 264
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached:
    - fromJson
    - auto::first::cast
    - toJson
    - ASSERT_EQ
    - nlohmann::json::dump
    - auto::error
    - ASSERT_TRUE
    - std::vector::size
    - BT::Blackboard::get
    - BT::Blackboard::getAny
    - auto::size
    linkageType: ''
    returnType: void
    signature: void TEST_F(JsonTest, VectorSring)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:268,1
    - Dst: toJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:278,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:278,1
    - Dst: nlohmann::json::dump
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:280,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:282,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:283,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:284,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:285,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:286,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:287,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:288,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:289,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:290,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:291,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:292,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:293,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:294,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:295,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:296,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:297,1
    - Dst: fromJson
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:300,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:301,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:301,1
    - Dst: auto::first::cast
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:302,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:304,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:304,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:304,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:306,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:307,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:309,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_json.cpp:310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 266
    functionDepth: 1
    functionLinenumber: 266
    functionLinenumberEnd: 311
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_json.cpp
    functionUses: 0
    functionsReached:
    - fromJson
    - auto::first::cast
    - toJson
    - ASSERT_EQ
    - nlohmann::json::dump
    - auto::error
    - ASSERT_TRUE
    - std::vector::size
    - BT::Blackboard::get
    - BT::Blackboard::getAny
    - auto::size
    linkageType: ''
    returnType: void
    signature: void TEST_F(JsonTest, VectorOfCustomTypes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 2
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: TryCatchTest::SetUp
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void SetUp() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:46,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:47,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:49,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:50,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:51,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 53
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(TryCatchTest, AllTryChildrenSucceed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:68,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:69,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:71,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:72,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 74
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(TryCatchTest, FirstChildFails_CatchExecuted)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:89,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:90,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:92,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:93,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 95
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(TryCatchTest, SecondChildFails_CatchExecuted)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:109,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:110,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 113
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(TryCatchTest, CatchReturnsFailure_NodeStillReturnsFAILURE)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:127,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:128,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 132
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(TryCatchTest, CatchReturnsSuccess_NodeStillReturnsFAILURE)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: registerSimpleCondition
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:137,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:156,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:158,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:159,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:161,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:162,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 164
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - auto::tickOnce
    - createTreeFromText
    - registerSimpleCondition
    linkageType: ''
    returnType: void
    signature: void TEST_F(TryCatchTest, TryChildRunning)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: registerSimpleCondition
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:169,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:189,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:192,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:193,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:196,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:197,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 198
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - auto::tickOnce
    - createTreeFromText
    - registerSimpleCondition
    linkageType: ''
    returnType: void
    signature: void TEST_F(TryCatchTest, CatchChildRunning)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_THROW
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:212,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 213
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - createTreeFromText
    - ASSERT_THROW
    linkageType: ''
    returnType: void
    signature: void TEST_F(TryCatchTest, MinimumTwoChildren_ParseTimeValidation)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:227,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:229,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:230,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:231,1
    - Dst: auto::haltTree
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:233,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:234,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:235,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:236,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 238
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 238
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - auto::haltTree
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(TryCatchTest, ReExecuteAfterSuccess)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:243,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:262,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:265,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:266,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:267,1
    - Dst: auto::haltTree
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:270,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:271,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:272,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:273,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 274
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - auto::haltTree
    - auto::tickWhileRunning
    - ASSERT_EQ
    - registerSimpleAction
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(TryCatchTest, ReExecuteAfterFailure)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:279,1
    - Dst: registerSimpleCondition
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:285,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:300,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:302,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:303,1
    - Dst: auto::haltTree
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:306,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:307,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 308
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 308
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - auto::haltTree
    - ASSERT_EQ
    - auto::tickOnce
    - registerSimpleAction
    - createTreeFromText
    - registerSimpleCondition
    linkageType: ''
    returnType: void
    signature: void TEST_F(TryCatchTest, CatchOnHalt_Disabled)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:313,1
    - Dst: registerSimpleCondition
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:319,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:334,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:336,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:337,1
    - Dst: auto::haltTree
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:340,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 342
      start: 310
    functionDepth: 0
    functionLinenumber: 310
    functionLinenumberEnd: 342
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - auto::haltTree
    - ASSERT_EQ
    - auto::tickOnce
    - registerSimpleAction
    - createTreeFromText
    - registerSimpleCondition
    linkageType: ''
    returnType: void
    signature: void TEST_F(TryCatchTest, CatchOnHalt_Enabled)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerSimpleCondition
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:347,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:362,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:365,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:366,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:367,1
    - Dst: auto::haltTree
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:370,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:371,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 344
    functionDepth: 0
    functionLinenumber: 344
    functionLinenumberEnd: 372
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - auto::haltTree
    - ASSERT_EQ
    - auto::tickOnce
    - createTreeFromText
    - registerSimpleCondition
    linkageType: ''
    returnType: void
    signature: void TEST_F(TryCatchTest, CatchOnHalt_NotTriggeredWhenAlreadyInCatch)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: registerSimpleCondition
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:381,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:404,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:409,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:410,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:411,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:415,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:416,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:419,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:422,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 374
    functionDepth: 0
    functionLinenumber: 374
    functionLinenumberEnd: 423
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - auto::tickOnce
    - ASSERT_EQ
    - createTreeFromText
    - registerSimpleCondition
    linkageType: ''
    returnType: void
    signature: void TEST_F(TryCatchTest, AsyncCatchCompletesInsideSequence)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:437,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:438,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:440,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:441,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 425
    functionDepth: 0
    functionLinenumber: 425
    functionLinenumberEnd: 443
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(TryCatchTest, SingleTryChild_Success)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:459,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:460,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:462,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:463,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:464,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_try_catch.cpp:465,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 445
    functionDepth: 0
    functionLinenumber: 445
    functionLinenumberEnd: 466
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_try_catch.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(TryCatchTest, ManyTryChildren_ThirdFails)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:34,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' node'
    argTypes:
    - BT::TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 40
    functionName: TickWhileRunning
    functionSourceFile: /src/behaviortreecpp/tests/gtest_switch.cpp
    functionUses: 0
    functionsReached:
    - executeTick
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus TickWhileRunning(BT::TreeNode& node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:34,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' node'
    argTypes:
    - BT::TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 40
    functionName: TickWhileRunning
    functionSourceFile: /src/behaviortreecpp/tests/gtest_switch.cpp
    functionUses: 0
    functionsReached:
    - executeTick
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus TickWhileRunning(BT::TreeNode& node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:55,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:56,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:57,1
    - Dst: BT::PortsRemapping::insert
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:60,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:60,1
    - Dst: BT::PortsRemapping::insert
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:61,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:61,1
    - Dst: BT::PortsRemapping::insert
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:62,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:62,1
    - Dst: std::make_unique<Switch2>
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:68,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:70,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:71,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:72,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 54
    functionDepth: 1
    functionLinenumber: 54
    functionLinenumberEnd: 73
    functionName: SwitchTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_switch.cpp
    functionUses: 0
    functionsReached:
    - BT::PortsRemapping::insert
    - addChild
    - std::make_pair
    - std::make_unique<Switch2>
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void SwitchTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: halt
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: ~SwitchTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_switch.cpp
    functionUses: 0
    functionsReached:
    - halt
    linkageType: ''
    returnType: void
    signature: void ~SwitchTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: SwitchTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_switch.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwitchTest(const SwitchTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: '& operator=(const SwitchTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_switch.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SwitchTest
    signature: SwitchTest & operator=(const SwitchTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: SwitchTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_switch.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwitchTest(SwitchTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: '& operator=(SwitchTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_switch.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SwitchTest
    signature: SwitchTest & operator=(SwitchTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:86,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:88,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:88,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:89,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:89,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:90,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:90,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:91,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:93,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:93,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:94,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:96,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:96,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:97,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:97,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:98,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:98,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 100
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_switch.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(SwitchTest, DefaultCase)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:104,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:105,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:107,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:107,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:108,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:108,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:109,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:109,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:110,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:112,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:112,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:113,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:115,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:115,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:116,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:116,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:117,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:117,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 102
    functionDepth: 1
    functionLinenumber: 102
    functionLinenumberEnd: 119
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_switch.cpp
    functionUses: 0
    functionsReached:
    - set
    - ASSERT_EQ
    - status
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(SwitchTest, Case1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:123,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:124,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:126,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:126,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:127,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:127,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:128,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:128,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:129,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:131,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:131,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:132,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:134,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:134,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:135,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:135,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:136,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:136,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 138
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_switch.cpp
    functionUses: 0
    functionsReached:
    - set
    - ASSERT_EQ
    - status
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(SwitchTest, Case2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:142,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:143,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:145,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:145,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:146,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:146,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:147,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:147,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:148,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:150,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:150,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:151,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:153,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:153,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:154,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:154,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:155,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:155,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 157
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_switch.cpp
    functionUses: 0
    functionsReached:
    - set
    - ASSERT_EQ
    - status
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(SwitchTest, CaseNone)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:161,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:162,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:164,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:164,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:165,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:165,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:166,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:166,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:167,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:169,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:169,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:170,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:171,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:171,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:172,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:172,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:173,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:173,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:174,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:178,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:178,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:179,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:180,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:180,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:181,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:181,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:182,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:182,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:183,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:183,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:184,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:184,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:186,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:186,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:187,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:188,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:188,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:189,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:189,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:190,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:190,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:191,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:193,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:193,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:194,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:196,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:196,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:197,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:197,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:198,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:198,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:199,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 200
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_switch.cpp
    functionUses: 0
    functionsReached:
    - set
    - ASSERT_EQ
    - status
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(SwitchTest, CaseSwitchToDefault)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:204,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:205,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:207,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:207,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:208,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:208,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:209,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:209,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:210,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:212,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:213,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:213,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:214,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:215,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:215,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:216,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:216,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:217,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:217,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:218,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:220,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:220,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:221,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:223,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:223,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:224,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:224,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:225,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:225,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:226,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:226,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 227
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_switch.cpp
    functionUses: 0
    functionsReached:
    - set
    - ASSERT_EQ
    - status
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(SwitchTest, CaseSwitchToAction2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:231,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:232,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:234,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:236,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:236,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:237,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:237,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:238,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:238,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:239,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:241,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:241,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:242,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:244,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:245,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:245,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:246,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:246,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:247,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 229
    functionDepth: 1
    functionLinenumber: 229
    functionLinenumberEnd: 248
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_switch.cpp
    functionUses: 0
    functionsReached:
    - set
    - ASSERT_EQ
    - status
    - setExpectedResult
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(SwitchTest, ActionFailure)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:255,1
    - Dst: CheckStringEquality
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:255,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:256,1
    - Dst: CheckStringEquality
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:256,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:257,1
    - Dst: CheckStringEquality
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:257,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:258,1
    - Dst: CheckStringEquality
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:258,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:261,1
    - Dst: CheckStringEquality
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:261,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:262,1
    - Dst: CheckStringEquality
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:262,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:263,1
    - Dst: CheckStringEquality
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:263,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:264,1
    - Dst: CheckStringEquality
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:264,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:265,1
    - Dst: CheckStringEquality
      Src: /src/behaviortreecpp/tests/gtest_switch.cpp:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 266
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_switch.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_TRUE
    - EXPECT_FALSE
    - CheckStringEquality
    linkageType: ''
    returnType: void
    signature: void TEST(SwitchStringEquality, RejectsTrailingCharacters)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:17,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:31,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:32,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:33,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:34,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 13
    functionDepth: 2
    functionLinenumber: 13
    functionLinenumberEnd: 36
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_skipping.cpp
    functionUses: 0
    functionsReached:
    - RegisterTestTick
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(SkippingLogic, Sequence)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:42,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:56,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:57,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:59,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:60,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:61,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:62,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 38
    functionDepth: 2
    functionLinenumber: 38
    functionLinenumberEnd: 64
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_skipping.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - RegisterTestTick
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(SkippingLogic, SkipAll)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:70,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:88,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:89,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:91,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:93,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:94,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:95,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 66
    functionDepth: 2
    functionLinenumber: 66
    functionLinenumberEnd: 97
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_skipping.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - RegisterTestTick
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(SkippingLogic, SkipSubtree)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:111,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:112,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:113,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:115,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 118
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_skipping.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::set
    - auto::tickWhileRunning
    - BT::Blackboard::create
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(SkippingLogic, ReactiveSingleChild)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:124,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:148,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:154,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:159,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:161,1
    - Dst: auto::sleep
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:168,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:170,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:174,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:177,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 120
    functionDepth: 2
    functionLinenumber: 120
    functionLinenumberEnd: 178
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_skipping.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - isStatusCompleted
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - auto::tickOnce
    - RegisterTestTick
    - auto::sleep
    linkageType: ''
    returnType: void
    signature: void TEST(SkippingLogic, SkippingReactiveSequence)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:184,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:212,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:213,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:214,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:217,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_skipping.cpp:220,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 180
    functionDepth: 2
    functionLinenumber: 180
    functionLinenumberEnd: 221
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_skipping.cpp
    functionUses: 0
    functionsReached:
    - RegisterTestTick
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(SkippingLogic, WhileSkip)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TestPoint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: operator==(const TestPoint& other) const
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const TestPoint& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TestPoint
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: operator!=(const TestPoint& other) const
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const TestPoint& other) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:74,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:75,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:77,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:80,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:81,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 83
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 1
    functionsReached:
    - RuntimeError
    - auto::size
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: TestPoint
    signature: TestPoint convertFromString(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:74,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:75,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:77,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:80,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:81,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 83
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 2
    functionsReached:
    - RuntimeError
    - auto::size
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: TestPoint
    signature: TestPoint convertFromString(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 96
    functionName: NodeWithIntPorts::NodeWithIntPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NodeWithIntPorts(const std::string& name, const NodeConfig& config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<int>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:100,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:103,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 107
    functionName: NodeWithIntPorts::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - auto::value
    - getInput<int>
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:111,1
    - Dst: OutputPort<int>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:111,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 112
    functionName: NodeWithIntPorts::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - OutputPort<int>
    - InputPort<int>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 121
    functionName: NodeWithStringPorts::NodeWithStringPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NodeWithStringPorts(const std::string& name, const NodeConfig&
      config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<std::string>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:125,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:128,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 132
    functionName: NodeWithStringPorts::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - auto::value
    - getInput<std::string>
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:136,1
    - Dst: OutputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 137
    functionName: NodeWithStringPorts::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - InputPort<std::string>
    - OutputPort<std::string>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: NodeWithDoublePorts::NodeWithDoublePorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NodeWithDoublePorts(const std::string& name, const NodeConfig&
      config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<double>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:150,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:153,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:153,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 157
    functionName: NodeWithDoublePorts::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - auto::value
    - setOutput
    - getInput<double>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<double>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:161,1
    - Dst: OutputPort<double>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: NodeWithDoublePorts::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - InputPort<double>
    - OutputPort<double>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 171
    functionName: NodeWithGenericPorts::NodeWithGenericPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NodeWithGenericPorts(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionName: NodeWithGenericPorts::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:181,1
    - Dst: OutputPort<>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 182
    functionName: NodeWithGenericPorts::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - OutputPort<>
    - InputPort<>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: NodeWithAnyPorts::NodeWithAnyPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NodeWithAnyPorts(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:196,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:196,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:197,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:197,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:198,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 193
    functionDepth: 1
    functionLinenumber: 193
    functionLinenumberEnd: 200
    functionName: NodeWithAnyPorts::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::getAny
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<BT::Any>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:204,1
    - Dst: OutputPort<BT::Any>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionName: NodeWithAnyPorts::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - OutputPort<BT::Any>
    - InputPort<BT::Any>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 214
    functionName: NodeWithTestPointPorts::NodeWithTestPointPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NodeWithTestPointPorts(const std::string& name, const NodeConfig&
      config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<TestPoint>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:218,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:221,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:221,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 225
    functionName: NodeWithTestPointPorts::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - auto::value
    - getInput<TestPoint>
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<TestPoint>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:229,1
    - Dst: OutputPort<TestPoint>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 230
    functionName: NodeWithTestPointPorts::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - OutputPort<TestPoint>
    - InputPort<TestPoint>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - result
    argTypes:
    - std::string
    - NodeConfig
    - std::vector<double>*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 240
    functionName: NodeWithVectorPorts::NodeWithVectorPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void NodeWithVectorPorts(const std::string& name, const NodeConfig&
      config,\n                      std::vector<double>* result)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<std::vector<double>>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:244,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:247,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 251
    functionName: NodeWithVectorPorts::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - auto::value
    - getInput<std::vector<double>>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::vector<double>>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionName: NodeWithVectorPorts::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - InputPort<std::vector<double>>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:269,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:282,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:283,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:285,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:286,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 287
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 287
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, SameType_IntToInt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:292,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:305,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:306,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:308,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:309,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 289
    functionDepth: 0
    functionLinenumber: 289
    functionLinenumberEnd: 310
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, SameType_StringToString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:315,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:328,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:329,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:331,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:332,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:333,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:334,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 312
    functionDepth: 0
    functionLinenumber: 312
    functionLinenumberEnd: 335
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, SameType_CustomTypeToCustomType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:344,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:345,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:358,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 359
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, GenericPort_AcceptsInt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:364,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:365,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:378,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 379
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, GenericPort_AcceptsString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:384,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:385,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:400,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 401
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, GenericOutput_ToTypedInput)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:410,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:424,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:425,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:427,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:428,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 407
    functionDepth: 0
    functionLinenumber: 407
    functionLinenumberEnd: 429
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, StringToInt_ViaConvertFromString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:434,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:447,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:448,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:450,1
    - Dst: ASSERT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:451,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 431
    functionDepth: 0
    functionLinenumber: 431
    functionLinenumberEnd: 452
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_DOUBLE_EQ
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, StringToDouble_ViaConvertFromString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:457,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:471,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:472,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:474,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:475,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:476,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:477,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 454
    functionDepth: 0
    functionLinenumber: 454
    functionLinenumberEnd: 478
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, StringToCustomType_ViaConvertFromString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:484,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:495,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:496,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:498,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:499,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:499,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:500,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:501,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:502,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 480
    functionDepth: 1
    functionLinenumber: 480
    functionLinenumberEnd: 503
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - std::vector::size
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, StringToVector_ViaConvertFromString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:509,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:523,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:524,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:525,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:527,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:528,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:528,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:529,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:530,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 531
      start: 505
    functionDepth: 1
    functionLinenumber: 505
    functionLinenumberEnd: 531
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - std::vector::size
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, SubtreeStringInput_ToTypedPort)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:539,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:542,1
    - Dst: string
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:542,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:544,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:545,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:548,1
    - Dst: auto::isStronglyTyped
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:548,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 537
    functionDepth: 1
    functionLinenumber: 537
    functionLinenumberEnd: 549
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - auto::entryInfo
    - auto::set
    - string
    - BT::Blackboard::create
    - ASSERT_FALSE
    - ASSERT_NE
    - auto::isStronglyTyped
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, BlackboardSetString_CreatesGenericEntry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:553,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:555,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:557,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:558,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:559,1
    - Dst: auto::isStronglyTyped
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:559,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:560,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:560,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:560,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 551
    functionDepth: 1
    functionLinenumber: 551
    functionLinenumberEnd: 561
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - auto::type
    - auto::entryInfo
    - typeid
    - auto::set
    - BT::Blackboard::create
    - ASSERT_EQ
    - ASSERT_TRUE
    - ASSERT_NE
    - auto::isStronglyTyped
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, BlackboardSetInt_CreatesStronglyTypedEntry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:565,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:568,1
    - Dst: string
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:568,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:569,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:569,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:572,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:573,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:573,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:574,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:574,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:574,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 563
    functionDepth: 1
    functionLinenumber: 563
    functionLinenumberEnd: 575
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - auto::entryInfo
    - typeid
    - auto::set
    - string
    - BT::Blackboard::create
    - ASSERT_EQ
    - ASSERT_FALSE
    - ASSERT_TRUE
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, StringEntry_CanBecomeTyped)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:583,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:586,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:587,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:587,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:591,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:591,1
    - Dst: string
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:591,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:592,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:592,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 581
    functionDepth: 1
    functionLinenumber: 581
    functionLinenumberEnd: 593
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - auto::entryInfo
    - auto::set
    - string
    - BT::Blackboard::create
    - ASSERT_TRUE
    - EXPECT_ANY_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, TypeLock_CannotChangeAfterTypedWrite)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:598,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:599,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:613,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 595
    functionDepth: 0
    functionLinenumber: 595
    functionLinenumberEnd: 614
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, TypeLock_XMLTreeCreation_TypeMismatch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:619,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:620,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:634,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 635
      start: 616
    functionDepth: 0
    functionLinenumber: 616
    functionLinenumberEnd: 635
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, TypeLock_IntToDouble_Fails)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:640,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:641,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:656,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 657
      start: 637
    functionDepth: 0
    functionLinenumber: 637
    functionLinenumberEnd: 657
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, TypeLock_CustomTypeChange_Fails)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:662,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:663,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:677,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:678,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:681,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:682,1
    - Dst: string
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:682,1
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:685,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:685,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:687,1
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:691,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:691,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 692
      start: 659
    functionDepth: 1
    functionLinenumber: 659
    functionLinenumberEnd: 692
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::subtrees::front
    - auto::tickExactlyOnce
    - string
    - set
    - auto::tickWhileRunning
    - BehaviorTreeFactory::registerNodeType
    - std::this_thread::sleep_for
    - EXPECT_THROW
    - ASSERT_NO_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, TypeLock_RuntimeTypeChange_Fails)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:700,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:703,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:704,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:704,1
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:707,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:707,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:708,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:708,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 698
    functionDepth: 1
    functionLinenumber: 698
    functionLinenumberEnd: 709
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - auto::entryInfo
    - auto::set
    - BT::Blackboard::create
    - ASSERT_EQ
    - auto::get
    - ASSERT_TRUE
    - ASSERT_NO_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, SafeCast_IntToUint8_InRange)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:713,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:716,1
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:719,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:719,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 711
    functionDepth: 1
    functionLinenumber: 711
    functionLinenumberEnd: 720
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::create
    - EXPECT_THROW
    - auto::set
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, SafeCast_IntToUint8_Overflow)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:724,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:727,1
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:730,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:730,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 722
    functionDepth: 1
    functionLinenumber: 722
    functionLinenumberEnd: 731
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::create
    - EXPECT_THROW
    - auto::set
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, SafeCast_IntToUint8_Negative)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:735,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:738,1
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:742,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:742,1
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:745,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:745,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 746
      start: 733
    functionDepth: 1
    functionLinenumber: 733
    functionLinenumberEnd: 746
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::create
    - EXPECT_THROW
    - ASSERT_NO_THROW
    - auto::set
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, SafeCast_DifferentIntTypes_NotAllowed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:754,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:758,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:758,1
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:762,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:762,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:762,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 752
    functionDepth: 1
    functionLinenumber: 752
    functionLinenumberEnd: 763
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::create
    - EXPECT_THROW
    - BT::Blackboard::getAny
    - auto::set
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, BTAny_WrapperDoesNotBypassTypeCheck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:767,1
    - Dst: auto::createEntry
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:770,1
    - Dst: TypeInfo::Create<BT::Any>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:770,1
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:773,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:773,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:773,1
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:774,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:774,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:774,1
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:775,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:775,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:775,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 776
      start: 765
    functionDepth: 1
    functionLinenumber: 765
    functionLinenumberEnd: 776
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - auto::set
    - BT::Blackboard::create
    - TypeInfo::Create<BT::Any>
    - BT::Blackboard::getAny
    - auto::createEntry
    - ASSERT_NO_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, BTAny_EntryType_AllowsDifferentTypes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:781,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:782,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:796,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 797
      start: 778
    functionDepth: 0
    functionLinenumber: 778
    functionLinenumberEnd: 797
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, BTAny_Port_AcceptsDifferentTypes)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<std::string>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:813,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:816,1
    - Dst: InputPort<BT::Any>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:824,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:832,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:833,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:846,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:847,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:849,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:850,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 851
      start: 799
    functionDepth: 1
    functionLinenumber: 799
    functionLinenumberEnd: 851
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - InputPort<BT::Any>
    - auto::tickWhileRunning
    - auto::value
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - getInput<std::string>
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, BTAny_InputPort_ReadsAsString)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - result
    argTypes:
    - std::string
    - NodeConfig
    - std::string*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 809
      start: 807
    functionDepth: 0
    functionLinenumber: 807
    functionLinenumberEnd: 809
    functionName: GetAnyAsString::GetAnyAsString
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GetAnyAsString(const std::string& name, const NodeConfig& config,
      std::string* result)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<std::string>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:813,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:816,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 820
      start: 811
    functionDepth: 1
    functionLinenumber: 811
    functionLinenumberEnd: 820
    functionName: GetAnyAsString::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - auto::value
    - getInput<std::string>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<BT::Any>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:824,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 822
    functionDepth: 0
    functionLinenumber: 822
    functionLinenumberEnd: 825
    functionName: GetAnyAsString::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - InputPort<BT::Any>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:861,1
    - Dst: TypeInfo::isStronglyTyped
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:861,1
    - Dst: TypeInfo::Create<int>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:864,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:865,1
    - Dst: TypeInfo::isStronglyTyped
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:865,1
    - Dst: TypeInfo::Create<std::string>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:867,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:868,1
    - Dst: TypeInfo::isStronglyTyped
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:868,1
    - Dst: TypeInfo::Create<BT::Any>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:871,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:872,1
    - Dst: TypeInfo::isStronglyTyped
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:872,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 873
      start: 857
    functionDepth: 0
    functionLinenumber: 857
    functionLinenumberEnd: 873
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - TypeInfo::Create<int>
    - TypeInfo::Create<std::string>
    - ASSERT_FALSE
    - TypeInfo::Create<BT::Any>
    - ASSERT_TRUE
    - TypeInfo::isStronglyTyped
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, IsStronglyTyped_TypeInfo)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:878,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:880,1
    - Dst: isStronglyTyped
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:880,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:881,1
    - Dst: type
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:881,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:881,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 882
      start: 875
    functionDepth: 1
    functionLinenumber: 875
    functionLinenumberEnd: 882
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - isStronglyTyped
    - typeid
    - ASSERT_EQ
    - ASSERT_FALSE
    - type
    - InputPort<>
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, GenericPortDeclaration_DefaultsToAnyTypeAllowed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:891,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:892,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:907,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:908,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:910,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:911,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:911,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 912
      start: 888
    functionDepth: 0
    functionLinenumber: 888
    functionLinenumberEnd: 912
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, GenericToTyped_ChainThroughBlackboard)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:917,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:918,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:933,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 934
      start: 914
    functionDepth: 0
    functionLinenumber: 914
    functionLinenumberEnd: 934
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, MixedTypesWithGenericIntermediate)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:939,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:950,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 951
      start: 936
    functionDepth: 0
    functionLinenumber: 936
    functionLinenumberEnd: 951
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, StringLiteralValidation_InvalidFormat)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:956,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:967,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 968
      start: 953
    functionDepth: 0
    functionLinenumber: 953
    functionLinenumberEnd: 968
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, StringLiteralValidation_ValidFormat)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:973,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:983,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:984,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:986,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 987
      start: 970
    functionDepth: 0
    functionLinenumber: 970
    functionLinenumberEnd: 987
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, CustomTypeStringLiteral_ValidFormat)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:992,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:1003,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 989
    functionDepth: 0
    functionLinenumber: 989
    functionLinenumberEnd: 1004
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, CustomTypeStringLiteral_InvalidFormat)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:1009,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:1010,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:1011,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:1026,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:1027,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:1028,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:1028,1
    - Dst: ASSERT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:1029,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:1029,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1030
      start: 1006
    functionDepth: 0
    functionLinenumber: 1006
    functionLinenumberEnd: 1030
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_DOUBLE_EQ
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, StringToDifferentTypes)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1041
      start: 1039
    functionDepth: 0
    functionLinenumber: 1039
    functionLinenumberEnd: 1041
    functionName: IllegalPortNameNode::IllegalPortNameNode
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IllegalPortNameNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1043
    functionDepth: 0
    functionLinenumber: 1043
    functionLinenumberEnd: 1046
    functionName: IllegalPortNameNode::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:1051,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1052
      start: 1048
    functionDepth: 0
    functionLinenumber: 1048
    functionLinenumberEnd: 1052
    functionName: IllegalPortNameNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - InputPort<std::string>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:1060,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp:1060,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1062
      start: 1055
    functionDepth: 0
    functionLinenumber: 1055
    functionLinenumberEnd: 1062
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PortTypeRules, ReservedPortName_ThrowsOnRegistration)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:35,1
    - Dst: GTEST_SKIP
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 40
    functionName: PluginIssue953Test::SetUp
    functionSourceFile: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp
    functionUses: 0
    functionsReached:
    - GTEST_SKIP
    - std::filesystem::exists
    linkageType: ''
    returnType: void
    signature: void SetUp() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerFromPlugin
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:62,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:64,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:70,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:72,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:75,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:76,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:76,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:77,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:77,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:78,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 79
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - EXPECT_DOUBLE_EQ
    - ASSERT_EQ
    - EXPECT_EQ
    - BehaviorTreeFactory::registerFromPlugin
    - auto::get
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST_F(PluginIssue953Test, GetInputUsesStoredConverter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerFromPlugin
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:96,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:98,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:99,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:101,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:103,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:104,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:104,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:105,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:105,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:106,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 107
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - EXPECT_DOUBLE_EQ
    - ASSERT_EQ
    - EXPECT_EQ
    - BehaviorTreeFactory::registerFromPlugin
    - auto::get
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST_F(PluginIssue953Test, GetInputFromBlackboardString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerFromPlugin
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:125,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:127,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:128,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:130,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:134,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:134,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:135,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:135,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:136,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 137
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - EXPECT_DOUBLE_EQ
    - EXPECT_EQ
    - ASSERT_EQ
    - BehaviorTreeFactory::registerFromPlugin
    - auto::get
    linkageType: ''
    returnType: void
    signature: void TEST_F(PluginIssue953Test, GetInputViaSubtreeRemapping)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::parseStatements
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:15,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:16,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:20,1
    - Dst: evaluate
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:22,1
    - Dst: auto::back
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:24,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' environment'
    - text
    argTypes:
    - BT::Ast::Environment
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 13
    functionDepth: 1
    functionLinenumber: 13
    functionLinenumberEnd: 25
    functionName: GetScriptResult
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - auto::back
    - evaluate
    - auto::empty
    - BT::Scripting::parseStatements
    - auto::size
    linkageType: ''
    returnType: BT::Any
    signature: BT::Any GetScriptResult(BT::Ast::Environment& environment, const char*
      text)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::parseStatements
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:15,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:16,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:20,1
    - Dst: evaluate
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:22,1
    - Dst: auto::back
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:24,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' environment'
    - text
    argTypes:
    - BT::Ast::Environment
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 13
    functionDepth: 1
    functionLinenumber: 13
    functionLinenumberEnd: 25
    functionName: GetScriptResult
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - auto::back
    - evaluate
    - auto::empty
    - BT::Scripting::parseStatements
    - auto::size
    linkageType: ''
    returnType: BT::Any
    signature: BT::Any GetScriptResult(BT::Ast::Environment& environment, const char*
      text)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:31,1
    - Dst: BT::ParseScriptAndExecute
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:33,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:35,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:36,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:36,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:37,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:37,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:39,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:40,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:40,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:41,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:41,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:43,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:44,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:44,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:45,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:45,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:47,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:48,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:48,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:49,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:49,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:51,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:52,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:52,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:53,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:53,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:55,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:56,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:56,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:57,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:57,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:59,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:60,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:60,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:61,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:61,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:63,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:64,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:64,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:65,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:65,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:67,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:68,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:68,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:69,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:69,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:71,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:72,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:72,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:73,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:73,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:75,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:76,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:76,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:77,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:77,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:79,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:80,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:80,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:81,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:81,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:83,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:84,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:84,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:85,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 86
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - Parse
    - BT::Blackboard::create
    - auto::value
    - EXPECT_TRUE
    - EXPECT_EQ
    - BT::ParseScriptAndExecute
    - auto::has_value
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, AnyTypes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:90,1
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:90,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:91,1
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:91,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:92,1
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:92,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:93,1
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:93,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:94,1
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:94,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:97,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:98,1
    - Dst: BT::ParseScriptAndExecute
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 88
    functionDepth: 1
    functionLinenumber: 88
    functionLinenumberEnd: 99
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::create
    - BT::ValidateScript
    - EXPECT_FALSE
    - BT::ParseScriptAndExecute
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, AnyTypes_Failing)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:103,1
    - Dst: GetScriptResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:106,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:110,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:110,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:111,1
    - Dst: getKeys
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:111,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:112,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:112,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:113,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:113,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:115,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:115,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:116,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:116,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:118,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:118,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:119,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:119,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:121,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:121,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:122,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:122,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:124,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:124,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:125,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:125,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:127,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:127,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:128,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:128,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:130,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:130,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:132,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:132,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:133,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:133,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:135,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:135,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:136,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:136,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:137,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:137,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:138,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:138,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:140,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:140,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:141,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:141,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:142,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:142,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:144,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:147,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:147,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:151,1
    - Dst: getKeys
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:151,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:152,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:152,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:153,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:153,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:154,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:154,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:157,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:157,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:162,1
    - Dst: getKeys
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:162,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:163,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:163,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:164,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:164,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:165,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:165,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:168,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:168,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:169,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:169,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:170,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:170,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:173,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:173,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:174,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:174,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:175,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:175,1
    - Dst: getKeys
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:177,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:178,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:178,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:179,1
    - Dst: getKeys
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:179,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:182,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:182,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:183,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:183,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:184,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:184,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:185,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:185,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:187,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:187,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:188,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:188,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:189,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:189,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:190,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:190,1
    - Dst: EXPECT_NE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:192,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:192,1
    - Dst: EXPECT_NE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:193,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:193,1
    - Dst: EXPECT_NE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:194,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:194,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:196,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:196,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:197,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:197,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:199,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:199,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:200,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:200,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:201,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:201,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:203,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:203,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:204,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:204,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:206,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:207,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:207,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:208,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:208,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:210,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:210,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:211,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:211,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:212,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:212,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:214,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:214,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:215,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:215,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:217,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:217,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:218,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:218,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:220,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:220,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:221,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:221,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:224,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:224,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:225,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 78
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 101
    functionDepth: 2
    functionLinenumber: 101
    functionLinenumberEnd: 226
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - get
    - GetResult
    - BT::Blackboard::create
    - GetScriptResult
    - EXPECT_TRUE
    - EXPECT_EQ
    - getKeys
    - EXPECT_ANY_THROW
    - EXPECT_NE
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, Equations)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:230,1
    - Dst: GetScriptResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:233,1
    - Dst: BT::PortInfo::PortInfo
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:236,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:236,1
    - Dst: BT::Ast::Environment::vars::createEntry
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:237,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:239,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:239,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:240,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:240,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:241,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:241,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:243,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:243,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:244,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 228
    functionDepth: 2
    functionLinenumber: 228
    functionLinenumberEnd: 245
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - typeid
    - GetResult
    - BT::Blackboard::create
    - GetScriptResult
    - BT::Ast::Environment::vars::createEntry
    - EXPECT_ANY_THROW
    - BT::PortInfo::PortInfo
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, NotInitializedComparison)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:249,1
    - Dst: GetScriptResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:252,1
    - Dst: std::make_shared<BT::EnumsTable>
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:262,1
    - Dst: BT::Ast::Environment::enums::insert
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:263,1
    - Dst: BT::Ast::Environment::enums::insert
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:264,1
    - Dst: BT::Ast::Environment::enums::insert
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:265,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:266,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:267,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:268,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:270,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:270,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:271,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:271,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:273,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:273,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:274,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:274,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:275,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 247
    functionDepth: 2
    functionLinenumber: 247
    functionLinenumberEnd: 276
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<BT::EnumsTable>
    - BT::Ast::Environment::enums::insert
    - GetResult
    - BT::Blackboard::create
    - GetScriptResult
    - EXPECT_EQ
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, EnumsBasic)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:280,1
    - Dst: BT::BehaviorTreeFactory::registerScriptingEnum
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:297,1
    - Dst: BT::BehaviorTreeFactory::registerScriptingEnums
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:298,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:300,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:301,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:302,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:304,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:305,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:305,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:306,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:306,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:307,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:307,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:308,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 309
      start: 278
    functionDepth: 1
    functionLinenumber: 278
    functionLinenumberEnd: 309
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - get
    - auto::subtrees::front
    - BT::BehaviorTreeFactory::registerScriptingEnum
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::registerScriptingEnums
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, EnumsXML)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:320,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:322,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:325,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:325,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:330,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ' self'
    argTypes:
    - BT::TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 333
      start: 318
    functionDepth: 0
    functionLinenumber: 318
    functionLinenumberEnd: 333
    functionName: checkLevel
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - auto::error
    - getInput
    - setOutput
    - std::runtime_error
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus checkLevel(BT::TreeNode& self)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:337,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:354,1
    - Dst: BT::BehaviorTreeFactory::registerSimpleCondition
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:355,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:356,1
    - Dst: BT::InputPort
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:357,1
    - Dst: BT::InputPort
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:357,1
    - Dst: BT::OutputPort
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:358,1
    - Dst: BT::BehaviorTreeFactory::registerScriptingEnums
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:360,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:362,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:363,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:364,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:366,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:367,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:367,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:368,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:368,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:369,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:369,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 335
    functionDepth: 1
    functionLinenumber: 335
    functionLinenumberEnd: 370
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::registerSimpleCondition
    - BT::BehaviorTreeFactory::createTreeFromText
    - get
    - auto::subtrees::front
    - BT::OutputPort
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::registerNodeType
    - std::bind
    - BT::InputPort
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - BT::BehaviorTreeFactory::registerScriptingEnums
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, Enums_Issue_523)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfiguration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 375
    functionDepth: 0
    functionLinenumber: 375
    functionLinenumberEnd: 377
    functionName: SampleNode595::SampleNode595
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SampleNode595(const std::string& name, const BT::NodeConfiguration&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:381,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 383
    functionName: SampleNode595::tick
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - setOutput
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::OutputPort<uint8_t>
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 384
    functionDepth: 0
    functionLinenumber: 384
    functionLinenumberEnd: 387
    functionName: SampleNode595::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - BT::OutputPort<uint8_t>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:392,1
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:405,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:406,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:408,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:409,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:411,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:412,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 390
    functionDepth: 2
    functionLinenumber: 390
    functionLinenumberEnd: 413
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::registerNodeType
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, Issue595)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:418,1
    - Dst: GetScriptResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:421,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:426,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:426,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:429,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:429,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:432,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:432,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:436,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:436,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:439,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:439,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:442,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:442,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:445,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:445,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:448,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 416
    functionDepth: 2
    functionLinenumber: 416
    functionLinenumberEnd: 449
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::create
    - GetScriptResult
    - EXPECT_EQ
    - GetResult
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, OperatorAssociativity_Issue1029)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:471,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:472,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 454
    functionDepth: 1
    functionLinenumber: 454
    functionLinenumberEnd: 473
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - BT::ValidateScript
    - EXPECT_FALSE
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, ValidateScriptLargeError_Issue923)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:478,1
    - Dst: GetScriptResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:481,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:485,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:485,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:486,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:486,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:487,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:487,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:488,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:488,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:489,1
    - Dst: GetResult
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:489,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:492,1
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:492,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:493,1
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:493,1
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:496,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:507,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:509,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:510,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 476
    functionDepth: 2
    functionLinenumber: 476
    functionLinenumberEnd: 511
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - GetResult
    - auto::tickWhileRunning
    - BT::Blackboard::create
    - GetScriptResult
    - EXPECT_TRUE
    - EXPECT_EQ
    - BT::ValidateScript
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, CompareWithNegativeNumber_Issue832)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:514,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:523,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:524,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:526,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:527,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:527,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:528,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:528,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 529
      start: 512
    functionDepth: 1
    functionLinenumber: 512
    functionLinenumberEnd: 529
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, NewLine)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:534,1
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:534,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:537,1
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:537,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:538,1
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:538,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:541,1
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:541,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:542,1
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:542,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:545,1
    - Dst: BT::ParseScriptAndExecute
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:546,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:547,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:547,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:548,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:548,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:551,1
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:551,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:552,1
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:552,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:553,1
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:553,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 531
    functionDepth: 1
    functionLinenumber: 531
    functionLinenumberEnd: 554
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_FALSE
    - BT::Blackboard::create
    - auto::value
    - EXPECT_TRUE
    - EXPECT_EQ
    - BT::ValidateScript
    - BT::ParseScriptAndExecute
    - auto::has_value
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, TokenizerEdgeCases)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:558,1
    - Dst: BT::ParseScriptAndExecute
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:559,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:562,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:562,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:565,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:565,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:568,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:568,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:571,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:571,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:572,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:572,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:575,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:575,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:578,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:578,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 556
    functionDepth: 1
    functionLinenumber: 556
    functionLinenumberEnd: 579
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::create
    - Parse
    - EXPECT_EQ
    - BT::ParseScriptAndExecute
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, ChainedComparisons)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:583,1
    - Dst: BT::ParseScriptAndExecute
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:584,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:588,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:588,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:592,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:592,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:596,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:596,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:599,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:599,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:602,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:602,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:603,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:603,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 581
    functionDepth: 1
    functionLinenumber: 581
    functionLinenumberEnd: 604
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::create
    - Parse
    - EXPECT_EQ
    - BT::ParseScriptAndExecute
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, OperatorPrecedence)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:608,1
    - Dst: BT::ParseScriptAndExecute
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:609,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:612,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:612,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:613,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:613,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:614,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:614,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:617,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:618,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:618,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:619,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:619,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:622,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:622,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:625,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:625,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 606
    functionDepth: 1
    functionLinenumber: 606
    functionLinenumberEnd: 626
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - Parse
    - BT::Blackboard::create
    - auto::value
    - EXPECT_TRUE
    - EXPECT_EQ
    - BT::ParseScriptAndExecute
    - auto::has_value
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, UnaryOperators)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:630,1
    - Dst: BT::ParseScriptAndExecute
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:631,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:633,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:633,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:634,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:634,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:637,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:637,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:638,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:638,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:641,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:641,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:642,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:642,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 628
    functionDepth: 1
    functionLinenumber: 628
    functionLinenumberEnd: 643
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::create
    - Parse
    - EXPECT_EQ
    - BT::ParseScriptAndExecute
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, TernaryExpressions)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:647,1
    - Dst: BT::ParseScriptAndExecute
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:648,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:651,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:652,1
    - Dst: BT::Ast::Environment::vars::get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:652,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:653,1
    - Dst: BT::Ast::Environment::vars::get
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:653,1
    - Dst: Parse
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:656,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:657,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/script_parser_test.cpp:657,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 645
    functionDepth: 1
    functionLinenumber: 645
    functionLinenumberEnd: 658
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/script_parser_test.cpp
    functionUses: 0
    functionsReached:
    - BT::Ast::Environment::vars::get
    - Parse
    - BT::Blackboard::create
    - auto::value
    - EXPECT_EQ
    - BT::ParseScriptAndExecute
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, MultipleStatements)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:29,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:30,1
    - Dst: Groot2Test::makePublisher
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:31,1
    - Dst: auto::publisher::setMaxHeartbeatDelay
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:36,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 39
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - std::this_thread::sleep_for
    - auto::publisher::setMaxHeartbeatDelay
    - Groot2Test::makePublisher
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherThreadSafety, UpdateHeartbeatDelayWhileHeartbeatThreadIsRunning)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:43,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:44,1
    - Dst: Groot2Test::makePublisher
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:45,1
    - Dst: std::atomic_bool::load
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:50,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:52,1
    - Dst: auto::haltTree
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:53,1
    - Dst: Groot2Test::Client::request
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:61,1
    - Dst: Groot2Test::Client::request
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:67,1
    - Dst: Groot2Test::Client::request
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:70,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:75,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:80,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 41
    functionDepth: 3
    functionLinenumber: 41
    functionLinenumberEnd: 81
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - std::atomic_bool::load
    - auto::tickExactlyOnce
    - auto::haltTree
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - Groot2Test::makePublisher
    - std::thread::join
    - Groot2Test::Client::request
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherThreadSafety, RecordTransitionsWhileTreeIsTicking)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:85,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:86,1
    - Dst: Groot2Test::makePublisher
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:87,1
    - Dst: std::atomic_bool::load
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:91,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:93,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:97,1
    - Dst: auto::publisher::reset
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:98,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 101
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - std::atomic_bool::load
    - auto::tickExactlyOnce
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - std::this_thread::sleep_for
    - auto::publisher::reset
    - Groot2Test::makePublisher
    - std::thread::join
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherThreadSafety, DestroyWhileStatusCallbacksAreRunning)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:108,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:109,1
    - Dst: Groot2Test::makePublisher
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:110,1
    - Dst: Groot2Test::makeHook
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:114,1
    - Dst: auto::rootNode
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:114,1
    - Dst: Groot2Test::Client::request
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:117,1
    - Dst: auto::dump
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:117,1
    - Dst: Groot2Test::Client::request
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:118,1
    - Dst: Groot2Test::Client::request
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:122,1
    - Dst: auto::dump
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:122,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:124,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:124,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:125,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 106
    functionDepth: 3
    functionLinenumber: 106
    functionLinenumberEnd: 126
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::dump
    - auto::tickExactlyOnce
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - auto::rootNode
    - EXPECT_EQ
    - Groot2Test::makeHook
    - Groot2Test::makePublisher
    - Groot2Test::Client::request
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherThreadSafety, DisableThenRemoveOneShotHookUsesConsistentLockOrder)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:130,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:131,1
    - Dst: Groot2Test::makePublisher
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:132,1
    - Dst: Groot2Test::makeHook
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:136,1
    - Dst: auto::rootNode
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:136,1
    - Dst: Groot2Test::Client::request
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:138,1
    - Dst: auto::dump
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:138,1
    - Dst: std::async
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:141,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:141,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:142,1
    - Dst: reset
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:144,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:146,1
    - Dst: auto::wait_for
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:146,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:147,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 128
    functionDepth: 3
    functionLinenumber: 128
    functionLinenumberEnd: 148
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::dump
    - auto::tickExactlyOnce
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - auto::rootNode
    - ASSERT_EQ
    - EXPECT_EQ
    - Groot2Test::makeHook
    - std::this_thread::sleep_for
    - auto::get
    - reset
    - Groot2Test::makePublisher
    - Groot2Test::Client::request
    - std::async
    - auto::wait_for
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherThreadSafety, DestroyWhileBreakpointCallbackIsBlocked)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:25,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:26,1
    - Dst: Groot2Test::makePublisher
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:33,1
    - Dst: Groot2Test::Client::rawRequest
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:36,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:37,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:37,1
    - Dst: std::exit
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:39,1
    - Dst: Groot2Test::Client::request
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:43,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:44,1
    - Dst: std::exit
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:46,1
    - Dst: std::exit
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:48,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 23
    functionDepth: 3
    functionLinenumber: 23
    functionLinenumberEnd: 49
    functionName: malformedRequestScenario
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - to_string
    - Groot2Test::Client::rawRequest
    - Groot2Test::makePublisher
    - Groot2Test::Client::request
    - std::exit
    - auto::size
    linkageType: ''
    returnType: void
    signature: void malformedRequestScenario()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:53,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:54,1
    - Dst: Groot2Test::makePublisher
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:61,1
    - Dst: Groot2Test::Client::rawRequest
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:66,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:67,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:67,1
    - Dst: std::exit
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:69,1
    - Dst: Groot2Test::Client::request
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:73,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:74,1
    - Dst: std::exit
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:76,1
    - Dst: std::exit
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:78,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 51
    functionDepth: 3
    functionLinenumber: 51
    functionLinenumberEnd: 79
    functionName: incompleteHookScenario
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - to_string
    - Groot2Test::Client::rawRequest
    - Groot2Test::makePublisher
    - Groot2Test::Client::request
    - std::exit
    - auto::size
    linkageType: ''
    returnType: void
    signature: void incompleteHookScenario()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' factory'
    - ' main_blackboard'
    argTypes:
    - BT::BehaviorTreeFactory
    - BT::Blackboard::Ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 104
    functionName: createTreeWithNamedSubtrees
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - createTreeFromText
    linkageType: ''
    returnType: BT::Tree
    signature: "BT::Tree createTreeWithNamedSubtrees(BT::BehaviorTreeFactory& factory,\n
      \                                    const BT::Blackboard::Ptr& main_blackboard)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Groot2Test::makePublisher
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:108,1
    - Dst: Groot2Test::Client::request
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:110,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:111,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:113,1
    - Dst: from_msgpack
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:115,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:115,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ' tree'
    - ' bb_list'
    argTypes:
    - BT::Tree
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 106
    functionDepth: 3
    functionLinenumber: 106
    functionLinenumberEnd: 116
    functionName: requestBlackboardDump
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - Groot2Test::makePublisher
    - from_msgpack
    - to_string
    - std::runtime_error
    - Groot2Test::Client::request
    - auto::size
    linkageType: ''
    returnType: nlohmann::json
    signature: nlohmann::json requestBlackboardDump(const BT::Tree& tree, const std::string&
      bb_list)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Groot2Test::makePublisher
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:120,1
    - Dst: Groot2Test::Client::rawRequest
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:122,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:123,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:123,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:125,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:127,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 2
    argNames:
    - ' tree'
    - ' bb_list'
    argTypes:
    - BT::Tree
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 118
    functionDepth: 2
    functionLinenumber: 118
    functionLinenumberEnd: 128
    functionName: requestBlackboardDumpError
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - Groot2Test::makePublisher
    - to_string
    - Groot2Test::Client::rawRequest
    - std::runtime_error
    - auto::size
    linkageType: ''
    returnType: std::string
    signature: std::string requestBlackboardDumpError(const BT::Tree& tree, const
      std::string& bb_list)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:25,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:26,1
    - Dst: Groot2Test::makePublisher
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:33,1
    - Dst: Groot2Test::Client::rawRequest
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:36,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:37,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:37,1
    - Dst: std::exit
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:39,1
    - Dst: Groot2Test::Client::request
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:43,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:44,1
    - Dst: std::exit
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:46,1
    - Dst: std::exit
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:48,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 23
    functionDepth: 3
    functionLinenumber: 23
    functionLinenumberEnd: 49
    functionName: malformedRequestScenario
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - to_string
    - Groot2Test::Client::rawRequest
    - Groot2Test::makePublisher
    - Groot2Test::Client::request
    - std::exit
    - auto::size
    linkageType: ''
    returnType: void
    signature: void malformedRequestScenario()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:53,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:54,1
    - Dst: Groot2Test::makePublisher
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:61,1
    - Dst: Groot2Test::Client::rawRequest
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:66,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:67,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:67,1
    - Dst: std::exit
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:69,1
    - Dst: Groot2Test::Client::request
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:73,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:74,1
    - Dst: std::exit
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:76,1
    - Dst: std::exit
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:78,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 51
    functionDepth: 3
    functionLinenumber: 51
    functionLinenumberEnd: 79
    functionName: incompleteHookScenario
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - to_string
    - Groot2Test::Client::rawRequest
    - Groot2Test::makePublisher
    - Groot2Test::Client::request
    - std::exit
    - auto::size
    linkageType: ''
    returnType: void
    signature: void incompleteHookScenario()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' factory'
    - ' main_blackboard'
    argTypes:
    - BT::BehaviorTreeFactory
    - BT::Blackboard::Ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 104
    functionName: createTreeWithNamedSubtrees
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - createTreeFromText
    linkageType: ''
    returnType: BT::Tree
    signature: "BT::Tree createTreeWithNamedSubtrees(BT::BehaviorTreeFactory& factory,\n
      \                                    const BT::Blackboard::Ptr& main_blackboard)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Groot2Test::makePublisher
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:108,1
    - Dst: Groot2Test::Client::request
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:110,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:111,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:113,1
    - Dst: from_msgpack
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:115,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:115,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ' tree'
    - ' bb_list'
    argTypes:
    - BT::Tree
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 106
    functionDepth: 3
    functionLinenumber: 106
    functionLinenumberEnd: 116
    functionName: requestBlackboardDump
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - Groot2Test::makePublisher
    - from_msgpack
    - to_string
    - std::runtime_error
    - Groot2Test::Client::request
    - auto::size
    linkageType: ''
    returnType: nlohmann::json
    signature: nlohmann::json requestBlackboardDump(const BT::Tree& tree, const std::string&
      bb_list)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Groot2Test::makePublisher
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:120,1
    - Dst: Groot2Test::Client::rawRequest
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:122,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:123,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:123,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:125,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:127,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 2
    argNames:
    - ' tree'
    - ' bb_list'
    argTypes:
    - BT::Tree
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 118
    functionDepth: 2
    functionLinenumber: 118
    functionLinenumberEnd: 128
    functionName: requestBlackboardDumpError
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - Groot2Test::makePublisher
    - to_string
    - Groot2Test::Client::rawRequest
    - std::runtime_error
    - auto::size
    linkageType: ''
    returnType: std::string
    signature: std::string requestBlackboardDumpError(const BT::Tree& tree, const
      std::string& bb_list)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:134,1
    - Dst: BT::BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:135,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:139,1
    - Dst: Groot2Test::makePublisher
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:140,1
    - Dst: auto::rootNode
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:142,1
    - Dst: Groot2Test::makeHook
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:144,1
    - Dst: Groot2Test::Client::request
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:146,1
    - Dst: auto::dump
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:146,1
    - Dst: Groot2Test::Client::request
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:148,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:149,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:149,1
    - Dst: parser::parse
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:150,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:150,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:151,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:151,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:152,1
    - Dst: at
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:152,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:154,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:154,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:155,1
    - Dst: Groot2Test::Client::request
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:160,1
    - Dst: auto::dump
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:160,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:162,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:162,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 131
    functionDepth: 3
    functionLinenumber: 131
    functionLinenumberEnd: 164
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::dump
    - auto::tickExactlyOnce
    - BT::BehaviorTreeFactory::registerSimpleAction
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - auto::rootNode
    - ASSERT_EQ
    - EXPECT_EQ
    - Groot2Test::makeHook
    - to_string
    - Groot2Test::makePublisher
    - at
    - Groot2Test::Client::request
    - parser::parse
    - auto::size
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherIntegration, PostHookRunsAfterNodeAndCanBeRemoved)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EXIT
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:169,1
    - Dst: malformedRequestScenario
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:169,1
    - Dst: ::testing::ExitedWithCode
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 166
    functionDepth: 4
    functionLinenumber: 166
    functionLinenumberEnd: 170
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - malformedRequestScenario
    - EXPECT_EXIT
    - ::testing::ExitedWithCode
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherIntegration, MalformedRequestDoesNotTerminateServer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EXIT
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:175,1
    - Dst: incompleteHookScenario
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:175,1
    - Dst: ::testing::ExitedWithCode
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 172
    functionDepth: 4
    functionLinenumber: 172
    functionLinenumberEnd: 176
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - incompleteHookScenario
    - EXPECT_EXIT
    - ::testing::ExitedWithCode
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherIntegration, IncompleteHookRequestDoesNotTerminateServer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:180,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:181,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:188,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:189,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:190,1
    - Dst: requestBlackboardDump
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:192,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:193,1
    - Dst: auto::contains
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:193,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:194,1
    - Dst: auto::contains
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:194,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:196,1
    - Dst: contains
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:196,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:197,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 178
    functionDepth: 4
    functionLinenumber: 178
    functionLinenumberEnd: 198
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - get
    - EXPECT_FALSE
    - BT::BehaviorTreeFactory::createTree
    - auto::set
    - BT::Blackboard::create
    - requestBlackboardDump
    - auto::contains
    - EXPECT_EQ
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - ASSERT_TRUE
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - contains
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherIntegration, BlackboardDump_NoRootWithoutExternalBlackboard)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:202,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:203,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:210,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:211,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:213,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:214,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:215,1
    - Dst: requestBlackboardDump
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:217,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:218,1
    - Dst: auto::contains
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:218,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:219,1
    - Dst: auto::contains
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:219,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:221,1
    - Dst: contains
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:221,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:222,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:222,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:223,1
    - Dst: contains
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:223,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:225,1
    - Dst: contains
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:225,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:226,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:226,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:227,1
    - Dst: contains
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 200
    functionDepth: 4
    functionLinenumber: 200
    functionLinenumberEnd: 228
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - get
    - EXPECT_FALSE
    - BT::BehaviorTreeFactory::createTree
    - auto::set
    - BT::Blackboard::create
    - requestBlackboardDump
    - auto::contains
    - EXPECT_EQ
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - ASSERT_TRUE
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - contains
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherIntegration, BlackboardDump_ExportsExternalRootBlackboard)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:232,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:233,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:234,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:236,1
    - Dst: createTreeWithNamedSubtrees
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:237,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:238,1
    - Dst: auto::subtrees::size
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:238,1
    - Dst: requestBlackboardDump
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:240,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:241,1
    - Dst: auto::contains
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:241,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:242,1
    - Dst: auto::contains
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:242,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:243,1
    - Dst: auto::contains
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:243,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:244,1
    - Dst: auto::contains
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:244,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:245,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:245,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:247,1
    - Dst: contains
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:247,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:248,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 230
    functionDepth: 4
    functionLinenumber: 230
    functionLinenumberEnd: 249
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - get
    - auto::set
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - BT::Blackboard::create
    - requestBlackboardDump
    - auto::contains
    - ASSERT_EQ
    - EXPECT_EQ
    - auto::subtrees::size
    - ASSERT_TRUE
    - createTreeWithNamedSubtrees
    - contains
    - auto::size
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherIntegration, BlackboardDump_DeduplicatesSharedExternalRoot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:253,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:254,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:261,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:262,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:264,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:265,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:266,1
    - Dst: requestBlackboardDumpError
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:268,1
    - Dst: EXPECT_NE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:269,1
    - Dst: auto::find
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 251
    functionDepth: 3
    functionLinenumber: 251
    functionLinenumberEnd: 270
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - requestBlackboardDumpError
    - BT::BehaviorTreeFactory::createTree
    - auto::set
    - BT::Blackboard::create
    - auto::find
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - EXPECT_NE
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherIntegration, BlackboardDump_RejectsReservedRootNameCollision)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:274,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:275,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:276,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:278,1
    - Dst: createTreeWithNamedSubtrees
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:279,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:281,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:282,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:289,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:294,1
    - Dst: requestBlackboardDumpError
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:296,1
    - Dst: EXPECT_NE
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:297,1
    - Dst: auto::find
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp:297,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 272
    functionDepth: 3
    functionLinenumber: 272
    functionLinenumberEnd: 298
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
    functionUses: 0
    functionsReached:
    - requestBlackboardDumpError
    - auto::set
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - BT::Blackboard::create
    - auto::find
    - ASSERT_TRUE
    - createTreeWithNamedSubtrees
    - EXPECT_NE
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherIntegration, BlackboardDump_RejectsConflictingExternalRoots)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17
      start: 13
    functionDepth: 0
    functionLinenumber: 13
    functionLinenumberEnd: 17
    functionName: NodeWithPorts::NodeWithPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NodeWithPorts(const std::string& name, const NodeConfig& config)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:23,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:25,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:27,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:29,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 37
    functionName: NodeWithPorts::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - getInput
    - RuntimeError
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<int>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:41,1
    - Dst: BT::InputPort<int>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 43
    functionName: NodeWithPorts::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<int>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:53,1
    - Dst: NodeWithPorts::tick
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_ANY_THROW
    - NodeWithPorts::tick
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, WrongNodeConfig)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:66,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:67,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:68,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 70
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, DefaultPorts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:82,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:83,1
    - Dst: ASSERT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:84,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 85
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_ANY_THROW
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, MissingPort)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:97,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 100
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, WrongPort)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:120,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:122,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:123,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:125,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:128,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:131,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 132
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, Descriptions)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:145,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:147,1
    - Dst: auto::rootNode
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:149,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:150,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:151,1
    - Dst: TreeNode*::type
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:151,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:153,1
    - Dst: TreeNode*::config
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:153,1
    - Dst: size
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:153,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:154,1
    - Dst: TreeNode*::config
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:154,1
    - Dst: count
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:154,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:155,1
    - Dst: TreeNode*::config
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:155,1
    - Dst: at
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 134
    functionDepth: 1
    functionLinenumber: 134
    functionLinenumberEnd: 156
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - TreeNode*::type
    - count
    - auto::rootNode
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - EXPECT_EQ
    - size
    - at
    - TreeNode*::config
    - ASSERT_NE
    linkageType: ''
    returnType: void
    signature: void TEST(PortsTest, NonPorts)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 168
    functionName: NodeInPorts::NodeInPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NodeInPorts(const std::string& name, const NodeConfig& config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:174,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:174,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 179
    functionName: NodeInPorts::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - getInput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<int>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:183,1
    - Dst: BT::InputPort<MyType>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 184
    functionName: NodeInPorts::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<MyType>
    - BT::InputPort<int>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 192
    functionName: NodeOutPorts::NodeOutPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NodeOutPorts(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: NodeOutPorts::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::OutputPort<int>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:201,1
    - Dst: BT::OutputPort<MyType>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionName: NodeOutPorts::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::OutputPort<MyType>
    - BT::OutputPort<int>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:218,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:219,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:221,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:223,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 226
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, EmptyPort)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - states
    argTypes:
    - std::string
    - NodeConfig
    - std::vector<std::string>*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 234
    functionName: ActionVectorStringIn::ActionVectorStringIn
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ActionVectorStringIn(const std::string& name, const NodeConfig&
      config,\n                       std::vector<std::string>* states)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 236
    functionDepth: 0
    functionLinenumber: 236
    functionLinenumberEnd: 240
    functionName: ActionVectorStringIn::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - getInput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<std::vector<std::string>>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 245
    functionName: ActionVectorStringIn::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<std::vector<std::string>>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:263,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:265,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:266,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:268,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:270,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:271,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:271,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:272,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:273,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 275
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - std::vector::size
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, SubtreeStringInput_StringVector)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Point2D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 284
    functionName: operator==(const Point2D& other) const
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Point2D& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Point2D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 285
    functionDepth: 0
    functionLinenumber: 285
    functionLinenumberEnd: 288
    functionName: operator!=(const Point2D& other) const
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Point2D& other) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::StartWith
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:294,1
    - Dst: StringView::remove_prefix
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:296,1
    - Dst: BT::convertFromJSON
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:297,1
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:299,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:300,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:302,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:304,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:305,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 307
    functionName: BT::convertFromString<Point2D>(StringView str)
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::StartWith
    - throwRuntimeError
    - BT::convertFromString
    - BT::splitString
    - BT::convertFromJSON
    - StringView::remove_prefix
    - auto::size
    linkageType: ''
    returnType: Point2D
    signature: Point2D BT::convertFromString<Point2D>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:312,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:312,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' point'
    argTypes:
    - Point2D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 310
    functionDepth: 1
    functionLinenumber: 310
    functionLinenumberEnd: 313
    functionName: BT::toStr<Point2D>(const Point2D& point)
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - to_string
    linkageType: ''
    returnType: std::string
    signature: std::string BT::toStr<Point2D>(const Point2D& point)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:318,1
    - Dst: add_field
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 320
    functionName: BT_JSON_CONVERTER
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - add_field
    linkageType: ''
    returnType: void
    signature: void BT_JSON_CONVERTER(Point2D, point)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 327
      start: 325
    functionDepth: 0
    functionLinenumber: 325
    functionLinenumberEnd: 327
    functionName: DefaultTestAction::DefaultTestAction
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DefaultTestAction(const std::string& name, const NodeConfig& config)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getInput<int>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:331,1
    - Dst: getInput<std::string>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:337,1
    - Dst: getInput<Point2D>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:343,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 350
    functionName: DefaultTestAction::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - getInput<std::string>
    - getInput<int>
    - getInput<Point2D>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<int>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:354,1
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:355,1
    - Dst: BT::InputPort<Point2D>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:356,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 352
    functionDepth: 0
    functionLinenumber: 352
    functionLinenumberEnd: 357
    functionName: DefaultTestAction::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<Point2D>
    - BT::InputPort<std::string>
    - BT::InputPort<int>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:370,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:371,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:372,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:373,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 360
    functionDepth: 0
    functionLinenumber: 360
    functionLinenumberEnd: 374
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - auto::tickOnce
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    - ASSERT_EQ
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, DefaultInput)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 383
    functionName: NodeWithDefaultPoints::NodeWithDefaultPoints
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NodeWithDefaultPoints(const std::string& name, const NodeConfig&
      config)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:389,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:391,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:393,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:395,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:397,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:399,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:401,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:403,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:405,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:407,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:409,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:411,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 385
    functionDepth: 0
    functionLinenumber: 385
    functionLinenumberEnd: 414
    functionName: NodeWithDefaultPoints::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - getInput
    - std::runtime_error
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<Point2D>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:418,1
    - Dst: BT::InputPort<Point2D>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:419,1
    - Dst: BT::InputPort<Point2D>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:420,1
    - Dst: BT::InputPort<Point2D>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:422,1
    - Dst: BT::InputPort<Point2D>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:423,1
    - Dst: BT::InputPort<Point2D>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:425,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 427
    functionName: NodeWithDefaultPoints::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<Point2D>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:439,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:442,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:443,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:445,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:445,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:446,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:446,1
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:449,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:449,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:450,1
    - Dst: writeTreeNodesModelXML
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:452,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 453
      start: 430
    functionDepth: 1
    functionLinenumber: 430
    functionLinenumberEnd: 453
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::subtrees::front
    - set
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - writeTreeNodesModelXML
    - auto::tickOnce
    - BT::Blackboard::get
    - ASSERT_NO_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, DefaultInputPoint2D)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 458
    functionDepth: 0
    functionLinenumber: 458
    functionLinenumberEnd: 460
    functionName: NodeWithDefaultStrings::NodeWithDefaultStrings
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NodeWithDefaultStrings(const std::string& name, const NodeConfig&
      config)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:465,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:467,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:469,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:471,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:473,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:475,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:477,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:479,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 482
      start: 462
    functionDepth: 0
    functionLinenumber: 462
    functionLinenumberEnd: 482
    functionName: NodeWithDefaultStrings::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - getInput
    - std::runtime_error
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:486,1
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:487,1
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:488,1
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:490,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 484
    functionDepth: 0
    functionLinenumber: 484
    functionLinenumberEnd: 492
    functionName: NodeWithDefaultStrings::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<std::string>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:505,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:506,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:508,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:508,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:509,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:509,1
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:512,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:512,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:513,1
    - Dst: writeTreeNodesModelXML
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:515,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 495
    functionDepth: 1
    functionLinenumber: 495
    functionLinenumberEnd: 516
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::subtrees::front
    - set
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - writeTreeNodesModelXML
    - auto::tickOnce
    - ASSERT_NO_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, DefaultInputStrings)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 528
    functionDepth: 0
    functionLinenumber: 528
    functionLinenumberEnd: 530
    functionName: NodeWithDefaultNullptr::NodeWithDefaultNullptr
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NodeWithDefaultNullptr(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 532
    functionDepth: 0
    functionLinenumber: 532
    functionLinenumberEnd: 535
    functionName: NodeWithDefaultNullptr::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<std::shared_ptr<TestStruct>>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:539,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 537
    functionDepth: 0
    functionLinenumber: 537
    functionLinenumberEnd: 541
    functionName: NodeWithDefaultNullptr::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<std::shared_ptr<TestStruct>>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::optional<Point2D>>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:548,1
    - Dst: InputPort<std::optional<std::string>>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:550,1
    - Dst: InputPort<std::shared_ptr<Point2D>>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:554,1
    - Dst: InputPort<std::shared_ptr<std::string>>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:555,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 544
    functionDepth: 0
    functionLinenumber: 544
    functionLinenumberEnd: 557
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - InputPort<std::optional<Point2D>>
    - InputPort<std::shared_ptr<Point2D>>
    - InputPort<std::shared_ptr<std::string>>
    - InputPort<std::optional<std::string>>
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, Default_Issues_767)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:561,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:562,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:581,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:583,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 559
    functionDepth: 1
    functionLinenumber: 559
    functionLinenumberEnd: 584
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::registerNodeType
    - BT::BehaviorTreeFactory::createTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, DefaultWronglyOverriden)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 591
    functionDepth: 0
    functionLinenumber: 591
    functionLinenumberEnd: 593
    functionName: ActionWithDefaultPort::ActionWithDefaultPort
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ActionWithDefaultPort(const std::string& name, const NodeConfig&
      config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<std::string>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:597,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:600,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:600,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:602,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 595
    functionDepth: 1
    functionLinenumber: 595
    functionLinenumberEnd: 604
    functionName: ActionWithDefaultPort::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - auto::value
    - auto::error
    - getInput<std::string>
    - RuntimeError
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:608,1
    - Dst: InputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:609,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 610
      start: 606
    functionDepth: 0
    functionLinenumber: 606
    functionLinenumberEnd: 610
    functionName: ActionWithDefaultPort::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - InputPort<std::string>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:626,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:627,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:628,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:630,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:632,1
    - Dst: dynamic_cast<ActionWithDefaultPort*>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:634,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:634,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:636,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 639
      start: 615
    functionDepth: 1
    functionLinenumber: 615
    functionLinenumberEnd: 639
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - get
    - BehaviorTreeFactory::createTreeFromText
    - auto::subtrees::front
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - dynamic_cast<ActionWithDefaultPort*>
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, GetInputDefaultValue_Issue858)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - collected
    argTypes:
    - std::string
    - NodeConfig
    - std::vector<double>*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 648
      start: 645
    functionDepth: 0
    functionLinenumber: 645
    functionLinenumberEnd: 648
    functionName: CollectDoubleAction::CollectDoubleAction
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void CollectDoubleAction(const std::string& name, const NodeConfig&
      config,\n                      std::vector<double>* collected)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:653,1
    - Dst: push_back
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:655,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 659
      start: 650
    functionDepth: 1
    functionLinenumber: 650
    functionLinenumberEnd: 659
    functionName: CollectDoubleAction::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - getInput
    - push_back
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<double>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:663,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 661
    functionDepth: 0
    functionLinenumber: 661
    functionLinenumberEnd: 664
    functionName: CollectDoubleAction::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<double>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 678
      start: 676
    functionDepth: 0
    functionLinenumber: 676
    functionLinenumberEnd: 678
    functionName: ProduceVectorDoubleAction::ProduceVectorDoubleAction
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ProduceVectorDoubleAction(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:683,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 685
      start: 680
    functionDepth: 0
    functionLinenumber: 680
    functionLinenumberEnd: 685
    functionName: ProduceVectorDoubleAction::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::OutputPort<std::vector<double>>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:689,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 687
    functionDepth: 0
    functionLinenumber: 687
    functionLinenumberEnd: 690
    functionName: ProduceVectorDoubleAction::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::OutputPort<std::vector<double>>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:713,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:714,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:715,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:716,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:718,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:719,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:719,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:720,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:721,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:722,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 693
    functionDepth: 1
    functionLinenumber: 693
    functionLinenumberEnd: 723
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - EXPECT_DOUBLE_EQ
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - std::vector::size
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, LoopNodeAcceptsVector_Issue969)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - out_vec
    argTypes:
    - std::string
    - NodeConfig
    - std::vector<std::string>*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 732
    functionDepth: 0
    functionLinenumber: 732
    functionLinenumberEnd: 735
    functionName: ActionWithDefaultEmptyVector::ActionWithDefaultEmptyVector
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void ActionWithDefaultEmptyVector(const std::string& name, const NodeConfig&
      config,\n                               std::vector<std::string>* out_vec)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:739,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 744
      start: 737
    functionDepth: 0
    functionLinenumber: 737
    functionLinenumberEnd: 744
    functionName: ActionWithDefaultEmptyVector::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - getInput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<std::vector<std::string>>
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:748,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 750
      start: 746
    functionDepth: 0
    functionLinenumber: 746
    functionLinenumberEnd: 750
    functionName: ActionWithDefaultEmptyVector::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<std::vector<std::string>>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:771,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:773,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:774,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:776,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:777,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:777,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:777,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:779,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 756
    functionDepth: 1
    functionLinenumber: 756
    functionLinenumberEnd: 780
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - ASSERT_TRUE
    - std::vector::empty
    - std::vector::size
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, DefaultEmptyVector_Issue982)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' p'
    - ' j'
    argTypes:
    - TestPoint989
    - nlohmann::json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 797
      start: 793
    functionDepth: 0
    functionLinenumber: 793
    functionLinenumberEnd: 797
    functionName: TestPoint989ToJson
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TestPoint989ToJson(const TestPoint989& p, nlohmann::json& j)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:801,1
    - Dst: at
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:802,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' j'
    - ' p'
    argTypes:
    - nlohmann::json
    - TestPoint989
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 803
      start: 799
    functionDepth: 1
    functionLinenumber: 799
    functionLinenumberEnd: 803
    functionName: TestPoint989FromJson
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: void
    signature: void TestPoint989FromJson(const nlohmann::json& j, TestPoint989& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' p'
    - ' j'
    argTypes:
    - TestPoint989
    - nlohmann::json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 797
      start: 793
    functionDepth: 0
    functionLinenumber: 793
    functionLinenumberEnd: 797
    functionName: TestPoint989ToJson
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TestPoint989ToJson(const TestPoint989& p, nlohmann::json& j)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:801,1
    - Dst: at
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:802,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' j'
    - ' p'
    argTypes:
    - nlohmann::json
    - TestPoint989
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 803
      start: 799
    functionDepth: 1
    functionLinenumber: 799
    functionLinenumberEnd: 803
    functionName: TestPoint989FromJson
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: void
    signature: void TestPoint989FromJson(const nlohmann::json& j, TestPoint989& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:808,1
    - Dst: addConverter
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:809,1
    - Dst: addConverter
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:810,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:816,1
    - Dst: toJson
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:816,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:817,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:817,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:818,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:818,1
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:826,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:826,1
    - Dst: toJson
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:826,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:827,1
    - Dst: nlohmann::json::size
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:827,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:828,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:828,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:829,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:829,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:830,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:830,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:831,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:831,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 833
      start: 806
    functionDepth: 1
    functionLinenumber: 806
    functionLinenumberEnd: 833
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - addConverter
    - get
    - toJson
    - EXPECT_DOUBLE_EQ
    - ASSERT_EQ
    - nlohmann::json::size
    - ASSERT_TRUE
    - BT::Blackboard::get
    - ASSERT_NO_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, JsonExporterVectorConverter_Issue989)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:860,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:861,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:863,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:864,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:866,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:867,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:867,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:868,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:869,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:870,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 871
      start: 839
    functionDepth: 1
    functionLinenumber: 839
    functionLinenumberEnd: 871
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - EXPECT_DOUBLE_EQ
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - std::vector::size
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, SubtreeStringLiteralToLoopDouble_Issue1065)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::data
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:879,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:879,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:880,1
    - Dst: BT::TreeNode::isBlackboardPointer
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:880,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:884,1
    - Dst: BT::TreeNode::isBlackboardPointer
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:884,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:885,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:886,1
    - Dst: BT::TreeNode::isBlackboardPointer
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:886,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:887,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:888,1
    - Dst: BT::TreeNode::isBlackboardPointer
      Src: /src/behaviortreecpp/tests/gtest_ports.cpp:888,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 889
      start: 873
    functionDepth: 1
    functionLinenumber: 873
    functionLinenumberEnd: 889
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_ports.cpp
    functionUses: 0
    functionsReached:
    - std::vector::data
    - EXPECT_FALSE
    - EXPECT_TRUE
    - EXPECT_EQ
    - BT::TreeNode::isBlackboardPointer
    - std::vector::size
    linkageType: ''
    returnType: void
    signature: void TEST(PortTest, IsBlackboardPointerAllWhitespaceView)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:27,1
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:28,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:31,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:34,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:34,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:49,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:50,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:52,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:53,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:53,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:54,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:55,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:56,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:57,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 59
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loop.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - auto::value
    - ASSERT_EQ
    - getInput
    - EXPECT_EQ
    - BehaviorTreeFactory::registerSimpleAction
    - std::vector::size
    - std::vector::push_back
    - InputPort<int>
    linkageType: ''
    returnType: void
    signature: void TEST(LoopNode, StaticIntQueue)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<double>
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:66,1
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:67,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:70,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:73,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:73,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:88,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:89,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:91,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:92,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:92,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:93,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:94,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 96
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loop.cpp
    functionUses: 0
    functionsReached:
    - InputPort<double>
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - EXPECT_DOUBLE_EQ
    - auto::value
    - ASSERT_EQ
    - getInput
    - BehaviorTreeFactory::registerSimpleAction
    - std::vector::size
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: void TEST(LoopNode, StaticDoubleQueue)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:103,1
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:104,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:107,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:110,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:110,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:125,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:126,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:128,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:129,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:129,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:130,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:131,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:132,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 133
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loop.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - auto::value
    - ASSERT_EQ
    - getInput
    - EXPECT_EQ
    - InputPort<std::string>
    - BehaviorTreeFactory::registerSimpleAction
    - std::vector::size
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: void TEST(LoopNode, StaticStringQueue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:142,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:156,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:157,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:159,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:160,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 161
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loop.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - BehaviorTreeFactory::registerSimpleAction
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(LoopNode, EmptyQueue_ReturnsSuccess)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:168,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:182,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:183,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:185,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 187
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loop.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - BehaviorTreeFactory::registerSimpleAction
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(LoopNode, EmptyQueue_ReturnsFailure)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:194,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:208,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:209,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:211,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 189
    functionDepth: 0
    functionLinenumber: 189
    functionLinenumberEnd: 213
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loop.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - BehaviorTreeFactory::registerSimpleAction
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(LoopNode, EmptyQueue_ReturnsSkipped)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:222,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:240,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:241,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:243,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:244,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 245
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loop.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - BehaviorTreeFactory::registerSimpleAction
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(LoopNode, ChildFailure_StopsLoop)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:254,1
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:255,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:258,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:261,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:261,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:276,1
    - Dst: std::make_shared<std::deque<int>>
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:279,1
    - Dst: auto::push_back
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:280,1
    - Dst: auto::push_back
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:281,1
    - Dst: auto::push_back
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:282,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:283,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:285,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:287,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:288,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:288,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:289,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:290,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 249
    functionDepth: 1
    functionLinenumber: 249
    functionLinenumberEnd: 292
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loop.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<std::deque<int>>
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - auto::value
    - auto::push_back
    - getInput
    - ASSERT_EQ
    - EXPECT_EQ
    - BehaviorTreeFactory::registerSimpleAction
    - auto::rootBlackboard
    - std::vector::size
    - std::vector::push_back
    - InputPort<int>
    linkageType: ''
    returnType: void
    signature: void TEST(LoopNode, DynamicQueueFromBlackboard)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:301,1
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:302,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:305,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:308,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:308,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:323,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:327,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:329,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:331,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:332,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:332,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:333,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:334,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:335,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 336
      start: 296
    functionDepth: 1
    functionLinenumber: 296
    functionLinenumberEnd: 336
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loop.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - auto::value
    - ASSERT_EQ
    - getInput
    - EXPECT_EQ
    - BehaviorTreeFactory::registerSimpleAction
    - auto::rootBlackboard
    - std::vector::size
    - std::vector::push_back
    - InputPort<int>
    linkageType: ''
    returnType: void
    signature: void TEST(LoopNode, VectorInput_Issue969)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<bool>
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:345,1
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:346,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:349,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:352,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:352,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:367,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:368,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:370,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:371,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:371,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:372,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:373,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:374,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 340
    functionDepth: 1
    functionLinenumber: 340
    functionLinenumberEnd: 375
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loop.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - InputPort<bool>
    - EXPECT_FALSE
    - auto::tickWhileRunning
    - auto::value
    - EXPECT_TRUE
    - ASSERT_EQ
    - getInput
    - BehaviorTreeFactory::registerSimpleAction
    - std::vector::size
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: void TEST(LoopNode, BoolQueue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:384,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:398,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:401,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:402,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:403,1
    - Dst: auto::haltTree
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:406,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:408,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:409,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:410,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 411
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loop.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::haltTree
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerSimpleAction
    linkageType: ''
    returnType: void
    signature: void TEST(LoopNode, RestartAfterCompletion)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:418,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:432,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:433,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:436,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:437,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:438,1
    - Dst: auto::haltTree
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:441,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:443,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:444,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:445,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:446,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 413
    functionDepth: 0
    functionLinenumber: 413
    functionLinenumberEnd: 447
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loop.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::haltTree
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerSimpleAction
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(LoopNode, RestartAfterCompletion_VectorFromBlackboard)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: convertFromString<SharedQueue<int>>
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:453,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:454,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:455,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:455,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:456,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:456,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:457,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:457,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 458
      start: 451
    functionDepth: 1
    functionLinenumber: 451
    functionLinenumberEnd: 458
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loop.cpp
    functionUses: 0
    functionsReached:
    - auto::at
    - EXPECT_EQ
    - ASSERT_EQ
    - convertFromString<SharedQueue<int>>
    - ASSERT_NE
    - auto::size
    linkageType: ''
    returnType: void
    signature: void TEST(LoopNode, ConvertFromString_Int)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: convertFromString<SharedQueue<double>>
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:462,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:463,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:464,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:464,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:465,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:465,1
    - Dst: EXPECT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:466,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:466,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 460
    functionDepth: 1
    functionLinenumber: 460
    functionLinenumberEnd: 467
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loop.cpp
    functionUses: 0
    functionsReached:
    - auto::at
    - convertFromString<SharedQueue<double>>
    - EXPECT_DOUBLE_EQ
    - ASSERT_EQ
    - ASSERT_NE
    - auto::size
    linkageType: ''
    returnType: void
    signature: void TEST(LoopNode, ConvertFromString_Double)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: convertFromString<SharedQueue<bool>>
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:471,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:472,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:473,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:473,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:474,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:474,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:475,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:475,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 476
      start: 469
    functionDepth: 1
    functionLinenumber: 469
    functionLinenumberEnd: 476
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loop.cpp
    functionUses: 0
    functionsReached:
    - auto::at
    - EXPECT_FALSE
    - EXPECT_TRUE
    - ASSERT_EQ
    - convertFromString<SharedQueue<bool>>
    - ASSERT_NE
    - auto::size
    linkageType: ''
    returnType: void
    signature: void TEST(LoopNode, ConvertFromString_Bool)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: convertFromString<SharedQueue<std::string>>
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:480,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:481,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:482,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:482,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:483,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:483,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:484,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:484,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:485,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/tests/gtest_loop.cpp:485,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 486
      start: 478
    functionDepth: 1
    functionLinenumber: 478
    functionLinenumberEnd: 486
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loop.cpp
    functionUses: 0
    functionsReached:
    - convertFromString<SharedQueue<std::string>>
    - auto::at
    - EXPECT_EQ
    - ASSERT_EQ
    - ASSERT_NE
    - auto::size
    linkageType: ''
    returnType: void
    signature: void TEST(LoopNode, ConvertFromString_String)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 31
    functionName: ThrowingAction::ThrowingAction
    functionSourceFile: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ThrowingAction(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:35,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionName: ThrowingAction::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp
    functionUses: 0
    functionsReached:
    - std::runtime_error
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: ThrowingAction::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: SucceedingAction::SucceedingAction
    functionSourceFile: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SucceedingAction(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: SucceedingAction::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: SucceedingAction::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:75,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:77,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:81,1
    - Dst: FAIL
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:82,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:87,1
    - Dst: failedNode
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:87,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:88,1
    - Dst: failedNode
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:88,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:89,1
    - Dst: originalMessage
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 91
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - failedNode
    - FAIL
    - EXPECT_EQ
    - BehaviorTreeFactory::registerNodeType
    - originalMessage
    - auto::tickOnce
    linkageType: ''
    returnType: void
    signature: void TEST(ExceptionTracking, BasicExceptionCapture)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:111,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:112,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:114,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:118,1
    - Dst: FAIL
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:119,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:124,1
    - Dst: failedNode
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:124,1
    - Dst: what
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:127,1
    - Dst: EXPECT_NE
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:128,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:128,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 93
    functionDepth: 1
    functionLinenumber: 93
    functionLinenumberEnd: 130
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - failedNode
    - FAIL
    - EXPECT_EQ
    - std::string::find
    - BehaviorTreeFactory::registerNodeType
    - auto::tickOnce
    - what
    - EXPECT_NE
    linkageType: ''
    returnType: void
    signature: void TEST(ExceptionTracking, NestedExceptionBacktrace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:151,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:153,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:157,1
    - Dst: FAIL
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:158,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:163,1
    - Dst: failedNode
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:163,1
    - Dst: failedNode
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:166,1
    - Dst: EXPECT_NE
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:167,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:167,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 169
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - failedNode
    - FAIL
    - EXPECT_EQ
    - std::string::find
    - BehaviorTreeFactory::registerNodeType
    - auto::tickOnce
    - EXPECT_NE
    linkageType: ''
    returnType: void
    signature: void TEST(ExceptionTracking, SubtreeExceptionBacktrace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:186,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:188,1
    - Dst: EXPECT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:191,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:192,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 195
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - EXPECT_EQ
    - EXPECT_NO_THROW
    - BehaviorTreeFactory::registerNodeType
    - auto::tickOnce
    linkageType: ''
    returnType: void
    signature: void TEST(ExceptionTracking, NoExceptionNoWrapping)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:209,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:211,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:215,1
    - Dst: FAIL
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:216,1
    - Dst: failedNode
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:220,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:222,1
    - Dst: node_name::empty
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:222,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:223,1
    - Dst: node_path::empty
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:223,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:224,1
    - Dst: registration_name::empty
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:224,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:226,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp:227,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 197
    functionDepth: 1
    functionLinenumber: 197
    functionLinenumberEnd: 229
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - EXPECT_FALSE
    - failedNode
    - FAIL
    - EXPECT_EQ
    - BehaviorTreeFactory::registerNodeType
    - node_name::empty
    - node_path::empty
    - registration_name::empty
    - auto::tickOnce
    linkageType: ''
    returnType: void
    signature: void TEST(ExceptionTracking, BacktraceEntryContents)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:27,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:28,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:29,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 30
    functionName: spinUntilDone
    functionSourceFile: /src/behaviortreecpp/tests/gtest_async_action_node.cpp
    functionUses: 0
    functionsReached:
    - status
    - executeTick
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus spinUntilDone()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: MockedThreadedActionFixture
    functionSourceFile: /src/behaviortreecpp/tests/gtest_async_action_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MockedThreadedActionFixture()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetParam
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:59,1
    - Dst: EXPECT_CALL
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:62,1
    - Dst: tick
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:62,1
    - Dst: testing::Invoke
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:62,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:63,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:63,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:68,1
    - Dst: spinUntilDone
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 69
    functionName: TEST_P
    functionSourceFile: /src/behaviortreecpp/tests/gtest_async_action_node.cpp
    functionUses: 0
    functionsReached:
    - tick
    - EXPECT_CALL
    - ASSERT_EQ
    - std::this_thread::sleep_for
    - spinUntilDone
    - testing::Invoke
    - std::chrono::milliseconds
    - GetParam
    linkageType: ''
    returnType: void
    signature: void TEST_P(NodeStatusFixture, normal_routine)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: halt
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:75,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:76,1
    - Dst: isHaltRequested
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:76,1
    - Dst: EXPECT_CALL
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:80,1
    - Dst: tick
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:80,1
    - Dst: testing::Return
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:80,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:83,1
    - Dst: spinUntilDone
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:83,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:84,1
    - Dst: isHaltRequested
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 85
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_async_action_node.cpp
    functionUses: 0
    functionsReached:
    - tick
    - EXPECT_CALL
    - ASSERT_EQ
    - isHaltRequested
    - testing::Return
    - spinUntilDone
    - ASSERT_FALSE
    - ASSERT_TRUE
    - halt
    linkageType: ''
    returnType: void
    signature: void TEST_F(MockedThreadedActionFixture, no_halt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_CALL
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:95,1
    - Dst: tick
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:95,1
    - Dst: testing::Invoke
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:95,1
    - Dst: std::condition_variable::wait
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:99,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:105,1
    - Dst: std::async
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:108,1
    - Dst: halt
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:108,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:109,1
    - Dst: std::future::wait_for
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:109,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:109,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:110,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:110,1
    - Dst: std::condition_variable::notify_one
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:116,1
    - Dst: std::future::wait
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:120,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:121,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 122
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_async_action_node.cpp
    functionUses: 0
    functionsReached:
    - tick
    - EXPECT_CALL
    - ASSERT_EQ
    - status
    - std::future::wait
    - std::condition_variable::wait
    - testing::Invoke
    - std::condition_variable::notify_one
    - executeTick
    - std::future::wait_for
    - std::chrono::milliseconds
    - halt
    - std::async
    linkageType: ''
    returnType: void
    signature: void TEST_F(MockedThreadedActionFixture, halt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_CALL
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:130,1
    - Dst: tick
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:130,1
    - Dst: testing::Invoke
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:130,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:131,1
    - Dst: ASSERT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:135,1
    - Dst: spinUntilDone
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:135,1
    - Dst: testing::Mock::VerifyAndClearExpectations
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:136,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:139,1
    - Dst: EXPECT_CALL
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:141,1
    - Dst: tick
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:141,1
    - Dst: testing::Return
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:141,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:142,1
    - Dst: spinUntilDone
      Src: /src/behaviortreecpp/tests/gtest_async_action_node.cpp:142,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 143
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_async_action_node.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_ANY_THROW
    - tick
    - testing::Mock::VerifyAndClearExpectations
    - EXPECT_CALL
    - setStatus
    - ASSERT_EQ
    - spinUntilDone
    - testing::Return
    - testing::Invoke
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void TEST_F(MockedThreadedActionFixture, exception)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:35,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:46,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:47,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:48,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:49,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:50,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:51,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 31
    functionDepth: 2
    functionLinenumber: 31
    functionLinenumberEnd: 53
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_updates.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - EXPECT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void TEST(EntryUpdates, NoEntry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:59,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:71,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:72,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:73,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:74,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:75,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:76,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 55
    functionDepth: 2
    functionLinenumber: 55
    functionLinenumberEnd: 78
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_updates.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - EXPECT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void TEST(EntryUpdates, Initialized)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:84,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:98,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:99,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:100,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:101,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:102,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:103,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 105
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_updates.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - EXPECT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void TEST(EntryUpdates, UpdateOnce)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:111,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:125,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:126,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:127,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:128,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:129,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:130,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_updates.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 107
    functionDepth: 2
    functionLinenumber: 107
    functionLinenumberEnd: 132
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_updates.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - EXPECT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void TEST(EntryUpdates, UpdateTwice)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13
      start: 11
    functionDepth: 0
    functionLinenumber: 11
    functionLinenumberEnd: 13
    functionName: FastAction::FastAction
    functionSourceFile: /src/behaviortreecpp/tests/gtest_wakeup.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FastAction(const std::string& name, const BT::NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18
      start: 15
    functionDepth: 0
    functionLinenumber: 15
    functionLinenumberEnd: 18
    functionName: FastAction::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_wakeup.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_wakeup.cpp:22,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_wakeup.cpp:22,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 24
    functionName: FastAction::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_wakeup.cpp
    functionUses: 0
    functionsReached:
    - std::this_thread::sleep_for
    - std::chrono::milliseconds
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_wakeup.cpp:38,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_wakeup.cpp:40,1
    - Dst: steady_clock::now
      Src: /src/behaviortreecpp/tests/gtest_wakeup.cpp:44,1
    - Dst: Tree::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_wakeup.cpp:45,1
    - Dst: Tree::sleep
      Src: /src/behaviortreecpp/tests/gtest_wakeup.cpp:46,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_wakeup.cpp:46,1
    - Dst: steady_clock::now
      Src: /src/behaviortreecpp/tests/gtest_wakeup.cpp:47,1
    - Dst: duration_cast<milliseconds>
      Src: /src/behaviortreecpp/tests/gtest_wakeup.cpp:49,1
    - Dst: ASSERT_LT
      Src: /src/behaviortreecpp/tests/gtest_wakeup.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 56
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_wakeup.cpp
    functionUses: 0
    functionsReached:
    - Tree::tickOnce
    - BehaviorTreeFactory::createTreeFromText
    - steady_clock::now
    - ASSERT_LT
    - BehaviorTreeFactory::registerNodeType
    - milliseconds
    - Tree::sleep
    - duration_cast<milliseconds>
    linkageType: ''
    returnType: void
    signature: void TEST(WakeUp, BasicTest)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:115,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:115,1
    - Dst: ASSERT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:116,1
    - Dst: std::make_shared<BT::Tree>
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:116,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 117
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_ANY_THROW
    - BehaviorTreeFactory::createTreeFromText
    - std::make_shared<BT::Tree>
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, NotRegisteredNode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CrossDoor::registerNodes
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:123,1
    - Dst: XMLParser::loadFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:127,1
    - Dst: XMLParser::registeredBehaviorTrees
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:128,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:129,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:130,1
    - Dst: XMLParser::loadFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:134,1
    - Dst: XMLParser::loadFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:135,1
    - Dst: XMLParser::registeredBehaviorTrees
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:136,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:137,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:138,1
    - Dst: XMLParser::loadFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:142,1
    - Dst: XMLParser::loadFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:143,1
    - Dst: XMLParser::registeredBehaviorTrees
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:144,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:145,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:146,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 119
    functionDepth: 1
    functionLinenumber: 119
    functionLinenumberEnd: 148
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - XMLParser::loadFromText
    - XMLParser::registeredBehaviorTrees
    - CrossDoor::registerNodes
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, XMLParsingOrder)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CrossDoor::registerNodes
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:154,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:156,1
    - Dst: printTreeRecursively
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:158,1
    - Dst: Tree::rootNode
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:158,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:160,1
    - Dst: Tree::subtrees::size
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:160,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:165,1
    - Dst: nodes::size
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:165,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:166,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:166,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:167,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:167,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:168,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:168,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:169,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:169,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:170,1
    - Dst: type
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:170,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:171,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:171,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:173,1
    - Dst: nodes::size
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:173,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:174,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:174,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:175,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:175,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:176,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:176,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:177,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:177,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:178,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 179
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - name
    - CrossDoor::registerNodes
    - printTreeRecursively
    - Tree::rootNode
    - nodes::size
    - type
    - Tree::subtrees::size
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, Subtree)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:192,1
    - Dst: XMLParser::loadFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 193
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - XMLParser::loadFromText
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, Issue7)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:230,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:232,1
    - Dst: Tree::subtrees::at
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:234,1
    - Dst: Tree::subtrees::at
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:235,1
    - Dst: auto::debugMessage
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:238,1
    - Dst: auto::debugMessage
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:240,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:244,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:246,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:246,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:246,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:247,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:247,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:247,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:248,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:248,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:248,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:250,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:250,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:250,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:251,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:251,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:251,1
    - Dst: auto::debugMessage
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:254,1
    - Dst: auto::debugMessage
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:256,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:259,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:259,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:259,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:260,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:260,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:260,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:261,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:261,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:261,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:263,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:263,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:263,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:264,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:264,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:264,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:265,1
    - Dst: auto::entryInfo
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:265,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:265,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:267,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:267,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:268,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:268,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:269,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:269,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:272,1
    - Dst: auto::getAnyLocked
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:272,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:273,1
    - Dst: auto::getAnyLocked
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:273,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:274,1
    - Dst: auto::getAnyLocked
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 227
    functionDepth: 1
    functionLinenumber: 227
    functionLinenumberEnd: 275
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - Tree::tickWhileRunning
    - BehaviorTreeFactory::createTreeFromText
    - auto::entryInfo
    - typeid
    - ASSERT_EQ
    - auto::debugMessage
    - BehaviorTreeFactory::registerNodeType
    - ASSERT_FALSE
    - auto::get
    - Tree::subtrees::at
    - auto::getAnyLocked
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, SubTreeWithRemapping)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::filesystem::current_path
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:284,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:289,1
    - Dst: string
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:291,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' relative_path'
    argTypes:
    - std::filesystem::path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 295
    functionName: FilePath
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - std::filesystem::current_path
    - std::filesystem::exists
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string FilePath(const std::filesystem::path& relative_path)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::filesystem::current_path
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:284,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:289,1
    - Dst: string
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:291,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' relative_path'
    argTypes:
    - std::filesystem::path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 295
      start: 279
    functionDepth: 1
    functionLinenumber: 279
    functionLinenumberEnd: 295
    functionName: FilePath
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - std::filesystem::current_path
    - std::filesystem::exists
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string FilePath(const std::filesystem::path& relative_path)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FilePath
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:303,1
    - Dst: BehaviorTreeFactory::createTreeFromFile
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:304,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:305,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:305,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 298
    functionDepth: 2
    functionLinenumber: 298
    functionLinenumberEnd: 306
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - FilePath
    - BehaviorTreeFactory::createTreeFromFile
    - ASSERT_EQ
    - Tree::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, CreateTreeFromFile)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FilePath
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:313,1
    - Dst: BehaviorTreeFactory::createTreeFromFile
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:314,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:315,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:315,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 316
      start: 308
    functionDepth: 2
    functionLinenumber: 308
    functionLinenumberEnd: 316
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - FilePath
    - BehaviorTreeFactory::createTreeFromFile
    - ASSERT_EQ
    - Tree::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, CreateTreeFromFileWhichIncludesFileFromSameDirectory)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FilePath
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:323,1
    - Dst: BehaviorTreeFactory::createTreeFromFile
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:324,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:325,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 318
    functionDepth: 2
    functionLinenumber: 318
    functionLinenumberEnd: 326
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - FilePath
    - BehaviorTreeFactory::createTreeFromFile
    - ASSERT_EQ
    - Tree::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, CreateTreeFromFileWhichIncludesFileFromChildDirectory)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FilePath
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:335,1
    - Dst: BehaviorTreeFactory::createTreeFromFile
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:336,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:337,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 328
    functionDepth: 2
    functionLinenumber: 328
    functionLinenumberEnd: 338
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - FilePath
    - BehaviorTreeFactory::createTreeFromFile
    - ASSERT_EQ
    - Tree::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: "void TEST(\n    BehaviorTreeFactory,\n    CreateTreeFromFileWhichIncludesFileFromChildDirectoryWhichIncludesFileFromSameDirectory)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FilePath
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:347,1
    - Dst: BehaviorTreeFactory::createTreeFromFile
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:348,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:349,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:349,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 350
      start: 340
    functionDepth: 2
    functionLinenumber: 340
    functionLinenumberEnd: 350
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - FilePath
    - BehaviorTreeFactory::createTreeFromFile
    - ASSERT_EQ
    - Tree::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: "void TEST(\n    BehaviorTreeFactory,\n    CreateTreeFromFileWhichIncludesFileFromChildDirectoryWhichIncludesFileFromChildDirectory)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FilePath
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:359,1
    - Dst: BehaviorTreeFactory::createTreeFromFile
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:360,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:361,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:361,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 352
    functionDepth: 2
    functionLinenumber: 352
    functionLinenumberEnd: 362
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - FilePath
    - BehaviorTreeFactory::createTreeFromFile
    - ASSERT_EQ
    - Tree::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: "void TEST(\n    BehaviorTreeFactory,\n    CreateTreeFromFileWhichIncludesFileFromChildDirectoryWhichIncludesFileFromParentDirectory)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:375,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:376,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 364
    functionDepth: 0
    functionLinenumber: 364
    functionLinenumberEnd: 377
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTree
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, WrongTreeName)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:397,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:399,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:400,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:400,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:403,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:405,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:406,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:406,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 408
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTree
    - ASSERT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeReload, ReloadSameTree)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair<std::string, std::string>
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:415,1
    - Dst: std::make_pair<std::string, std::string>
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:416,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 412
    functionDepth: 0
    functionLinenumber: 412
    functionLinenumberEnd: 418
    functionName: makeTestMetadata
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - std::make_pair<std::string, std::string>
    linkageType: ''
    returnType: KeyValueVector
    signature: KeyValueVector makeTestMetadata()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair<std::string, std::string>
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:415,1
    - Dst: std::make_pair<std::string, std::string>
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:416,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 412
    functionDepth: 0
    functionLinenumber: 412
    functionLinenumberEnd: 418
    functionName: makeTestMetadata
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - std::make_pair<std::string, std::string>
    linkageType: ''
    returnType: KeyValueVector
    signature: KeyValueVector makeTestMetadata()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 424
    functionDepth: 0
    functionLinenumber: 424
    functionLinenumberEnd: 426
    functionName: ActionWithMetadata::ActionWithMetadata
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ActionWithMetadata(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 428
    functionDepth: 0
    functionLinenumber: 428
    functionLinenumberEnd: 431
    functionName: ActionWithMetadata::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 433
    functionDepth: 0
    functionLinenumber: 433
    functionLinenumberEnd: 436
    functionName: ActionWithMetadata::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: makeTestMetadata
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:440,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 441
    functionName: ActionWithMetadata::metadata
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - makeTestMetadata
    linkageType: ''
    returnType: KeyValueVector
    signature: KeyValueVector metadata()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:455,1
    - Dst: BehaviorTreeFactory::manifests
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:456,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:457,1
    - Dst: makeTestMetadata
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:457,1
    - Dst: writeTreeNodesModelXML
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:459,1
    - Dst: EXPECT_NE
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:462,1
    - Dst: auto::find
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:462,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 463
      start: 444
    functionDepth: 1
    functionLinenumber: 444
    functionLinenumberEnd: 463
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - auto::find
    - EXPECT_EQ
    - BehaviorTreeFactory::registerNodeType
    - writeTreeNodesModelXML
    - BehaviorTreeFactory::manifests
    - makeTestMetadata
    - EXPECT_NE
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, ManifestMethod)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:471,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:472,1
    - Dst: make_factory
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:475,1
    - Dst: auto::manifests
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:478,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:479,1
    - Dst: count
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:479,1
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:482,1
    - Dst: std::move
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:483,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:484,1
    - Dst: BT::BehaviorTreeFactory::manifests
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:484,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 465
    functionDepth: 1
    functionLinenumber: 465
    functionLinenumberEnd: 485
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - count
    - auto::manifests
    - BT::BehaviorTreeFactory::registerNodeType
    - ASSERT_TRUE
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - BT::BehaviorTreeFactory::manifests
    - make_factory
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, ReturnByValue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:490,1
    - Dst: BehaviorTreeFactory::manifests
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:491,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:492,1
    - Dst: metadata::empty
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:492,1
    - Dst: BehaviorTreeFactory::addMetadataToManifest
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:493,1
    - Dst: makeTestMetadata
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:493,1
    - Dst: BehaviorTreeFactory::manifests
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:494,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:495,1
    - Dst: makeTestMetadata
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:495,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 487
    functionDepth: 1
    functionLinenumber: 487
    functionLinenumberEnd: 496
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::addMetadataToManifest
    - EXPECT_TRUE
    - EXPECT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::manifests
    - makeTestMetadata
    - metadata::empty
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, addMetadataToManifest)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 505
    functionDepth: 0
    functionLinenumber: 505
    functionLinenumberEnd: 507
    functionName: ActionIssue1046::ActionIssue1046
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ActionIssue1046(const std::string& name, const BT::NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:516,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 509
    functionDepth: 0
    functionLinenumber: 509
    functionLinenumberEnd: 521
    functionName: ActionIssue1046::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - getInput
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<int>
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:525,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 526
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 526
    functionName: ActionIssue1046::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<int>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Tree::Tree
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:545,1
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:548,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:549,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:550,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:551,1
    - Dst: static_cast<const BT::TreeNode*>
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:562,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:562,1
    - Dst: BT::Tree::manifests::find
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:565,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:566,1
    - Dst: BT::Tree::manifests::end
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:566,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:567,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:576,1
    - Dst: BT::Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:576,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 531
    functionDepth: 1
    functionLinenumber: 531
    functionLinenumberEnd: 577
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - get
    - static_cast<const BT::TreeNode*>
    - BT::BehaviorTreeFactory::createTree
    - BT::Tree::manifests::find
    - EXPECT_EQ
    - BT::Tree::Tree
    - BT::BehaviorTreeFactory::registerNodeType
    - BT::Tree::tickWhileRunning
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - ASSERT_NE
    - BT::Tree::manifests::end
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, FactoryDestroyedBeforeTick)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:601,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:604,1
    - Dst: BehaviorTreeFactory::registeredBehaviorTrees
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:604,1
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:618,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:618,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:619,1
    - Dst: Tree::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:619,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 590
    functionDepth: 0
    functionLinenumber: 590
    functionLinenumberEnd: 620
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - Tree::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::registeredBehaviorTrees
    - ASSERT_NO_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, CreateTreeFromTextFindsRegisteredSubtree)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:626,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:626,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 622
    functionDepth: 0
    functionLinenumber: 622
    functionLinenumberEnd: 627
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - EXPECT_ANY_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, MalformedXML_InvalidRoot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:640,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:640,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 641
      start: 629
    functionDepth: 0
    functionLinenumber: 629
    functionLinenumberEnd: 641
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - BehaviorTreeFactory::createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, MalformedXML_MissingRootElement)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:653,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:653,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 654
      start: 643
    functionDepth: 0
    functionLinenumber: 643
    functionLinenumberEnd: 654
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - BehaviorTreeFactory::createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, MalformedXML_EmptyBehaviorTree)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:670,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:670,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 656
    functionDepth: 0
    functionLinenumber: 656
    functionLinenumberEnd: 671
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - BehaviorTreeFactory::createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, MalformedXML_EmptyBehaviorTreeID)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:687,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:687,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 688
      start: 673
    functionDepth: 0
    functionLinenumber: 673
    functionLinenumberEnd: 688
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - BehaviorTreeFactory::createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, MalformedXML_MissingBehaviorTreeID)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:709,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:709,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 710
      start: 690
    functionDepth: 0
    functionLinenumber: 690
    functionLinenumberEnd: 710
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - BehaviorTreeFactory::createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, MalformedXML_DeeplyNestedElements)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:730,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:730,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 712
    functionDepth: 0
    functionLinenumber: 712
    functionLinenumberEnd: 731
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - EXPECT_NO_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, MalformedXML_ModerateNestingIsOK)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:745,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:745,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 746
      start: 733
    functionDepth: 0
    functionLinenumber: 733
    functionLinenumberEnd: 746
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - BehaviorTreeFactory::createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, MalformedXML_MultipleBTChildElements)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:752,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:752,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 748
    functionDepth: 0
    functionLinenumber: 748
    functionLinenumberEnd: 753
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - EXPECT_ANY_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, MalformedXML_CompletelyEmpty)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:763,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:764,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:764,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 765
      start: 755
    functionDepth: 0
    functionLinenumber: 755
    functionLinenumberEnd: 765
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTree
    - EXPECT_ANY_THROW
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, MalformedXML_EmptyRoot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:778,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_factory.cpp:778,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 767
    functionDepth: 0
    functionLinenumber: 767
    functionLinenumberEnd: 779
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_factory.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - BehaviorTreeFactory::createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTreeFactory, MalformedXML_UnknownNodeType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:30,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:32,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 34
    functionName: SimpleFallbackTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached:
    - milliseconds
    - addChild
    linkageType: ''
    returnType: void
    signature: void SimpleFallbackTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: ~SimpleFallbackTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SimpleFallbackTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: SimpleFallbackTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleFallbackTest(const SimpleFallbackTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: '& operator=(const SimpleFallbackTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleFallbackTest
    signature: SimpleFallbackTest & operator=(const SimpleFallbackTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: SimpleFallbackTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleFallbackTest(SimpleFallbackTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: '& operator=(SimpleFallbackTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleFallbackTest
    signature: SimpleFallbackTest & operator=(SimpleFallbackTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:53,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:55,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:56,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 58
    functionName: ReactiveFallbackTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached:
    - milliseconds
    - addChild
    linkageType: ''
    returnType: void
    signature: void ReactiveFallbackTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: ~ReactiveFallbackTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ReactiveFallbackTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: ReactiveFallbackTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ReactiveFallbackTest(const ReactiveFallbackTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: '& operator=(const ReactiveFallbackTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ReactiveFallbackTest
    signature: ReactiveFallbackTest & operator=(const ReactiveFallbackTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: ReactiveFallbackTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ReactiveFallbackTest(ReactiveFallbackTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: '& operator=(ReactiveFallbackTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ReactiveFallbackTest
    signature: ReactiveFallbackTest & operator=(ReactiveFallbackTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:73,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:75,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 77
    functionName: SimpleFallbackWithMemoryTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached:
    - milliseconds
    - addChild
    linkageType: ''
    returnType: void
    signature: void SimpleFallbackWithMemoryTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: ~SimpleFallbackWithMemoryTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SimpleFallbackWithMemoryTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: SimpleFallbackWithMemoryTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleFallbackWithMemoryTest(const SimpleFallbackWithMemoryTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: '& operator=(const SimpleFallbackWithMemoryTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleFallbackWithMemoryTest
    signature: SimpleFallbackWithMemoryTest & operator=(const SimpleFallbackWithMemoryTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: SimpleFallbackWithMemoryTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleFallbackWithMemoryTest(SimpleFallbackWithMemoryTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 82
    functionName: '& operator=(SimpleFallbackWithMemoryTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleFallbackWithMemoryTest
    signature: SimpleFallbackWithMemoryTest & operator=(SimpleFallbackWithMemoryTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:100,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:101,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:107,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:109,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:110,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:112,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:114,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 117
    functionName: ComplexFallbackWithMemoryTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached:
    - milliseconds
    - addChild
    linkageType: ''
    returnType: void
    signature: void ComplexFallbackWithMemoryTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 118
    functionName: ~ComplexFallbackWithMemoryTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ComplexFallbackWithMemoryTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 119
    functionDepth: 0
    functionLinenumber: 119
    functionLinenumberEnd: 119
    functionName: ComplexFallbackWithMemoryTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ComplexFallbackWithMemoryTest(const ComplexFallbackWithMemoryTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 120
    functionName: '& operator=(const ComplexFallbackWithMemoryTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ComplexFallbackWithMemoryTest
    signature: ComplexFallbackWithMemoryTest & operator=(const ComplexFallbackWithMemoryTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 121
    functionName: ComplexFallbackWithMemoryTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ComplexFallbackWithMemoryTest(ComplexFallbackWithMemoryTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 122
    functionName: '& operator=(ComplexFallbackWithMemoryTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ComplexFallbackWithMemoryTest
    signature: ComplexFallbackWithMemoryTest & operator=(ComplexFallbackWithMemoryTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:130,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:131,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:133,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:134,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:134,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:135,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 136
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(SimpleFallbackTest, ConditionTrue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:142,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:143,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:145,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:146,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:146,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:147,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:147,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:149,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:150,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:152,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:153,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:153,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:154,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 155
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(SimpleFallbackTest, ConditionChangeWhileRunning)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:159,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:160,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:162,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:164,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:165,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:165,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:166,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:166,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:167,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:167,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:169,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:171,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:173,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:174,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:174,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:175,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:175,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:176,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 177
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(ReactiveFallbackTest, Condition1ToTrue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:181,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:182,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:184,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:186,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:187,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:187,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:188,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:188,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:189,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:189,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:191,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:193,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:195,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:196,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:196,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:197,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:197,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:198,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 199
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(ReactiveFallbackTest, Condition2ToTrue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:203,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:204,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:206,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:207,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:207,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:208,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 209
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(SimpleFallbackWithMemoryTest, ConditionFalse)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:213,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:214,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:216,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:217,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:217,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:218,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:218,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:220,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:221,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:223,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:224,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:224,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:225,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 226
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 226
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(SimpleFallbackWithMemoryTest, ConditionTurnToTrue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:230,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:232,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:233,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:233,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:234,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:234,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:235,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:235,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:236,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:236,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:237,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:237,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:238,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 239
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexFallbackWithMemoryTest, ConditionsTrue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:243,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:244,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:246,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:247,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:247,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:248,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:248,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:249,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:249,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:250,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:250,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:251,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:251,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:252,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 253
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexFallbackWithMemoryTest, Condition1False)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:257,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:258,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:259,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:261,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:262,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:262,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:263,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:263,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:264,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:264,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:265,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:265,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:266,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:266,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:267,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 268
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexFallbackWithMemoryTest, ConditionsFalse)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:272,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:273,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:274,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:276,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:277,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:279,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:280,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:280,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:281,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:281,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:282,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:282,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:283,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:283,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:284,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:284,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:285,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:285,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 286
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexFallbackWithMemoryTest, Conditions1ToTrue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:290,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:291,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:292,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:294,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:295,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:297,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:298,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:298,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:299,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:299,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:300,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:300,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:301,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:301,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:302,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:302,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:303,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 304
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexFallbackWithMemoryTest, Conditions2ToTrue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:308,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:309,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:310,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:311,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:313,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:315,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:316,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:316,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:317,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:319,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:320,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:320,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:321,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:321,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:322,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:322,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:323,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:323,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:324,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:324,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:325,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_fallback.cpp:325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 306
    functionDepth: 0
    functionLinenumber: 306
    functionLinenumberEnd: 326
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_fallback.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - setExpectedResult
    - std::this_thread::sleep_for
    - executeTick
    - std::chrono::milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexFallbackWithMemoryTest, Action1Failed)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:23,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:23,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:24,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:24,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:25,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 20
    functionDepth: 1
    functionLinenumber: 20
    functionLinenumberEnd: 26
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - SimpleString::data
    - EXPECT_TRUE
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, DefaultConstructor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:32,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:32,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:33,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:33,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:34,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 35
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - SimpleString::data
    - EXPECT_TRUE
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, EmptyString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:41,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:41,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:42,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:42,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:43,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 38
    functionDepth: 1
    functionLinenumber: 38
    functionLinenumberEnd: 44
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - SimpleString::data
    - EXPECT_TRUE
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, ConstructFromCString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:51,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:51,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:52,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:52,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:53,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 54
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - SimpleString::data
    - EXPECT_TRUE
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, ConstructFromCStringWithSize)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:61,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:61,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:62,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:62,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:63,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 57
    functionDepth: 1
    functionLinenumber: 57
    functionLinenumberEnd: 64
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - SimpleString::data
    - EXPECT_TRUE
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, ConstructFromStdString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:71,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:71,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:72,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:72,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:73,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 74
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - SimpleString::data
    - EXPECT_TRUE
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, ConstructFromStringView)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:81,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:81,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:82,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:82,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:83,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 84
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - SimpleString::data
    - EXPECT_TRUE
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, SOOBoundaryExact)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:91,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:91,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:92,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:92,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:93,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 94
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - EXPECT_FALSE
    - SimpleString::data
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, SOOBoundaryExceeded)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:101,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:101,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:102,1
    - Dst: SimpleString::toStdString
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:102,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:103,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 104
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - EXPECT_FALSE
    - EXPECT_EQ
    - SimpleString::size
    - SimpleString::toStdString
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, LongString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:111,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:111,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:111,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:112,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:112,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:112,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:113,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:113,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:114,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 115
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - SimpleString::data
    - EXPECT_TRUE
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, CopyConstructorSOO)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:123,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:123,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:123,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:124,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:124,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:124,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:125,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:125,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:126,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:126,1
    - Dst: EXPECT_NE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:128,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:128,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 118
    functionDepth: 1
    functionLinenumber: 118
    functionLinenumberEnd: 129
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - EXPECT_FALSE
    - SimpleString::data
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    - EXPECT_NE
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, CopyConstructorNonSOO)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:137,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:137,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:137,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:138,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:138,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:138,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 139
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_STREQ
    - EXPECT_EQ
    - SimpleString::size
    - SimpleString::data
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, CopyAssignmentSOO)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:147,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:147,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:147,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:148,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:148,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 149
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_STREQ
    - EXPECT_EQ
    - SimpleString::size
    - SimpleString::data
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, CopyAssignmentToDefault)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:156,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:156,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:157,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 158
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_STREQ
    - EXPECT_EQ
    - SimpleString::size
    - SimpleString::data
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, SelfCopyAssignment)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:167,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:167,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:167,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:168,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:168,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:168,1
    - Dst: EXPECT_NE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:169,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:169,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 161
    functionDepth: 1
    functionLinenumber: 161
    functionLinenumberEnd: 170
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::data
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    - EXPECT_NE
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, CopyAssignmentNonSOO)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:177,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:177,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:178,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 173
    functionDepth: 1
    functionLinenumber: 173
    functionLinenumberEnd: 179
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_STREQ
    - EXPECT_EQ
    - SimpleString::size
    - SimpleString::data
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, MoveConstructor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:186,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:188,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:188,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:189,1
    - Dst: SimpleString::toStdString
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:189,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:191,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 182
    functionDepth: 1
    functionLinenumber: 182
    functionLinenumberEnd: 192
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_EQ
    - SimpleString::size
    - SimpleString::toStdString
    - SimpleString::data
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, MoveConstructorNonSOO)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:199,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:200,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:200,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:201,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 195
    functionDepth: 1
    functionLinenumber: 195
    functionLinenumberEnd: 202
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - SimpleString::data
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, MoveAssignment)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:209,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:210,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:210,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:211,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 205
    functionDepth: 1
    functionLinenumber: 205
    functionLinenumberEnd: 212
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - SimpleString::data
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, MoveAssignmentToDefault)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:218,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:219,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:219,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:220,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:220,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 215
    functionDepth: 1
    functionLinenumber: 215
    functionLinenumberEnd: 221
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - SimpleString::data
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, SelfMoveAssignment)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:228,1
    - Dst: std::move
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:230,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:231,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:231,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:232,1
    - Dst: SimpleString::toStdString
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:232,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:233,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:233,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 224
    functionDepth: 1
    functionLinenumber: 224
    functionLinenumberEnd: 234
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - SimpleString::data
    - EXPECT_EQ
    - SimpleString::size
    - SimpleString::toStdString
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, MoveAssignmentNonSOO)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SimpleString::toStdString
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:240,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 242
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_EQ
    - SimpleString::toStdString
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, ToStdString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SimpleString::toStdString
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:248,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:249,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:249,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 245
    functionDepth: 1
    functionLinenumber: 245
    functionLinenumberEnd: 250
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - std::string::empty
    - EXPECT_TRUE
    - SimpleString::toStdString
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, ToStdStringEmpty)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SimpleString::toStdStringView
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:256,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 258
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::toStdStringView
    - EXPECT_EQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, ToStdStringView)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SimpleString::toStdStringView
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:264,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:265,1
    - Dst: std::string_view::empty
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 261
    functionDepth: 1
    functionLinenumber: 261
    functionLinenumberEnd: 266
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::toStdStringView
    - EXPECT_TRUE
    - std::string_view::empty
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, ToStdStringViewEmpty)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:276,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:277,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 279
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_TRUE
    - EXPECT_FALSE
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, EqualityOperator)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:288,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:289,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 290
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_TRUE
    - EXPECT_FALSE
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, InequalityOperator)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:300,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:301,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:302,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:303,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:304,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 293
    functionDepth: 0
    functionLinenumber: 293
    functionLinenumberEnd: 305
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_TRUE
    - EXPECT_FALSE
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, LessThanOperator)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:315,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:316,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:317,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:318,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 308
    functionDepth: 0
    functionLinenumber: 308
    functionLinenumberEnd: 320
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_TRUE
    - EXPECT_FALSE
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, GreaterThanOperator)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:329,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:330,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 332
      start: 323
    functionDepth: 0
    functionLinenumber: 323
    functionLinenumberEnd: 332
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_TRUE
    - EXPECT_FALSE
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, LessEqualOperator)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:341,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:342,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:343,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 335
    functionDepth: 0
    functionLinenumber: 335
    functionLinenumberEnd: 344
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_TRUE
    - EXPECT_FALSE
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, GreaterEqualOperator)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:357,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:358,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:359,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:360,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:361,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:362,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 347
    functionDepth: 0
    functionLinenumber: 347
    functionLinenumberEnd: 363
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_TRUE
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, ComparisonNonSOO)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:372,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:373,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:374,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:375,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:376,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 366
    functionDepth: 0
    functionLinenumber: 366
    functionLinenumberEnd: 378
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_TRUE
    - EXPECT_FALSE
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, EmptyStringComparison)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 384
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_EQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, SizeOfSimpleString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:394,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:394,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:395,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:395,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:396,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:396,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 397
      start: 387
    functionDepth: 1
    functionLinenumber: 387
    functionLinenumberEnd: 397
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - SimpleString::data
    - EXPECT_TRUE
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, AssignmentSOOToNonSOO)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:407,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:407,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:408,1
    - Dst: SimpleString::toStdString
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:408,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:409,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:409,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 400
    functionDepth: 1
    functionLinenumber: 400
    functionLinenumberEnd: 410
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - EXPECT_FALSE
    - EXPECT_EQ
    - SimpleString::size
    - SimpleString::toStdString
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, AssignmentNonSOOToSOO)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:417,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:417,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:418,1
    - Dst: SimpleString::toStdString
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:418,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:419,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 413
    functionDepth: 1
    functionLinenumber: 413
    functionLinenumberEnd: 420
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - EXPECT_FALSE
    - EXPECT_EQ
    - SimpleString::size
    - SimpleString::toStdString
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, VeryLongString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:426,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:426,1
    - Dst: SimpleString
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:428,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:429,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:429,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:430,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 423
    functionDepth: 1
    functionLinenumber: 423
    functionLinenumberEnd: 431
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - EXPECT_FALSE
    - SimpleString::data
    - EXPECT_TRUE
    - SimpleString
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, ReassignSOOToNonSOO)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:437,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:437,1
    - Dst: SimpleString
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:439,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:440,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:440,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:441,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:441,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 434
    functionDepth: 1
    functionLinenumber: 434
    functionLinenumberEnd: 442
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - EXPECT_FALSE
    - SimpleString::data
    - EXPECT_TRUE
    - SimpleString
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, ReassignNonSOOToSOO)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:451,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:451,1
    - Dst: SimpleString
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:453,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:454,1
    - Dst: SimpleString::toStdString
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:454,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:455,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:455,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 445
    functionDepth: 0
    functionLinenumber: 445
    functionLinenumberEnd: 456
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - EXPECT_FALSE
    - EXPECT_EQ
    - SimpleString
    - SimpleString::toStdString
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, ReassignNonSOOToNonSOO)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:462,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:462,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:463,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:463,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:464,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 459
    functionDepth: 1
    functionLinenumber: 459
    functionLinenumberEnd: 465
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - SimpleString::data
    - EXPECT_TRUE
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, SingleCharacter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:472,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:472,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:473,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:473,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:474,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:474,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 468
    functionDepth: 1
    functionLinenumber: 468
    functionLinenumberEnd: 475
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - SimpleString::data
    - EXPECT_TRUE
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, CapacityMinus1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:482,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:482,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:483,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:483,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:484,1
    - Dst: SimpleString::isSOO
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:484,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 478
    functionDepth: 1
    functionLinenumber: 478
    functionLinenumberEnd: 485
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - SimpleString::isSOO
    - EXPECT_FALSE
    - SimpleString::data
    - EXPECT_EQ
    - SimpleString::size
    - EXPECT_STREQ
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, CapacityPlus1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:491,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:492,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 488
    functionDepth: 1
    functionLinenumber: 488
    functionLinenumberEnd: 493
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_EQ
    - SimpleString::data
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, NullTerminatedSOO)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:500,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:501,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 496
    functionDepth: 1
    functionLinenumber: 496
    functionLinenumberEnd: 502
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_EQ
    - SimpleString::data
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, NullTerminatedNonSOO)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:509,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:509,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:510,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:510,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 505
    functionDepth: 1
    functionLinenumber: 505
    functionLinenumberEnd: 511
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_STREQ
    - EXPECT_EQ
    - SimpleString::size
    - SimpleString::data
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, CopyEmptyString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:518,1
    - Dst: SimpleString::size
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:518,1
    - Dst: EXPECT_STREQ
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:519,1
    - Dst: SimpleString::data
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:519,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 514
    functionDepth: 1
    functionLinenumber: 514
    functionLinenumberEnd: 520
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_STREQ
    - EXPECT_EQ
    - SimpleString::size
    - SimpleString::data
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, MoveEmptyString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:527,1
    - Dst: SimpleString
      Src: /src/behaviortreecpp/tests/gtest_simple_string.cpp:527,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 528
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_simple_string.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - SimpleString
    linkageType: ''
    returnType: void
    signature: void TEST(SimpleStringTest, SizeTooLarge)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:37,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:39,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:42,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:43,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:44,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 46
    functionName: SimpleParallelTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - milliseconds
    - addChild
    linkageType: ''
    returnType: void
    signature: void SimpleParallelTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~SimpleParallelTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SimpleParallelTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: SimpleParallelTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleParallelTest(const SimpleParallelTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& operator=(const SimpleParallelTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleParallelTest
    signature: SimpleParallelTest & operator=(const SimpleParallelTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: SimpleParallelTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleParallelTest(SimpleParallelTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: '& operator=(SimpleParallelTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleParallelTest
    signature: SimpleParallelTest & operator=(SimpleParallelTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:74,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:76,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:78,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:81,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:83,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:84,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:85,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:86,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:88,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:90,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:91,1
    - Dst: setSuccessThreshold
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:93,1
    - Dst: setSuccessThreshold
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:94,1
    - Dst: setSuccessThreshold
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 96
    functionName: ComplexParallelTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - setSuccessThreshold
    - milliseconds
    - addChild
    linkageType: ''
    returnType: void
    signature: void ComplexParallelTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: ~ComplexParallelTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ComplexParallelTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: ComplexParallelTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ComplexParallelTest(const ComplexParallelTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: '& operator=(const ComplexParallelTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ComplexParallelTest
    signature: ComplexParallelTest & operator=(const ComplexParallelTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: ComplexParallelTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ComplexParallelTest(ComplexParallelTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: '& operator=(ComplexParallelTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ComplexParallelTest
    signature: ComplexParallelTest & operator=(ComplexParallelTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:109,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:111,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:111,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:112,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:112,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:113,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:113,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:114,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:114,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:115,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:117,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:117,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:118,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:120,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:120,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:121,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:121,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:122,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:122,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:123,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:123,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:124,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:126,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:126,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:127,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:129,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:129,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:130,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:130,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:131,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:131,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:132,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:132,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 134
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(SimpleParallelTest, ConditionsTrue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setSuccessThreshold
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:138,1
    - Dst: setTime
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:139,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:139,1
    - Dst: setTime
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:140,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:140,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:142,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:144,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:144,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:145,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:145,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:146,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:146,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:147,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:147,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:148,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:150,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:150,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:151,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:154,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:154,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:155,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:155,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:156,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:156,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:157,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:157,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 159
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - setSuccessThreshold
    - setTime
    - ASSERT_EQ
    - status
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(SimpleParallelTest, Threshold_3)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setSuccessThreshold
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:163,1
    - Dst: setTime
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:164,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:164,1
    - Dst: setTime
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:165,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:165,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:167,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:169,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:169,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:170,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:170,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:171,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:171,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:172,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:172,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:173,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:175,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:175,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:176,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:179,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:179,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:180,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:180,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:181,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:181,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:182,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:182,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 184
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - setSuccessThreshold
    - setTime
    - ASSERT_EQ
    - status
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(SimpleParallelTest, Threshold_neg2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setSuccessThreshold
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:188,1
    - Dst: setTime
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:189,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:189,1
    - Dst: setTime
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:190,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:190,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:192,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:194,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:194,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:195,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:195,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:196,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:196,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:197,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:197,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:198,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:200,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:200,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:201,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:203,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:203,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:204,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:204,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:205,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:205,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:206,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:206,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:207,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:209,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:209,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:210,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:212,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:212,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:213,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:213,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:214,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:214,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:215,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:215,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:216,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 217
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - setSuccessThreshold
    - setTime
    - ASSERT_EQ
    - status
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(SimpleParallelTest, Threshold_neg1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setSuccessThreshold
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:221,1
    - Dst: setFailureThreshold
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:222,1
    - Dst: setTime
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:223,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:223,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:224,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:225,1
    - Dst: setTime
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:226,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:226,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:227,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:228,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:230,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:231,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:233,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:233,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:234,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 236
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - setSuccessThreshold
    - setTime
    - ASSERT_EQ
    - setFailureThreshold
    - setExpectedResult
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(SimpleParallelTest, Threshold_thresholdFneg1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setSuccessThreshold
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:240,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:241,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:243,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:243,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:244,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:244,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:245,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:245,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:246,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:246,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 248
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - setSuccessThreshold
    - ASSERT_EQ
    - status
    - executeTick
    linkageType: ''
    returnType: void
    signature: void TEST_F(SimpleParallelTest, Threshold_2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:252,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:254,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:254,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:255,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:255,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:256,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:256,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:257,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:257,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:258,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:258,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:260,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:260,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:261,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:261,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:262,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:262,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:264,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:266,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:266,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:267,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:269,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:269,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:270,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:270,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:271,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:271,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:272,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:272,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:273,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:273,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:275,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:275,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:276,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:276,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:277,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:277,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 280
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexParallelTest, ConditionsTrue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setFailureThreshold
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:284,1
    - Dst: setSuccessThreshold
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:285,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:286,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:287,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:288,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:293,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:293,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:294,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:294,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:295,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:295,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:296,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:296,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:297,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:297,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:299,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:299,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:300,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:300,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:301,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:301,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 304
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - setSuccessThreshold
    - ASSERT_EQ
    - status
    - setFailureThreshold
    - setExpectedResult
    - executeTick
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexParallelTest, ConditionsLeftFalse)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:308,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:309,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:314,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:314,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:315,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:315,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:316,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:316,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:317,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:317,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:318,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:318,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:320,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:320,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:321,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:321,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:322,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:322,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 306
    functionDepth: 0
    functionLinenumber: 306
    functionLinenumberEnd: 325
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexParallelTest, ConditionRightFalse)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setFailureThreshold
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:329,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:330,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:331,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:335,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:335,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:336,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:336,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:337,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:337,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:338,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:338,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:339,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:339,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:341,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:341,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:342,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:342,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:343,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:343,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:345,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:348,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:348,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:349,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:351,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:351,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:352,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:352,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:353,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:353,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:354,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:354,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:355,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:355,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:357,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:357,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:358,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:358,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:359,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:359,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:361,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 362
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - setFailureThreshold
    - setExpectedResult
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexParallelTest, ConditionRightFalse_thresholdF_2)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:366,1
    - Dst: setFailureThreshold
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:368,1
    - Dst: setSuccessThreshold
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:369,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:371,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:372,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:372,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:375,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:375,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:376,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:376,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:377,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:377,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:378,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:378,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:379,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:379,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:381,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:381,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:384,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:386,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:386,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:387,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:387,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:388,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:388,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:389,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:389,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:390,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:390,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:392,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:392,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:393,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:393,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:395,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:398,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:398,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:399,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:401,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:401,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:402,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:402,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:404,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:404,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:405,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:405,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:407,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 364
    functionDepth: 0
    functionLinenumber: 364
    functionLinenumberEnd: 408
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - setSuccessThreshold
    - ASSERT_EQ
    - status
    - setFailureThreshold
    - setExpectedResult
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexParallelTest, ConditionRightFalseAction1Done)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:427,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:429,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:432,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:434,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:437,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:439,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:441,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:444,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:446,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:447,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:447,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:448,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:448,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:449,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:449,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 410
    functionDepth: 0
    functionLinenumber: 410
    functionLinenumberEnd: 450
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BT::TreeObserver::getStatistics
    - std::chrono::milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST(Parallel, FailingParallel)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:459,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:461,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:464,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:466,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:479,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:482,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:483,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:484,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:484,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:485,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:485,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:486,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:486,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:500,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:503,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:504,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:505,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:505,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:506,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:506,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:507,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:507,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 509
      start: 452
    functionDepth: 0
    functionLinenumber: 452
    functionLinenumberEnd: 509
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BT::TreeObserver::getStatistics
    - std::chrono::milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST(Parallel, ParallelAll)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:530,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:532,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:533,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:535,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 511
    functionDepth: 2
    functionLinenumber: 511
    functionLinenumberEnd: 536
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - RegisterTestTick
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(Parallel, Issue593)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:564,1
    - Dst: std::chrono::system_clock::now
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:565,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:569,1
    - Dst: std::chrono::duration_cast<std::chrono::milliseconds>
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:571,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:574,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:576,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:576,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:580,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:580,1
    - Dst: std::chrono::system_clock::now
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:583,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:587,1
    - Dst: std::chrono::system_clock::now
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:589,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:591,1
    - Dst: ASSERT_LE
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:598,1
    - Dst: toMsec
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:598,1
    - Dst: ASSERT_LE
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:600,1
    - Dst: toMsec
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:600,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 538
    functionDepth: 1
    functionLinenumber: 538
    functionLinenumberEnd: 601
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - get
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickExactlyOnce
    - auto::subtrees::front
    - isStatusCompleted
    - std::chrono::system_clock::now
    - ASSERT_EQ
    - ASSERT_LE
    - std::this_thread::sleep_for
    - toMsec
    - std::chrono::milliseconds
    - std::chrono::duration_cast<std::chrono::milliseconds>
    linkageType: ''
    returnType: void
    signature: void TEST(Parallel, PauseWithRetry)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerSimpleCondition
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:632,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:633,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:641,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:644,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:645,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:646,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:647,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:650,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:650,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:651,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:652,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:654,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:655,1
    - Dst: BehaviorTreeFactory::registerSimpleCondition
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:679,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:680,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:688,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:691,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:692,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:693,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:694,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:697,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:697,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:698,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:699,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:701,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_parallel.cpp:702,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 704
      start: 606
    functionDepth: 0
    functionLinenumber: 606
    functionLinenumberEnd: 704
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_parallel.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickExactlyOnce
    - BehaviorTreeFactory::registerSimpleCondition
    - ASSERT_EQ
    - name
    - std::this_thread::sleep_for
    - std::chrono::milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST(Parallel, Issue819_SequenceVsReactiveSequence)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:27,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:27,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:28,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:28,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:29,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:29,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:30,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:30,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:31,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 32
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - toStr
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, ToStr_NodeStatus)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:37,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:38,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:39,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:40,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:41,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:44,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:44,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:45,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:45,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:47,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:47,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:48,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:48,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:50,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:50,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:51,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:51,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:53,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:53,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:54,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:54,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:56,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:56,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:57,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:57,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:60,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 61
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - std::string::find
    - ASSERT_NE
    - toStr
    - ASSERT_EQ
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, ToStr_NodeStatus_Colored)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:65,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:65,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:66,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:66,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:67,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 68
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - toStr
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, ToStr_PortDirection)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:72,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:72,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:73,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:73,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:74,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:74,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:75,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:75,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:76,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:76,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:77,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 78
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - toStr
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, ToStr_NodeType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:82,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:82,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:83,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - toStr
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, ToStr_Bool)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:88,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:88,1
    - Dst: string
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:88,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:89,1
    - Dst: toStr
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:89,1
    - Dst: string
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - toStr
    - string
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, ToStr_String)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:96,1
    - Dst: convertFromString<int>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:96,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:97,1
    - Dst: convertFromString<int>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:97,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:98,1
    - Dst: convertFromString<int>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:98,1
    - Dst: ASSERT_THROW
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:100,1
    - Dst: convertFromString<int>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:100,1
    - Dst: ASSERT_THROW
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:101,1
    - Dst: convertFromString<int>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 102
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - convertFromString<int>
    - ASSERT_EQ
    - ASSERT_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, ConvertFromString_Int)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:106,1
    - Dst: convertFromString<int64_t>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:106,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:107,1
    - Dst: convertFromString<int64_t>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:107,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 108
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - convertFromString<int64_t>
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, ConvertFromString_Int64)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:112,1
    - Dst: convertFromString<uint64_t>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:112,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:113,1
    - Dst: convertFromString<uint64_t>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - convertFromString<uint64_t>
    - ASSERT_EQ
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, ConvertFromString_UInt64)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:118,1
    - Dst: convertFromString<double>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:118,1
    - Dst: ASSERT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:119,1
    - Dst: convertFromString<double>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:119,1
    - Dst: ASSERT_DOUBLE_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:120,1
    - Dst: convertFromString<double>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:120,1
    - Dst: ASSERT_THROW
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:123,1
    - Dst: convertFromString<double>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 124
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_THROW
    - convertFromString<double>
    - ASSERT_DOUBLE_EQ
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, ConvertFromString_Double)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:132,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:132,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:136,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:136,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:140,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:140,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:141,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:141,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:145,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:146,1
    - Dst: EXPECT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:147,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:147,1
    - Dst: EXPECT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:148,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 149
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_ANY_THROW
    - auto::set
    - BT::Blackboard::create
    - EXPECT_EQ
    - EXPECT_NO_THROW
    - BT::Blackboard::getAny
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, DoubleToIntBoundary)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:153,1
    - Dst: convertFromString<bool>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:153,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:154,1
    - Dst: convertFromString<bool>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:154,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:155,1
    - Dst: convertFromString<bool>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:155,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:156,1
    - Dst: convertFromString<bool>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:156,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:158,1
    - Dst: convertFromString<bool>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:158,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:159,1
    - Dst: convertFromString<bool>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:159,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:160,1
    - Dst: convertFromString<bool>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:160,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:161,1
    - Dst: convertFromString<bool>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:161,1
    - Dst: ASSERT_THROW
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:163,1
    - Dst: convertFromString<bool>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 164
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_FALSE
    - ASSERT_TRUE
    - ASSERT_THROW
    - convertFromString<bool>
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, ConvertFromString_Bool)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:168,1
    - Dst: convertFromString<std::string>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:168,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:169,1
    - Dst: convertFromString<std::string>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:169,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:170,1
    - Dst: convertFromString<std::string>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 171
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - convertFromString<std::string>
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, ConvertFromString_String)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:175,1
    - Dst: convertFromString<NodeStatus>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:175,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:176,1
    - Dst: convertFromString<NodeStatus>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:176,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:177,1
    - Dst: convertFromString<NodeStatus>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:177,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:178,1
    - Dst: convertFromString<NodeStatus>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:178,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:179,1
    - Dst: convertFromString<NodeStatus>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:179,1
    - Dst: ASSERT_THROW
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:181,1
    - Dst: convertFromString<NodeStatus>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 182
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - convertFromString<NodeStatus>
    - ASSERT_EQ
    - ASSERT_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, ConvertFromString_NodeStatus)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:186,1
    - Dst: convertFromString<NodeType>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:186,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:187,1
    - Dst: convertFromString<NodeType>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:187,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:188,1
    - Dst: convertFromString<NodeType>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:188,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:189,1
    - Dst: convertFromString<NodeType>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:189,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:190,1
    - Dst: convertFromString<NodeType>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 191
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - convertFromString<NodeType>
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, ConvertFromString_NodeType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:195,1
    - Dst: convertFromString<PortDirection>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:195,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:196,1
    - Dst: convertFromString<PortDirection>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:196,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:197,1
    - Dst: convertFromString<PortDirection>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 198
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - convertFromString<PortDirection>
    - ASSERT_EQ
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, ConvertFromString_PortDirection)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: splitString
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:204,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:205,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:205,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:206,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:207,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 209
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - splitString
    - ASSERT_EQ
    - auto::size
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, SplitString_Basic)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: splitString
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:213,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:215,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:215,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 211
    functionDepth: 1
    functionLinenumber: 211
    functionLinenumberEnd: 216
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - splitString
    - ASSERT_EQ
    - auto::size
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, SplitString_Empty)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: splitString
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:220,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:221,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:221,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 218
    functionDepth: 1
    functionLinenumber: 218
    functionLinenumberEnd: 223
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - splitString
    - ASSERT_EQ
    - auto::size
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, SplitString_NoDelimiter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: splitString
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:227,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:228,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:228,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:230,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:231,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 233
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - splitString
    - ASSERT_EQ
    - auto::size
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, SplitString_Whitespace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: LibraryVersionNumber
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:240,1
    - Dst: ASSERT_GT
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:241,1
    - Dst: LibraryVersionString
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:244,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:245,1
    - Dst: ASSERT_GT
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:246,1
    - Dst: strlen
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:246,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:250,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 237
    functionDepth: 1
    functionLinenumber: 237
    functionLinenumberEnd: 251
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - LibraryVersionNumber
    - LibraryVersionString
    - std::string::find
    - strlen
    - ASSERT_GT
    - ASSERT_NE
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, LibraryVersion)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:269,1
    - Dst: applyRecursiveVisitor
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:273,1
    - Dst: auto::rootNode
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:273,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 278
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::rootNode
    - applyRecursiveVisitor
    - ASSERT_EQ
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTree, ApplyRecursiveVisitor)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:293,1
    - Dst: applyRecursiveVisitor
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:297,1
    - Dst: auto::rootNode
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:297,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:298,1
    - Dst: name
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:298,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:300,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:300,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:301,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:302,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 280
    functionDepth: 1
    functionLinenumber: 280
    functionLinenumberEnd: 303
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::rootNode
    - ASSERT_EQ
    - name
    - applyRecursiveVisitor
    - std::vector::size
    - std::vector::push_back
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTree, ApplyRecursiveVisitor_MutableVersion)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_THROW
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:308,1
    - Dst: applyRecursiveVisitor
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:308,1
    - Dst: static_cast<const TreeNode*>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 311
      start: 305
    functionDepth: 0
    functionLinenumber: 305
    functionLinenumberEnd: 311
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - static_cast<const TreeNode*>
    - applyRecursiveVisitor
    - ASSERT_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTree, ApplyRecursiveVisitor_NullNode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:328,1
    - Dst: printTreeRecursively
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:331,1
    - Dst: auto::rootNode
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:331,1
    - Dst: std::stringstream::str
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:333,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:336,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:336,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:337,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:337,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:340,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 341
      start: 315
    functionDepth: 1
    functionLinenumber: 315
    functionLinenumberEnd: 341
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::rootNode
    - std::string::find
    - std::stringstream::str
    - printTreeRecursively
    - ASSERT_NE
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTree, PrintTreeRecursively)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:359,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:362,1
    - Dst: buildSerializedStatusSnapshot
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:365,1
    - Dst: auto::rootNode
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:365,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:368,1
    - Dst: SerializedTreeStatus::size
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:368,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 345
    functionDepth: 1
    functionLinenumber: 345
    functionLinenumberEnd: 369
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - SerializedTreeStatus::size
    - BehaviorTreeFactory::createTreeFromText
    - buildSerializedStatusSnapshot
    - auto::rootNode
    - ASSERT_EQ
    - auto::tickOnce
    linkageType: ''
    returnType: void
    signature: void TEST(BehaviorTree, BuildSerializedStatusSnapshot)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:376,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:377,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:378,1
    - Dst: auto::second::direction
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:378,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:379,1
    - Dst: auto::second::description
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:379,1
    - Dst: OutputPort<double>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:382,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:383,1
    - Dst: auto::second::direction
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:383,1
    - Dst: BidirectionalPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:386,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:387,1
    - Dst: auto::second::direction
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:387,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 373
    functionDepth: 0
    functionLinenumber: 373
    functionLinenumberEnd: 388
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - BidirectionalPort<std::string>
    - ASSERT_EQ
    - OutputPort<double>
    - auto::second::direction
    - auto::second::description
    - InputPort<int>
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, PortInfo_Construction)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:392,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:394,1
    - Dst: auto::second::defaultValue
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:394,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 390
    functionDepth: 0
    functionLinenumber: 390
    functionLinenumberEnd: 395
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_FALSE
    - InputPort<int>
    - auto::second::defaultValue
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, PortInfo_DefaultValue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:404,1
    - Dst: OutputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:404,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:406,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:407,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:408,1
    - Dst: TreeNodeManifest::ports::size
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:408,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 399
    functionDepth: 1
    functionLinenumber: 399
    functionLinenumberEnd: 409
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - TreeNodeManifest::ports::size
    - OutputPort<std::string>
    - InputPort<int>
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, TreeNodeManifest)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:416,1
    - Dst: Result::has_value
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:416,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 413
    functionDepth: 0
    functionLinenumber: 413
    functionLinenumberEnd: 417
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - Result::has_value
    - ASSERT_TRUE
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, Result_Success)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:421,1
    - Dst: string
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:421,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:422,1
    - Dst: Result::has_value
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:422,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:423,1
    - Dst: Result::error
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:423,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 419
    functionDepth: 1
    functionLinenumber: 419
    functionLinenumberEnd: 424
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - Result::error
    - string
    - ASSERT_EQ
    - nonstd::make_unexpected
    - ASSERT_FALSE
    - Result::has_value
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, Result_Error)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:433,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:433,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:433,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:434,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:434,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:434,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 435
      start: 428
    functionDepth: 1
    functionLinenumber: 428
    functionLinenumberEnd: 435
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - std::string::size
    - std::string::data
    - ASSERT_EQ
    - StringView::data
    - StringView::size
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, StringView_FromString)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:442,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:442,1
    - Dst: strlen
      Src: /src/behaviortreecpp/tests/gtest_basic_types.cpp:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 437
    functionDepth: 1
    functionLinenumber: 437
    functionLinenumberEnd: 443
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_basic_types.cpp
    functionUses: 0
    functionsReached:
    - StringView::size
    - ASSERT_EQ
    - strlen
    linkageType: ''
    returnType: void
    signature: void TEST(BasicTypes, StringView_FromCharPtr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PolymorphicCastRegistry::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:16,1
    - Dst: PolymorphicCastRegistry::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:17,1
    - Dst: PolymorphicCastRegistry::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:18,1
    - Dst: std::make_shared<Animal>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:20,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:22,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:24,1
    - Dst: Any::tryCastWithRegistry
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:24,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:25,1
    - Dst: Any::tryCastWithRegistry
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 13
    functionDepth: 0
    functionLinenumber: 13
    functionLinenumberEnd: 26
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_FALSE
    - Any::cast
    - Any::tryCastWithRegistry
    - PolymorphicCastRegistry::registerCast
    - std::make_shared<Animal>
    linkageType: ''
    returnType: void
    signature: void TEST(PolymorphicPortTest, AnyCast_SameType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PolymorphicCastRegistry::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:31,1
    - Dst: PolymorphicCastRegistry::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:32,1
    - Dst: PolymorphicCastRegistry::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:33,1
    - Dst: std::make_shared<Cat>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:35,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:38,1
    - Dst: Any::tryCastWithRegistry
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:40,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:41,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:41,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:42,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:42,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:44,1
    - Dst: Any::tryCastWithRegistry
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 45
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<Cat>
    - EXPECT_FALSE
    - auto::value
    - EXPECT_TRUE
    - EXPECT_EQ
    - Any::cast
    - auto::has_value
    - Any::tryCastWithRegistry
    - PolymorphicCastRegistry::registerCast
    linkageType: ''
    returnType: void
    signature: void TEST(PolymorphicPortTest, AnyCast_Upcast)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PolymorphicCastRegistry::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:50,1
    - Dst: PolymorphicCastRegistry::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:51,1
    - Dst: PolymorphicCastRegistry::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:52,1
    - Dst: std::make_shared<Sphynx>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:54,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:57,1
    - Dst: Any::tryCastWithRegistry
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:59,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:60,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:60,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:61,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:61,1
    - Dst: Any::tryCastWithRegistry
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:63,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:64,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:64,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:65,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 47
    functionDepth: 1
    functionLinenumber: 47
    functionLinenumberEnd: 66
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<Sphynx>
    - auto::value
    - EXPECT_TRUE
    - EXPECT_EQ
    - Any::cast
    - auto::has_value
    - Any::tryCastWithRegistry
    - PolymorphicCastRegistry::registerCast
    linkageType: ''
    returnType: void
    signature: void TEST(PolymorphicPortTest, AnyCast_TransitiveUpcast)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PolymorphicCastRegistry::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:71,1
    - Dst: PolymorphicCastRegistry::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:72,1
    - Dst: std::make_shared<Sphynx>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:74,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:77,1
    - Dst: Any::tryCastWithRegistry
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:79,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:80,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:80,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:81,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 68
    functionDepth: 1
    functionLinenumber: 68
    functionLinenumberEnd: 82
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<Sphynx>
    - auto::value
    - EXPECT_TRUE
    - EXPECT_EQ
    - Any::cast
    - auto::has_value
    - Any::tryCastWithRegistry
    - PolymorphicCastRegistry::registerCast
    linkageType: ''
    returnType: void
    signature: void TEST(PolymorphicPortTest, AnyCast_DowncastWithRuntimeTypeCheck)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PolymorphicCastRegistry::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:87,1
    - Dst: PolymorphicCastRegistry::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:88,1
    - Dst: std::make_shared<Cat>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:90,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:92,1
    - Dst: Any::tryCastWithRegistry
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:92,1
    - Dst: std::make_shared<Dog>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:94,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:96,1
    - Dst: Any::tryCastWithRegistry
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 97
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<Cat>
    - std::make_shared<Dog>
    - EXPECT_FALSE
    - Any::tryCastWithRegistry
    - PolymorphicCastRegistry::registerCast
    linkageType: ''
    returnType: void
    signature: void TEST(PolymorphicPortTest, AnyCast_UnrelatedTypes)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 108
    functionName: CreateAnimal::CreateAnimal
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CreateAnimal(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:112,1
    - Dst: std::make_shared<Animal>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: CreateAnimal::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - setOutput
    - std::make_shared<Animal>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OutputPort<Animal::Ptr>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: CreateAnimal::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - OutputPort<Animal::Ptr>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 127
    functionName: CreateCat::CreateCat
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CreateCat(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:131,1
    - Dst: std::make_shared<Cat>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: CreateCat::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<Cat>
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OutputPort<Cat::Ptr>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:137,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 138
    functionName: CreateCat::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - OutputPort<Cat::Ptr>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 146
    functionName: CreateSphynx::CreateSphynx
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CreateSphynx(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:150,1
    - Dst: std::make_shared<Sphynx>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 152
    functionName: CreateSphynx::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<Sphynx>
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OutputPort<Sphynx::Ptr>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: CreateSphynx::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - OutputPort<Sphynx::Ptr>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: CreateDog::CreateDog
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CreateDog(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:169,1
    - Dst: std::make_shared<Dog>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 171
    functionName: CreateDog::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<Dog>
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OutputPort<Dog::Ptr>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:175,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 173
    functionDepth: 0
    functionLinenumber: 173
    functionLinenumberEnd: 176
    functionName: CreateDog::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - OutputPort<Dog::Ptr>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 184
    functionName: CreateCatAsAnimal::CreateCatAsAnimal
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CreateCatAsAnimal(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:188,1
    - Dst: TryDynamicCastPtr
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:188,1
    - Dst: std::make_shared<Cat>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 186
    functionDepth: 1
    functionLinenumber: 186
    functionLinenumberEnd: 190
    functionName: CreateCatAsAnimal::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<Cat>
    - setOutput
    - TryDynamicCastPtr
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OutputPort<Animal::Ptr>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 195
    functionName: CreateCatAsAnimal::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - OutputPort<Animal::Ptr>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: PrintAnimalName::PrintAnimalName
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PrintAnimalName(const std::string& name, const NodeConfig& config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:208,1
    - Dst: Animal::Ptr::name
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:212,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 214
    functionName: PrintAnimalName::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - Animal::Ptr::name
    - getInput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<Animal::Ptr>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:218,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 219
    functionName: PrintAnimalName::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - InputPort<Animal::Ptr>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 230
    functionName: PrintCatName::PrintCatName
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PrintCatName(const std::string& name, const NodeConfig& config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:235,1
    - Dst: Cat::Ptr::name
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:239,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 241
    functionName: PrintCatName::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - getInput
    - Cat::Ptr::name
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<Cat::Ptr>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 246
    functionName: PrintCatName::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - InputPort<Cat::Ptr>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 255
    functionDepth: 0
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionName: PrintDogName::PrintDogName
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PrintDogName(const std::string& name, const NodeConfig& config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:262,1
    - Dst: Dog::Ptr::name
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:266,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 268
    functionName: PrintDogName::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - Dog::Ptr::name
    - getInput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<Dog::Ptr>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 273
    functionName: PrintDogName::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - InputPort<Dog::Ptr>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:287,1
    - Dst: std::make_shared<PolymorphicCastRegistry>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:288,1
    - Dst: auto::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:289,1
    - Dst: auto::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:290,1
    - Dst: auto::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:291,1
    - Dst: auto::setPolymorphicCastRegistry
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 285
    functionDepth: 0
    functionLinenumber: 285
    functionLinenumberEnd: 294
    functionName: createBlackboardWithRegistry
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::create
    - auto::registerCast
    - std::make_shared<PolymorphicCastRegistry>
    - auto::setPolymorphicCastRegistry
    linkageType: ''
    returnType: Blackboard::Ptr
    signature: Blackboard::Ptr createBlackboardWithRegistry()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:287,1
    - Dst: std::make_shared<PolymorphicCastRegistry>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:288,1
    - Dst: auto::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:289,1
    - Dst: auto::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:290,1
    - Dst: auto::registerCast
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:291,1
    - Dst: auto::setPolymorphicCastRegistry
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 285
    functionDepth: 0
    functionLinenumber: 285
    functionLinenumberEnd: 294
    functionName: createBlackboardWithRegistry
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::create
    - auto::registerCast
    - std::make_shared<PolymorphicCastRegistry>
    - auto::setPolymorphicCastRegistry
    linkageType: ''
    returnType: Blackboard::Ptr
    signature: Blackboard::Ptr createBlackboardWithRegistry()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createBlackboardWithRegistry
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:299,1
    - Dst: std::make_shared<Cat>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:302,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:303,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:306,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:306,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:307,1
    - Dst: Animal::Ptr::name
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:307,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:311,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:311,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:312,1
    - Dst: Cat::Ptr::name
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:312,1
    - Dst: ASSERT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:316,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:316,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 297
    functionDepth: 1
    functionLinenumber: 297
    functionLinenumberEnd: 317
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<Cat>
    - ASSERT_ANY_THROW
    - auto::set
    - createBlackboardWithRegistry
    - ASSERT_EQ
    - auto::get
    - ASSERT_TRUE
    - Animal::Ptr::name
    - Cat::Ptr::name
    linkageType: ''
    returnType: void
    signature: void TEST(PolymorphicPortTest, Blackboard_UpcastAndDowncast)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createBlackboardWithRegistry
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:321,1
    - Dst: std::make_shared<Sphynx>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:323,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:324,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:328,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:328,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:329,1
    - Dst: Animal::Ptr::name
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:329,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:333,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:333,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:334,1
    - Dst: Cat::Ptr::name
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:334,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:338,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:338,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:339,1
    - Dst: Sphynx::Ptr::name
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:339,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 319
    functionDepth: 1
    functionLinenumber: 319
    functionLinenumberEnd: 340
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<Sphynx>
    - auto::set
    - createBlackboardWithRegistry
    - ASSERT_EQ
    - Sphynx::Ptr::name
    - auto::get
    - ASSERT_TRUE
    - Animal::Ptr::name
    - Cat::Ptr::name
    linkageType: ''
    returnType: void
    signature: void TEST(PolymorphicPortTest, Blackboard_TransitiveUpcast)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterAnimalHierarchy
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:360,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:361,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:362,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:363,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:365,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:366,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:368,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:369,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:370,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 371
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - RegisterAnimalHierarchy
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PolymorphicPortTest, XML_ValidUpcast)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterAnimalHierarchy
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:386,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:387,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:388,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:390,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:391,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:393,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:394,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 373
    functionDepth: 1
    functionLinenumber: 373
    functionLinenumberEnd: 395
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - RegisterAnimalHierarchy
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PolymorphicPortTest, XML_TransitiveUpcast)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BidirectionalPort<Animal::Ptr>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:411,1
    - Dst: RegisterAnimalHierarchy
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:426,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:427,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:428,1
    - Dst: ASSERT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:430,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 431
      start: 397
    functionDepth: 1
    functionLinenumber: 397
    functionLinenumberEnd: 431
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_ANY_THROW
    - BehaviorTreeFactory::createTreeFromText
    - RegisterAnimalHierarchy
    - BidirectionalPort<Animal::Ptr>
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PolymorphicPortTest, XML_InoutRejectsTypeMismatch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 404
    functionName: UpdateAnimal::UpdateAnimal
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void UpdateAnimal(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 408
    functionName: UpdateAnimal::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BidirectionalPort<Animal::Ptr>
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:411,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 409
    functionDepth: 0
    functionLinenumber: 409
    functionLinenumberEnd: 412
    functionName: UpdateAnimal::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - BidirectionalPort<Animal::Ptr>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:446,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:447,1
    - Dst: ASSERT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:449,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:449,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 450
      start: 433
    functionDepth: 0
    functionLinenumber: 433
    functionLinenumberEnd: 450
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_ANY_THROW
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PolymorphicPortTest, XML_InvalidConnection_UnrelatedTypes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterAnimalHierarchy
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:465,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:466,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:467,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:469,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:470,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:472,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:473,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 452
    functionDepth: 1
    functionLinenumber: 452
    functionLinenumberEnd: 474
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - RegisterAnimalHierarchy
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PolymorphicPortTest, XML_DowncastSucceedsAtRuntime)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterAnimalHierarchy
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:489,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:490,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:491,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:493,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:495,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp:495,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 476
    functionDepth: 1
    functionLinenumber: 476
    functionLinenumberEnd: 496
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - RegisterAnimalHierarchy
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(PolymorphicPortTest, XML_DowncastFailsAtRuntime)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:14,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:14,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:15,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:15,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:16,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:16,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:17,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:17,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:18,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:18,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:19,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:19,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:20,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:20,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 11
    functionDepth: 0
    functionLinenumber: 11
    functionLinenumberEnd: 21
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - findForbiddenChar
    - EXPECT_EQ
    linkageType: ''
    returnType: void
    signature: void TEST(NameValidation, ForbiddenCharDetection_ValidNames)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:26,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:26,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:27,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:27,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:28,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:28,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:29,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:29,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:30,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 31
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - findForbiddenChar
    - EXPECT_EQ
    linkageType: ''
    returnType: void
    signature: void TEST(NameValidation, ForbiddenCharDetection_Unicode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:36,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:36,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:37,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:37,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:38,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:38,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:39,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:39,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:42,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:42,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:43,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:43,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:44,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:44,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:45,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:45,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:46,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:46,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:49,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:49,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:50,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:50,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:51,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:51,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:52,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:52,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:53,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:53,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:54,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:54,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:57,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:57,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:58,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 59
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - findForbiddenChar
    - EXPECT_EQ
    linkageType: ''
    returnType: void
    signature: void TEST(NameValidation, ForbiddenCharDetection_ForbiddenChars)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:67,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:67,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:73,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:73,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:79,1
    - Dst: findForbiddenChar
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 80
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - findForbiddenChar
    - EXPECT_EQ
    linkageType: ''
    returnType: void
    signature: void TEST(NameValidation, ForbiddenCharDetection_ControlChars)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:86,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:86,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:87,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:87,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:88,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:88,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:89,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 90
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_TRUE
    - IsAllowedPortName
    linkageType: ''
    returnType: void
    signature: void TEST(NameValidation, IsAllowedPortName_Valid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:95,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:95,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:98,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:98,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:99,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:99,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:102,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:102,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:105,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:105,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:106,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:106,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:107,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:107,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:108,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:108,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:109,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:109,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:110,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:110,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:111,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:111,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:112,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:112,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:113,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:113,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:114,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:114,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:115,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:115,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:118,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:118,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:119,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:119,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:120,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 121
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - IsAllowedPortName
    - EXPECT_FALSE
    linkageType: ''
    returnType: void
    signature: void TEST(NameValidation, IsAllowedPortName_Invalid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:139,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 140
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_NO_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, ValidBehaviorTreeID)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:150,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 142
    functionDepth: 0
    functionLinenumber: 142
    functionLinenumberEnd: 151
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_NO_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, ValidBehaviorTreeID_WithUnderscore)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:161,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 162
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_Root)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:172,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 173
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_root_lowercase)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:183,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 184
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 184
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_WithSpace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:194,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 186
    functionDepth: 0
    functionLinenumber: 186
    functionLinenumberEnd: 195
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_WithPeriod)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:205,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 206
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_NO_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, ValidInstanceName)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:217,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 218
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_NO_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, ValidInstanceName_WithSpace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:229,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:229,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 230
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 230
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_NO_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, ValidInstanceName_WithPeriod)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:243,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:243,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 232
    functionDepth: 0
    functionLinenumber: 232
    functionLinenumberEnd: 244
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_NO_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, ValidSubTreeID)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:257,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 246
    functionDepth: 0
    functionLinenumber: 246
    functionLinenumberEnd: 258
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, InvalidSubTreeID_WithSpace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:270,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:270,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 262
    functionDepth: 0
    functionLinenumber: 262
    functionLinenumberEnd: 271
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_NO_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, UnicodeTreeID_Chinese)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:281,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:281,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 282
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_NO_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, UnicodeInstanceName_Japanese)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:292,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 293
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_NO_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, UnicodeTreeID_German)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:313,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 314
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_NO_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, ValidSubTreePortName)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:329,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:329,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 316
    functionDepth: 0
    functionLinenumber: 316
    functionLinenumberEnd: 330
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, InvalidSubTreePortName_WithSpace)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:345,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 332
    functionDepth: 0
    functionLinenumber: 332
    functionLinenumberEnd: 346
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, InvalidSubTreePortName_Reserved)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:361,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_name_validation.cpp:361,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 362
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_name_validation.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(NameValidationXMLTest, InvalidSubTreePortName_StartsWithDigit)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionName: BB_TestNode::BB_TestNode
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BB_TestNode(const std::string& name, const NodeConfig& config)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getInput<int>
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:32,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:35,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:35,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:37,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:38,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:40,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 43
    functionName: BB_TestNode::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - getInput<int>
    - auto::value
    - auto::error
    - RuntimeError
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<int>
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:47,1
    - Dst: BT::OutputPort<int>
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: BB_TestNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - BT::OutputPort<int>
    - BT::InputPort<int>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:53,1
    - Dst: assignDefaultRemapping<BB_TestNode>
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:56,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:59,1
    - Dst: BB_TestNode::executeTick
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:64,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:66,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 67
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - auto::set
    - BB_TestNode::executeTick
    - BT::Blackboard::create
    - assignDefaultRemapping<BB_TestNode>
    - ASSERT_EQ
    - auto::get
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, GetInputsFromBlackboard)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:71,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:78,1
    - Dst: BB_TestNode::executeTick
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:81,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:83,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 84
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - auto::set
    - BB_TestNode::executeTick
    - BT::Blackboard::create
    - ASSERT_EQ
    - auto::get
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, BasicRemapping)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:88,1
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:94,1
    - Dst: BB_TestNode::executeTick
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:94,1
    - Dst: BB_TestNode::executeTick
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:100,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:102,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 103
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - BB_TestNode::executeTick
    - BT::Blackboard::create
    - ASSERT_EQ
    - auto::get
    - EXPECT_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, GetInputsFromText)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:120,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:122,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:124,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:125,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 126
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::create
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, SetOutputFromText)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:132,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:151,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:153,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:154,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:156,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:157,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:157,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:158,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 159
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - BT::Blackboard::create
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - auto::get
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, WithFactory)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:164,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 175
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, TypoInPortName)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:182,1
    - Dst: use_count
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - std::shared_ptr<int>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 185
    functionName: RefCountClass::RefCountClass
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - use_count
    - std::move
    linkageType: ''
    returnType: void
    signature: void RefCountClass(std::shared_ptr<int> value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: use_count
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - RefCountClass
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 190
    functionName: RefCountClass::RefCountClass
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - use_count
    linkageType: ''
    returnType: void
    signature: void RefCountClass(const RefCountClass& from)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: use_count
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:197,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - RefCountClass
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 200
    functionName: '& operator=(const RefCountClass& from)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - use_count
    linkageType: ''
    returnType: RefCountClass
    signature: RefCountClass & operator=(const RefCountClass& from)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 202
    functionDepth: 0
    functionLinenumber: 202
    functionLinenumberEnd: 202
    functionName: RefCountClass::RefCountClass
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RefCountClass(RefCountClass&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 203
    functionName: '& operator=(RefCountClass&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RefCountClass
    signature: RefCountClass & operator=(RefCountClass&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 208
    functionName: ~RefCountClass()
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RefCountClass()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: use_count
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:212,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 213
    functionName: RefCountClass::refCount
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - use_count
    linkageType: ''
    returnType: long
    signature: long refCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:221,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:225,1
    - Dst: RefCountClass::refCount
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:225,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:228,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:231,1
    - Dst: RefCountClass::refCount
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:231,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:233,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:235,1
    - Dst: RefCountClass::refCount
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 219
    functionDepth: 1
    functionLinenumber: 219
    functionLinenumberEnd: 236
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - auto::set
    - BT::Blackboard::create
    - RefCountClass::refCount
    - ASSERT_EQ
    - auto::get
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, MoveVsCopy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:244,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 248
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_TRUE
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, CheckTypeSafety)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:254,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:258,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:260,1
    - Dst: std::chrono::system_clock::now
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:266,1
    - Dst: std::chrono::system_clock::now
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:267,1
    - Dst: auto::getAnyLocked
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:269,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:270,1
    - Dst: std::thread
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:276,1
    - Dst: func
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:277,1
    - Dst: auto::join
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:278,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:281,1
    - Dst: std::chrono::system_clock::now
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:288,1
    - Dst: std::chrono::system_clock::now
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:289,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:291,1
    - Dst: std::thread
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:297,1
    - Dst: func
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:298,1
    - Dst: auto::join
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:299,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:301,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 303
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - std::thread
    - auto::set
    - BT::Blackboard::create
    - std::chrono::system_clock::now
    - func
    - ASSERT_EQ
    - auto::join
    - auto::get
    - std::chrono::milliseconds
    - ASSERT_NE
    - auto::getAnyLocked
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, AnyPtrLocked)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:308,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:311,1
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:313,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 306
    functionDepth: 1
    functionLinenumber: 306
    functionLinenumberEnd: 314
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::create
    - ASSERT_NO_THROW
    - auto::set
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, SetStringView)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:318,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:334,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:335,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:336,1
    - Dst: blackboard::debugMessage
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:340,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:343,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:344,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:344,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 345
      start: 316
    functionDepth: 1
    functionLinenumber: 316
    functionLinenumberEnd: 345
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTree
    - auto::tickWhileRunning
    - auto::rootBlackboard
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - blackboard::debugMessage
    linkageType: ''
    returnType: void
    signature: void TEST(ParserTest, Issue605_whitespaces)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfiguration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 350
    functionDepth: 0
    functionLinenumber: 350
    functionLinenumberEnd: 352
    functionName: ComparisonNode::ComparisonNode
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ComparisonNode(const std::string& name, const BT::NodeConfiguration&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<int32_t>
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:356,1
    - Dst: BT::InputPort<int32_t>
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:356,1
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 354
    functionDepth: 0
    functionLinenumber: 354
    functionLinenumberEnd: 358
    functionName: ComparisonNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<std::string>
    - BT::InputPort<int32_t>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:365,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:365,1
    - Dst: getInput
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:366,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:368,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 381
      start: 360
    functionDepth: 0
    functionLinenumber: 360
    functionLinenumberEnd: 381
    functionName: ComparisonNode::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - getInput
    - RuntimeError
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:386,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:402,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:403,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:404,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:405,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:407,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:408,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:408,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 384
    functionDepth: 1
    functionLinenumber: 384
    functionLinenumberEnd: 409
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTree
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::registerNodeType
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, IssueSetBlackboard)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:424,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:425,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:427,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:432,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:433,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 421
    functionDepth: 1
    functionLinenumber: 421
    functionLinenumberEnd: 437
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 4
    functionsReached:
    - RuntimeError
    - auto::size
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: Point
    signature: Point convertFromString(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:424,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:425,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:427,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:432,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:433,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 437
      start: 421
    functionDepth: 1
    functionLinenumber: 421
    functionLinenumberEnd: 437
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 5
    functionsReached:
    - RuntimeError
    - auto::size
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: Point
    signature: Point convertFromString(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:442,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:451,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:452,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:453,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:454,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:457,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:459,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:461,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:463,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:464,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:465,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 440
    functionDepth: 1
    functionLinenumber: 440
    functionLinenumberEnd: 466
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - get
    - auto::subtrees::front
    - BT::BehaviorTreeFactory::createTree
    - set
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::registerNodeType
    - auto::tickOnce
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, SetBlackboard_Issue725)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:470,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:477,1
    - Dst: ASSERT_ANY_THROW
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:482,1
    - Dst: BB_TestNode::executeTick
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:482,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 468
    functionDepth: 1
    functionLinenumber: 468
    functionLinenumberEnd: 483
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::create
    - ASSERT_ANY_THROW
    - auto::set
    - BB_TestNode::executeTick
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, NullOutputRemapping)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:487,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:506,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:507,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:508,1
    - Dst: BlackboardBackup
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:511,1
    - Dst: blackboard::getKeys
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:517,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:519,1
    - Dst: string
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:519,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:521,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:524,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:526,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:529,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:529,1
    - Dst: auto::subtrees::size
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:529,1
    - Dst: BlackboardRestore
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:530,1
    - Dst: auto::subtrees::size
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:532,1
    - Dst: blackboard::getKeys
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:534,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:535,1
    - Dst: size
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:535,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:535,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:536,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:538,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:541,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:542,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 485
    functionDepth: 1
    functionLinenumber: 485
    functionLinenumberEnd: 543
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTree
    - string
    - auto::tickWhileRunning
    - std::vector::push_back
    - ASSERT_EQ
    - size
    - BT::BehaviorTreeFactory::registerNodeType
    - auto::subtrees::size
    - BlackboardRestore
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - BlackboardBackup
    - blackboard::getKeys
    - auto::size
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, BlackboardBackup)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:547,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:583,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:584,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:585,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:586,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:588,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:589,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:591,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:591,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:592,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:592,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:593,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:593,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:594,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:594,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:595,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:595,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 545
    functionDepth: 1
    functionLinenumber: 545
    functionLinenumberEnd: 596
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTree
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::registerNodeType
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, RootBlackboard)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:600,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:604,1
    - Dst: auto::getStamped
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:604,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:605,1
    - Dst: auto::getStamped
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:605,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:607,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:608,1
    - Dst: auto::getStamped
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:609,1
    - Dst: auto::getStamped
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:610,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:612,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:613,1
    - Dst: ASSERT_GE
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:614,1
    - Dst: auto::stamp::time::count
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:614,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:616,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:617,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:618,1
    - Dst: ASSERT_GE
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:619,1
    - Dst: auto::time::count
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:619,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:622,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:623,1
    - Dst: auto::getStamped
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:624,1
    - Dst: auto::getStamped
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:625,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:627,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:628,1
    - Dst: ASSERT_GE
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:629,1
    - Dst: auto::stamp::time::count
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:629,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:631,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:632,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:633,1
    - Dst: ASSERT_GE
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:634,1
    - Dst: auto::time::count
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:634,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 635
      start: 598
    functionDepth: 1
    functionLinenumber: 598
    functionLinenumberEnd: 635
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - auto::getStamped
    - auto::set
    - BT::Blackboard::create
    - std::chrono::steady_clock::now
    - ASSERT_EQ
    - ASSERT_FALSE
    - ASSERT_GE
    - ASSERT_TRUE
    - auto::stamp::time::count
    - auto::time::count
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, TimestampedInterface)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:639,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:652,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:653,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:654,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:658,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:659,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:661,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:662,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:665,1
    - Dst: ASSERT_GT
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:669,1
    - Dst: auto::count
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:669,1
    - Dst: auto::count
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:669,1
    - Dst: ASSERT_GT
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:670,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 671
      start: 637
    functionDepth: 1
    functionLinenumber: 637
    functionLinenumberEnd: 671
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - auto::tickExactlyOnce
    - auto::subtrees::front
    - BT::BehaviorTreeFactory::createTree
    - auto::count
    - auto::tickWhileRunning
    - set
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - ASSERT_GT
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - getEntry
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, SetBlackboard_Upd_Ts_SeqId)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 682
      start: 680
    functionDepth: 0
    functionLinenumber: 680
    functionLinenumberEnd: 682
    functionName: UpdatePosition::UpdatePosition
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void UpdatePosition(const std::string& name, const BT::NodeConfig&
      config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<Point>
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:686,1
    - Dst: auto::has_value
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:687,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:689,1
    - Dst: getInput<double>
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:690,1
    - Dst: getInput<double>
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:691,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:692,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 684
    functionDepth: 1
    functionLinenumber: 684
    functionLinenumberEnd: 694
    functionName: UpdatePosition::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - getInput<Point>
    - auto::value
    - auto::has_value
    - getInput<double>
    - setOutput
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<Point>
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:698,1
    - Dst: BT::InputPort<double>
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:699,1
    - Dst: BT::InputPort<double>
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:699,1
    - Dst: BT::OutputPort<Point>
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:700,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 696
    functionDepth: 0
    functionLinenumber: 696
    functionLinenumberEnd: 701
    functionName: UpdatePosition::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<double>
    - BT::OutputPort<Point>
    - BT::InputPort<Point>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:708,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:735,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:736,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:737,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:738,1
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:741,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:741,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:743,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:744,1
    - Dst: auto::value::type
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:744,1
    - Dst: typeid
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:744,1
    - Dst: auto::value::cast
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:746,1
    - Dst: auto::value::cast
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:747,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:748,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:749,1
    - Dst: ASSERT_NO_THROW
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:752,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:752,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 706
    functionDepth: 1
    functionLinenumber: 706
    functionLinenumberEnd: 753
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - auto::tickExactlyOnce
    - auto::subtrees::front
    - BT::BehaviorTreeFactory::createTree
    - typeid
    - auto::value::type
    - auto::tickWhileRunning
    - ASSERT_EQ
    - BT::BehaviorTreeFactory::registerNodeType
    - auto::value::cast
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - getEntry
    - ASSERT_NO_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, SetBlackboard_WithPortRemapping)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:759,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:760,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:763,1
    - Dst: auto::addSubtreeRemapping
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:764,1
    - Dst: testing::internal::CaptureStdout
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:767,1
    - Dst: auto::debugMessage
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:768,1
    - Dst: testing::internal::GetCapturedStdout
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:769,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:772,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:772,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:774,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:774,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:777,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:777,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 781
      start: 756
    functionDepth: 1
    functionLinenumber: 756
    functionLinenumberEnd: 781
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - testing::internal::CaptureStdout
    - auto::set
    - BT::Blackboard::create
    - EXPECT_TRUE
    - std::string::find
    - auto::debugMessage
    - testing::internal::GetCapturedStdout
    - auto::addSubtreeRemapping
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, DebugMessageShowsRemappedEntries_Issue408)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 791
      start: 789
    functionDepth: 0
    functionLinenumber: 789
    functionLinenumberEnd: 791
    functionName: ActionWithLockedPort::ActionWithLockedPort
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ActionWithLockedPort(const std::string& name, const NodeConfig&
      config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getLockedPortContent
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:795,1
    - Dst: auto::assign
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:803,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 805
      start: 793
    functionDepth: 0
    functionLinenumber: 793
    functionLinenumberEnd: 805
    functionName: ActionWithLockedPort::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - getLockedPortContent
    - auto::assign
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BidirectionalPort<int>
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 810
      start: 807
    functionDepth: 0
    functionLinenumber: 807
    functionLinenumberEnd: 810
    functionName: ActionWithLockedPort::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - BidirectionalPort<int>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:826,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:827,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:828,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:830,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:832,1
    - Dst: dynamic_cast<ActionWithLockedPort*>
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:834,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:834,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:836,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:841,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_blackboard.cpp:841,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 842
      start: 815
    functionDepth: 1
    functionLinenumber: 815
    functionLinenumberEnd: 842
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    functionUses: 0
    functionsReached:
    - get
    - BehaviorTreeFactory::createTreeFromText
    - auto::subtrees::front
    - auto::tickWhileRunning
    - dynamic_cast<ActionWithLockedPort*>
    - ASSERT_EQ
    - BehaviorTreeFactory::registerNodeType
    - ASSERT_TRUE
    - auto::rootBlackboard
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardTest, GetLockedPortContentWithDefault_Issue942)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 2
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: IfThenElseTest::SetUp
    functionSourceFile: /src/behaviortreecpp/tests/gtest_if_then_else.cpp
    functionUses: 0
    functionsReached:
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void SetUp() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:47,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:48,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:50,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:51,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 53
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_if_then_else.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(IfThenElseTest, ConditionTrue_ThenBranch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:69,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:70,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:72,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:73,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 75
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_if_then_else.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(IfThenElseTest, ConditionFalse_ElseBranch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:90,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:91,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:93,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 95
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_if_then_else.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(IfThenElseTest, ConditionFalse_TwoChildren_ReturnsFailure)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:111,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:112,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:114,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 116
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_if_then_else.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(IfThenElseTest, ThenBranchFails)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:132,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:133,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:135,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 137
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_if_then_else.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(IfThenElseTest, ElseBranchFails)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: registerSimpleCondition
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:143,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:164,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:167,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:168,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:169,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:172,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:173,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:174,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 175
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_if_then_else.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - auto::tickOnce
    - createTreeFromText
    - registerSimpleCondition
    linkageType: ''
    returnType: void
    signature: void TEST_F(IfThenElseTest, ConditionRunning)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:191,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:194,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:195,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:196,1
    - Dst: auto::haltTree
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:199,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:200,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:201,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:202,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 177
    functionDepth: 0
    functionLinenumber: 177
    functionLinenumberEnd: 203
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_if_then_else.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - auto::haltTree
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(IfThenElseTest, HaltBehavior)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:217,1
    - Dst: ASSERT_THROW
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:219,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:219,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 220
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_if_then_else.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - createTreeFromText
    - ASSERT_THROW
    linkageType: ''
    returnType: void
    signature: void TEST_F(IfThenElseTest, InvalidChildCount_One)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:237,1
    - Dst: ASSERT_THROW
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:239,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_if_then_else.cpp:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 240
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_if_then_else.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - createTreeFromText
    - ASSERT_THROW
    linkageType: ''
    returnType: void
    signature: void TEST_F(IfThenElseTest, InvalidChildCount_Four)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:31,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:33,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 35
    functionName: SimpleSequenceTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - milliseconds
    - addChild
    linkageType: ''
    returnType: void
    signature: void SimpleSequenceTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: ~SimpleSequenceTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SimpleSequenceTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: SimpleSequenceTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleSequenceTest(const SimpleSequenceTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: '& operator=(const SimpleSequenceTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleSequenceTest
    signature: SimpleSequenceTest & operator=(const SimpleSequenceTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: SimpleSequenceTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleSequenceTest(SimpleSequenceTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: '& operator=(SimpleSequenceTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleSequenceTest
    signature: SimpleSequenceTest & operator=(SimpleSequenceTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:54,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:59,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:61,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:62,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 65
    functionName: ComplexSequenceTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - milliseconds
    - addChild
    linkageType: ''
    returnType: void
    signature: void ComplexSequenceTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: ~ComplexSequenceTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ComplexSequenceTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: ComplexSequenceTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ComplexSequenceTest(const ComplexSequenceTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: '& operator=(const ComplexSequenceTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ComplexSequenceTest
    signature: ComplexSequenceTest & operator=(const ComplexSequenceTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: ComplexSequenceTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ComplexSequenceTest(ComplexSequenceTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 70
    functionName: '& operator=(ComplexSequenceTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ComplexSequenceTest
    signature: ComplexSequenceTest & operator=(ComplexSequenceTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:84,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:86,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:88,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:89,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:90,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 92
    functionName: SequenceTripleActionTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - milliseconds
    - addChild
    linkageType: ''
    returnType: void
    signature: void SequenceTripleActionTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 93
    functionName: ~SequenceTripleActionTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SequenceTripleActionTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 94
    functionName: SequenceTripleActionTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SequenceTripleActionTest(const SequenceTripleActionTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: '& operator=(const SequenceTripleActionTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SequenceTripleActionTest
    signature: SequenceTripleActionTest & operator=(const SequenceTripleActionTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: SequenceTripleActionTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SequenceTripleActionTest(SequenceTripleActionTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: '& operator=(SequenceTripleActionTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SequenceTripleActionTest
    signature: SequenceTripleActionTest & operator=(SequenceTripleActionTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:113,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:114,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:120,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:122,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:123,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:125,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:127,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 130
    functionName: ComplexSequence2ActionsTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - milliseconds
    - addChild
    linkageType: ''
    returnType: void
    signature: void ComplexSequence2ActionsTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 131
    functionName: ~ComplexSequence2ActionsTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ComplexSequence2ActionsTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 132
    functionName: ComplexSequence2ActionsTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ComplexSequence2ActionsTest(const ComplexSequence2ActionsTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 133
    functionName: '& operator=(const ComplexSequence2ActionsTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ComplexSequence2ActionsTest
    signature: ComplexSequence2ActionsTest & operator=(const ComplexSequence2ActionsTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 134
    functionName: ComplexSequence2ActionsTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ComplexSequence2ActionsTest(ComplexSequence2ActionsTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 135
    functionName: '& operator=(ComplexSequence2ActionsTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ComplexSequence2ActionsTest
    signature: ComplexSequence2ActionsTest & operator=(ComplexSequence2ActionsTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:145,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:147,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 149
    functionName: SimpleSequenceWithMemoryTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - milliseconds
    - addChild
    linkageType: ''
    returnType: void
    signature: void SimpleSequenceWithMemoryTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 150
    functionName: ~SimpleSequenceWithMemoryTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SimpleSequenceWithMemoryTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 151
    functionName: SimpleSequenceWithMemoryTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleSequenceWithMemoryTest(const SimpleSequenceWithMemoryTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 152
    functionName: '& operator=(const SimpleSequenceWithMemoryTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleSequenceWithMemoryTest
    signature: SimpleSequenceWithMemoryTest & operator=(const SimpleSequenceWithMemoryTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 153
    functionName: SimpleSequenceWithMemoryTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleSequenceWithMemoryTest(SimpleSequenceWithMemoryTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 154
    functionName: '& operator=(SimpleSequenceWithMemoryTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleSequenceWithMemoryTest
    signature: SimpleSequenceWithMemoryTest & operator=(SimpleSequenceWithMemoryTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:172,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:173,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:179,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:181,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:182,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:184,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:186,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 189
    functionName: ComplexSequenceWithMemoryTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - milliseconds
    - addChild
    linkageType: ''
    returnType: void
    signature: void ComplexSequenceWithMemoryTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 190
    functionDepth: 0
    functionLinenumber: 190
    functionLinenumberEnd: 190
    functionName: ~ComplexSequenceWithMemoryTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ComplexSequenceWithMemoryTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 191
    functionName: ComplexSequenceWithMemoryTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ComplexSequenceWithMemoryTest(const ComplexSequenceWithMemoryTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 192
    functionName: '& operator=(const ComplexSequenceWithMemoryTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ComplexSequenceWithMemoryTest
    signature: ComplexSequenceWithMemoryTest & operator=(const ComplexSequenceWithMemoryTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 193
    functionName: ComplexSequenceWithMemoryTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ComplexSequenceWithMemoryTest(ComplexSequenceWithMemoryTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 194
    functionName: '& operator=(ComplexSequenceWithMemoryTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ComplexSequenceWithMemoryTest
    signature: ComplexSequenceWithMemoryTest & operator=(ComplexSequenceWithMemoryTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:208,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:210,1
    - Dst: setSuccessThreshold
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:213,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:214,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:215,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:216,1
    - Dst: addChild
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 218
    functionName: SimpleParallelTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - setSuccessThreshold
    - milliseconds
    - addChild
    linkageType: ''
    returnType: void
    signature: void SimpleParallelTest()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 219
    functionName: ~SimpleParallelTest() override
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SimpleParallelTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 220
    functionDepth: 0
    functionLinenumber: 220
    functionLinenumberEnd: 220
    functionName: SimpleParallelTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleParallelTest(const SimpleParallelTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 221
    functionDepth: 0
    functionLinenumber: 221
    functionLinenumberEnd: 221
    functionName: '& operator=(const SimpleParallelTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleParallelTest
    signature: SimpleParallelTest & operator=(const SimpleParallelTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 222
    functionDepth: 0
    functionLinenumber: 222
    functionLinenumberEnd: 222
    functionName: SimpleParallelTest
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleParallelTest(SimpleParallelTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 223
      start: 223
    functionDepth: 0
    functionLinenumber: 223
    functionLinenumberEnd: 223
    functionName: '& operator=(SimpleParallelTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleParallelTest
    signature: SimpleParallelTest & operator=(SimpleParallelTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:232,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:234,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:234,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:235,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 228
    functionDepth: 0
    functionLinenumber: 228
    functionLinenumberEnd: 236
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    linkageType: ''
    returnType: void
    signature: void TEST_F(SimpleSequenceTest, ConditionTrue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:240,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:241,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:243,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:244,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:245,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:245,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:246,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:246,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 247
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(SimpleSequenceTest, ConditionTurnToFalse)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:251,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:253,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:255,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:255,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:256,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:256,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:257,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:257,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:258,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 259
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexSequenceTest, ComplexSequenceConditionsTrue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: system_clock::now
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:272,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:272,1
    - Dst: setTime
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:274,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:274,1
    - Dst: setTime
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:275,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:275,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:279,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:281,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:282,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:282,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:283,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:283,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:284,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:284,1
    - Dst: system_clock::now
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:287,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:289,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:289,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:290,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:293,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:296,1
    - Dst: tickCount
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:296,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:298,1
    - Dst: tickCount
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:298,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:299,1
    - Dst: tickCount
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:299,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:300,1
    - Dst: tickCount
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:300,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:302,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:302,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:303,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:303,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:304,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:304,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:305,1
    - Dst: system_clock::now
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:305,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 306
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 306
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - setTime
    - tickCount
    - ASSERT_EQ
    - status
    - std::this_thread::sleep_for
    - executeTick
    - ASSERT_TRUE
    - milliseconds
    - system_clock::now
    linkageType: ''
    returnType: void
    signature: void TEST_F(SequenceTripleActionTest, TripleAction)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:310,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:312,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:314,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:315,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:315,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:316,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:316,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:317,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:317,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:318,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:318,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:319,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:319,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:320,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:320,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:322,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:322,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:323,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:325,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:326,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:326,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:327,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:327,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:328,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:328,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:329,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:329,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:330,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:330,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:331,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:331,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:333,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 308
    functionDepth: 0
    functionLinenumber: 308
    functionLinenumberEnd: 334
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexSequence2ActionsTest, ConditionsTrue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:338,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:340,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:342,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:344,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:345,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:345,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:346,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:346,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:347,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:347,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:348,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 336
    functionDepth: 0
    functionLinenumber: 336
    functionLinenumberEnd: 349
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexSequenceTest, ComplexSequenceConditions1ToFalse)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:353,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:355,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:357,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:359,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:360,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:360,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:361,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:361,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:362,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:362,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:363,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:363,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 364
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexSequenceTest, ComplexSequenceConditions2ToFalse)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:368,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:369,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:369,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:371,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:372,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:372,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:373,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:373,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 366
    functionDepth: 0
    functionLinenumber: 366
    functionLinenumberEnd: 374
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - std::this_thread::sleep_for
    - executeTick
    - milliseconds
    linkageType: ''
    returnType: void
    signature: void TEST_F(SimpleSequenceWithMemoryTest, ConditionTrue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:378,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:380,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:381,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:381,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:382,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:382,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:384,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:385,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:387,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:388,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:388,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:389,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:389,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 376
    functionDepth: 0
    functionLinenumber: 376
    functionLinenumberEnd: 390
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(SimpleSequenceWithMemoryTest, ConditionTurnToFalse)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:394,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:396,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:397,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:397,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:398,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:398,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:399,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:399,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:400,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:400,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:401,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:401,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:402,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 392
    functionDepth: 0
    functionLinenumber: 392
    functionLinenumberEnd: 403
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexSequenceWithMemoryTest, ConditionsTrue)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:407,1
    - Dst: setExpectedResult
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:409,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:410,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:413,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:414,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:414,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:415,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:415,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:416,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:416,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:417,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:417,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:418,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:418,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:419,1
    - Dst: status
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 420
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - status
    - executeTick
    - setExpectedResult
    linkageType: ''
    returnType: void
    signature: void TEST_F(ComplexSequenceWithMemoryTest, Conditions1ToFalse)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:439,1
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:442,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:444,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:446,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:451,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:455,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:456,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:457,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_sequence.cpp:459,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 422
    functionDepth: 2
    functionLinenumber: 422
    functionLinenumberEnd: 460
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_sequence.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - auto::tickOnce
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void TEST(SequenceWithMemoryTest, Issue_636)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RegisterTestTick
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 2
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: WhileDoElseTest::SetUp
    functionSourceFile: /src/behaviortreecpp/tests/gtest_while_do_else.cpp
    functionUses: 0
    functionsReached:
    - RegisterTestTick
    linkageType: ''
    returnType: void
    signature: void SetUp() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:47,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:48,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:50,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:51,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:52,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 53
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_while_do_else.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(WhileDoElseTest, ConditionTrue_DoBranch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:69,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:70,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:72,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:73,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 75
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_while_do_else.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(WhileDoElseTest, ConditionFalse_ElseBranch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:90,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:91,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:93,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 95
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_while_do_else.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(WhileDoElseTest, ConditionFalse_TwoChildren_ReturnsFailure)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:111,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:112,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:114,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 116
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_while_do_else.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(WhileDoElseTest, DoBranchFails)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:132,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:133,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:135,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 137
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_while_do_else.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(WhileDoElseTest, ElseBranchFails)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerSimpleCondition
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:143,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:158,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:161,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:162,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:163,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 165
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_while_do_else.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - createTreeFromText
    - registerSimpleCondition
    linkageType: ''
    returnType: void
    signature: void TEST_F(WhileDoElseTest, ConditionChanges_HaltsElse)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerSimpleCondition
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:171,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:187,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:190,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:191,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:192,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 194
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_while_do_else.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - createTreeFromText
    - registerSimpleCondition
    linkageType: ''
    returnType: void
    signature: void TEST_F(WhileDoElseTest, ConditionChanges_HaltsDo)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:210,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:213,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:214,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:215,1
    - Dst: auto::haltTree
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:218,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:219,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:220,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:221,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 222
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 222
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_while_do_else.cpp
    functionUses: 0
    functionsReached:
    - ASSERT_EQ
    - auto::haltTree
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(WhileDoElseTest, HaltBehavior)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:236,1
    - Dst: ASSERT_THROW
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:238,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:238,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 239
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 239
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_while_do_else.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - createTreeFromText
    - ASSERT_THROW
    linkageType: ''
    returnType: void
    signature: void TEST_F(WhileDoElseTest, InvalidChildCount_One)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:256,1
    - Dst: ASSERT_THROW
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:258,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 259
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_while_do_else.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - createTreeFromText
    - ASSERT_THROW
    linkageType: ''
    returnType: void
    signature: void TEST_F(WhileDoElseTest, InvalidChildCount_Four)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: registerSimpleCondition
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:265,1
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:285,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:288,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:289,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:290,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:291,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:294,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:295,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_while_do_else.cpp:296,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 297
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_while_do_else.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - ASSERT_EQ
    - auto::tickOnce
    - createTreeFromText
    - registerSimpleCondition
    linkageType: ''
    returnType: void
    signature: void TEST_F(WhileDoElseTest, ConditionRunning)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - port_name
    argTypes:
    - std::string
    - BT::NodeConfig
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18
      start: 15
    functionDepth: 0
    functionLinenumber: 15
    functionLinenumberEnd: 18
    functionName: BT::test::SimpleCondition::SimpleCondition
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SimpleCondition(const std::string& name, const BT::NodeConfig&
      config,\n                  std::string port_name)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 22
    functionName: BT::test::SimpleCondition::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:25,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 27
    functionName: BT::test::SimpleCondition::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached:
    - get
    - config
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - port_name
    argTypes:
    - std::string
    - BT::NodeConfig
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: BT::test::AsyncTestAction::AsyncTestAction
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AsyncTestAction(const std::string& name, const BT::NodeConfig&
      config,\n                  std::string port_name)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: BT::test::AsyncTestAction::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: BT::test::AsyncTestAction::onStart
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus onStart() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:57,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 61
    functionName: BT::test::AsyncTestAction::onRunning
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached:
    - set
    - config
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus onRunning() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: BT::test::AsyncTestAction::onHalted
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void onHalted() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:89,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:90,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:91,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:93,1
    - Dst: Tree::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:96,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:97,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:98,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:101,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:101,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:102,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:102,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:105,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:105,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:106,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:106,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:109,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:109,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:110,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:110,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:113,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:113,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:115,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:115,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:116,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:116,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:118,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:118,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:119,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:119,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:121,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 122
    functionName: BT::test::TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached:
    - get
    - BehaviorTreeFactory::createTreeFromText
    - Tree::tickExactlyOnce
    - EXPECT_FALSE
    - set
    - EXPECT_TRUE
    - EXPECT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BT::TreeObserver::getStatistics
    - Tree::subtrees::front
    linkageType: ''
    returnType: void
    signature: void TEST(ReactiveBackchaining, EnsureWarm)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:153,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:154,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:155,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:156,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:157,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:159,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:160,1
    - Dst: blackboard::set
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:163,1
    - Dst: blackboard::set
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:164,1
    - Dst: blackboard::set
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:165,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:168,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:168,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:169,1
    - Dst: blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:169,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:170,1
    - Dst: blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:170,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:171,1
    - Dst: blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:171,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:174,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:174,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:177,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:177,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:178,1
    - Dst: blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:178,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:179,1
    - Dst: blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:179,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:182,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:182,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:185,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:185,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:186,1
    - Dst: blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:186,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:189,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 190
    functionName: BT::test::TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached:
    - Tree::tickExactlyOnce
    - EXPECT_FALSE
    - EXPECT_TRUE
    - EXPECT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - blackboard::get
    - BehaviorTreeFactory::createTree
    - blackboard::set
    linkageType: ''
    returnType: void
    signature: void TEST(ReactiveBackchaining, EnsureWarmWithEnsureHoldingHacket)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - port_name
    argTypes:
    - std::string
    - BT::NodeConfig
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18
      start: 15
    functionDepth: 0
    functionLinenumber: 15
    functionLinenumberEnd: 18
    functionName: BT::test::SimpleCondition::SimpleCondition
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void SimpleCondition(const std::string& name, const BT::NodeConfig&
      config,\n                  std::string port_name)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 22
    functionName: BT::test::SimpleCondition::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:25,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 27
    functionName: BT::test::SimpleCondition::tick
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached:
    - get
    - config
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - port_name
    argTypes:
    - std::string
    - BT::NodeConfig
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: BT::test::AsyncTestAction::AsyncTestAction
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void AsyncTestAction(const std::string& name, const BT::NodeConfig&
      config,\n                  std::string port_name)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: BT::test::AsyncTestAction::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: BT::test::AsyncTestAction::onStart
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus onStart() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:57,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:57,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 61
    functionName: BT::test::AsyncTestAction::onRunning
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached:
    - set
    - config
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus onRunning() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: BT::test::AsyncTestAction::onHalted
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void onHalted() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:89,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:90,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:91,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:93,1
    - Dst: Tree::subtrees::front
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:96,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:97,1
    - Dst: set
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:98,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:101,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:101,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:102,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:102,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:105,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:105,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:106,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:106,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:109,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:109,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:110,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:110,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:113,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:113,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:115,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:115,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:116,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:116,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:118,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:118,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:119,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:119,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:121,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:121,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 122
    functionName: BT::test::TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached:
    - get
    - BehaviorTreeFactory::createTreeFromText
    - Tree::tickExactlyOnce
    - EXPECT_FALSE
    - set
    - EXPECT_TRUE
    - EXPECT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BT::TreeObserver::getStatistics
    - Tree::subtrees::front
    linkageType: ''
    returnType: void
    signature: void TEST(ReactiveBackchaining, EnsureWarm)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:153,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:154,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:155,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:156,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:157,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:159,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:160,1
    - Dst: blackboard::set
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:163,1
    - Dst: blackboard::set
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:164,1
    - Dst: blackboard::set
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:165,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:168,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:168,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:169,1
    - Dst: blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:169,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:170,1
    - Dst: blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:170,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:171,1
    - Dst: blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:171,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:174,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:174,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:177,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:177,1
    - Dst: EXPECT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:178,1
    - Dst: blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:178,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:179,1
    - Dst: blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:179,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:182,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:182,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:185,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:185,1
    - Dst: EXPECT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:186,1
    - Dst: blackboard::get
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:186,1
    - Dst: EXPECT_EQ
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:189,1
    - Dst: Tree::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 124
    functionDepth: 1
    functionLinenumber: 124
    functionLinenumberEnd: 190
    functionName: BT::test::TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
    functionUses: 0
    functionsReached:
    - Tree::tickExactlyOnce
    - EXPECT_FALSE
    - EXPECT_TRUE
    - EXPECT_EQ
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - blackboard::get
    - BehaviorTreeFactory::createTree
    - blackboard::set
    linkageType: ''
    returnType: void
    signature: void TEST(ReactiveBackchaining, EnsureWarmWithEnsureHoldingHacket)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::chrono::high_resolution_clock::now
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: Now
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached:
    - std::chrono::high_resolution_clock::now
    linkageType: ''
    returnType: std::chrono::high_resolution_clock::time_point
    signature: std::chrono::high_resolution_clock::time_point Now()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 54
    functionName: TestNode::TestNode
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TestNode(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - will_succeed
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: TestNode::setExpectedResult
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setExpectedResult(bool will_succeed)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: TestNode::expectedResult
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus expectedResult() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: TestNode::resetTickCount
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void resetTickCount()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: TestNode::tickCount
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int tickCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TestNode::expectedResult
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 78
    functionName: TestNode::tickImpl
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached:
    - TestNode::expectedResult
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tickImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 90
    functionName: IsStuck::IsStuck
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IsStuck(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tickImpl
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: IsStuck::tick
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached:
    - tickImpl
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 102
    functionName: BackUpAndSpin::BackUpAndSpin
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BackUpAndSpin(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tickImpl
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: BackUpAndSpin::tick
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached:
    - tickImpl
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 114
    functionName: ComputePathToPose::ComputePathToPose
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ComputePathToPose(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tickImpl
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: ComputePathToPose::tick
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached:
    - tickImpl
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 128
    functionName: FollowPath::FollowPath
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FollowPath(const std::string& name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: status
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:132,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:134,1
    - Dst: Now
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:137,1
    - Dst: Now
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:141,1
    - Dst: Milliseconds
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:141,1
    - Dst: tickImpl
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:149,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 150
    functionName: FollowPath::tick
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached:
    - Milliseconds
    - setStatus
    - Now
    - tickImpl
    - status
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 155
    functionName: FollowPath::halt
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void halt() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: FollowPath::wasHalted
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool wasHalted() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Casted*>
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:171,1
    - Dst: dynamic_cast<Casted*>
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:173,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ptr
    - ' destination'
    argTypes:
    - Original*
    - Casted*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 175
    functionName: TryDynamicCastPtr
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 1
    functionsReached:
    - dynamic_cast<Casted*>
    linkageType: ''
    returnType: void
    signature: void TryDynamicCastPtr(Original* ptr, Casted*& destination)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::chrono::high_resolution_clock::now
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: Now
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 1
    functionsReached:
    - std::chrono::high_resolution_clock::now
    linkageType: ''
    returnType: std::chrono::high_resolution_clock::time_point
    signature: std::chrono::high_resolution_clock::time_point Now()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 54
    functionName: TestNode::TestNode
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TestNode(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - will_succeed
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: TestNode::setExpectedResult
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setExpectedResult(bool will_succeed)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: TestNode::expectedResult
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus expectedResult() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: TestNode::resetTickCount
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void resetTickCount()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: TestNode::tickCount
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int tickCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TestNode::expectedResult
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 78
    functionName: TestNode::tickImpl
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached:
    - TestNode::expectedResult
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tickImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 90
    functionName: IsStuck::IsStuck
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IsStuck(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tickImpl
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 95
    functionName: IsStuck::tick
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached:
    - tickImpl
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 102
    functionName: BackUpAndSpin::BackUpAndSpin
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BackUpAndSpin(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tickImpl
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: BackUpAndSpin::tick
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached:
    - tickImpl
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 114
    functionName: ComputePathToPose::ComputePathToPose
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ComputePathToPose(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tickImpl
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 119
    functionName: ComputePathToPose::tick
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached:
    - tickImpl
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 128
    functionName: FollowPath::FollowPath
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FollowPath(const std::string& name)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: status
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:132,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:134,1
    - Dst: Now
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:137,1
    - Dst: Now
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:141,1
    - Dst: Milliseconds
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:141,1
    - Dst: tickImpl
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:149,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 150
    functionName: FollowPath::tick
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached:
    - Milliseconds
    - setStatus
    - Now
    - tickImpl
    - status
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 151
    functionDepth: 0
    functionLinenumber: 151
    functionLinenumberEnd: 155
    functionName: FollowPath::halt
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void halt() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: FollowPath::wasHalted
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool wasHalted() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<Casted*>
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:171,1
    - Dst: dynamic_cast<Casted*>
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:173,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ptr
    - ' destination'
    argTypes:
    - Original*
    - Casted*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 169
    functionDepth: 0
    functionLinenumber: 169
    functionLinenumberEnd: 175
    functionName: TryDynamicCastPtr
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 1
    functionsReached:
    - dynamic_cast<Casted*>
    linkageType: ''
    returnType: void
    signature: void TryDynamicCastPtr(Original* ptr, Casted*& destination)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:185,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:186,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:187,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:188,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:190,1
    - Dst: get
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:204,1
    - Dst: TryDynamicCastPtr
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:208,1
    - Dst: TryDynamicCastPtr
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:212,1
    - Dst: TryDynamicCastPtr
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:214,1
    - Dst: TryDynamicCastPtr
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:215,1
    - Dst: TryDynamicCastPtr
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:216,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:220,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:221,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:222,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:223,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:224,1
    - Dst: IsStuck*::setExpectedResult
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:231,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:235,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:236,1
    - Dst: Milliseconds
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:236,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:240,1
    - Dst: ASSERT_GE
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:242,1
    - Dst: IsStuck*::tickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:242,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:244,1
    - Dst: IsStuck*::tickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:244,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:245,1
    - Dst: BackUpAndSpin*::tickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:245,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:247,1
    - Dst: ComputePathToPose*::tickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:247,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:248,1
    - Dst: FollowPath*::tickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:248,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:249,1
    - Dst: FollowPath*::wasHalted
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:249,1
    - Dst: IsStuck*::resetTickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:256,1
    - Dst: IsStuck*::resetTickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:257,1
    - Dst: ComputePathToPose*::resetTickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:258,1
    - Dst: FollowPath*::resetTickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:259,1
    - Dst: BackUpAndSpin*::resetTickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:260,1
    - Dst: IsStuck*::setExpectedResult
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:269,1
    - Dst: IsStuck*::setExpectedResult
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:270,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:272,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:273,1
    - Dst: Milliseconds
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:273,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:277,1
    - Dst: ASSERT_GE
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:280,1
    - Dst: IsStuck*::tickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:280,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:282,1
    - Dst: IsStuck*::tickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:282,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:283,1
    - Dst: BackUpAndSpin*::tickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:283,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:286,1
    - Dst: ComputePathToPose*::tickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:286,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:288,1
    - Dst: FollowPath*::tickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:288,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:289,1
    - Dst: FollowPath*::wasHalted
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:289,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:291,1
    - Dst: ComputePathToPose*::status
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:291,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:292,1
    - Dst: FollowPath*::status
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:292,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:293,1
    - Dst: BackUpAndSpin*::status
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:293,1
    - Dst: IsStuck*::resetTickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:300,1
    - Dst: IsStuck*::resetTickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:301,1
    - Dst: ComputePathToPose*::resetTickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:302,1
    - Dst: FollowPath*::resetTickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:303,1
    - Dst: BackUpAndSpin*::resetTickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:304,1
    - Dst: IsStuck*::setExpectedResult
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:306,1
    - Dst: IsStuck*::setExpectedResult
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:307,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:311,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:312,1
    - Dst: Milliseconds
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:312,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:316,1
    - Dst: ASSERT_GE
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:318,1
    - Dst: IsStuck*::tickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:318,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:319,1
    - Dst: IsStuck*::tickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:319,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:320,1
    - Dst: BackUpAndSpin*::tickCount
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:320,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:322,1
    - Dst: ComputePathToPose*::status
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:322,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:323,1
    - Dst: FollowPath*::status
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:323,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:324,1
    - Dst: BackUpAndSpin*::status
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:324,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:325,1
    - Dst: FollowPath*::wasHalted
      Src: /src/behaviortreecpp/tests/navigation_test.cpp:325,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 79
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 181
    functionDepth: 1
    functionLinenumber: 181
    functionLinenumberEnd: 326
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/navigation_test.cpp
    functionUses: 0
    functionsReached:
    - get
    - BehaviorTreeFactory::registerNodeType
    - FollowPath*::tickCount
    - BackUpAndSpin*::tickCount
    - BehaviorTreeFactory::createTreeFromText
    - ComputePathToPose*::status
    - std::this_thread::sleep_for
    - ASSERT_FALSE
    - ASSERT_GE
    - ASSERT_TRUE
    - FollowPath*::resetTickCount
    - Milliseconds
    - ComputePathToPose*::resetTickCount
    - auto::tickWhileRunning
    - IsStuck*::tickCount
    - IsStuck*::setExpectedResult
    - FollowPath*::wasHalted
    - BackUpAndSpin*::resetTickCount
    - ComputePathToPose*::tickCount
    - BackUpAndSpin*::status
    - IsStuck*::resetTickCount
    - ASSERT_EQ
    - FollowPath*::status
    - TryDynamicCastPtr
    linkageType: ''
    returnType: void
    signature: void TEST(Navigationtest, MoveBaseRecovery)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:34,1
    - Dst: BT::BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:35,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:36,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:39,1
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:41,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 42
    functionName: throwRuntimeError
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp
    functionUses: 4
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickExactlyOnce
    - BT::BehaviorTreeFactory::registerSimpleAction
    - throwRuntimeError
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - EXPECT_THROW
    linkageType: ''
    returnType: void
    signature: void throwRuntimeError()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:34,1
    - Dst: BT::BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:35,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:36,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:39,1
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:41,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 42
    functionName: throwRuntimeError
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp
    functionUses: 5
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickExactlyOnce
    - BT::BehaviorTreeFactory::registerSimpleAction
    - throwRuntimeError
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - EXPECT_THROW
    linkageType: ''
    returnType: void
    signature: void throwRuntimeError()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_EXIT
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:47,1
    - Dst: std::async
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:49,1
    - Dst: auto::wait_for
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:50,1
    - Dst: std::exit
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:54,1
    - Dst: std::exit
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:56,1
    - Dst: ::testing::ExitedWithCode
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:58,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 59
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_EXIT
    - std::exit
    - auto::wait_for
    - std::async
    - ::testing::ExitedWithCode
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherTest, EnsureNoInfiniteLoopOnThrow)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:67,1
    - Dst: BT::BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:68,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:70,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:73,1
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:75,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:75,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 63
    functionDepth: 2
    functionLinenumber: 63
    functionLinenumberEnd: 77
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickExactlyOnce
    - BT::BehaviorTreeFactory::registerSimpleAction
    - throwRuntimeError
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - EXPECT_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherTest, DestructorCompletesAfterException)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:82,1
    - Dst: BT::BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:83,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:84,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:87,1
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:89,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:89,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 90
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickExactlyOnce
    - BT::BehaviorTreeFactory::registerSimpleAction
    - throwRuntimeError
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - EXPECT_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherTest, DestructorCompletesWithMultipleNodes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:97,1
    - Dst: BT::BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:98,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:100,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:102,1
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:104,1
    - Dst: auto::tickExactlyOnce
      Src: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp:104,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 106
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickExactlyOnce
    - BT::BehaviorTreeFactory::registerSimpleAction
    - throwRuntimeError
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - EXPECT_THROW
    linkageType: ''
    returnType: void
    signature: void TEST(Groot2PublisherTest, RapidCreateDestroy)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::filesystem::temp_directory_path
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:36,1
    - Dst: std::filesystem::create_directories
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 38
    functionName: LoggerTest::SetUp
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - std::filesystem::temp_directory_path
    - std::filesystem::create_directories
    linkageType: ''
    returnType: void
    signature: void SetUp() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::filesystem::remove_all
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionName: LoggerTest::TearDown
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - std::filesystem::remove_all
    linkageType: ''
    returnType: void
    signature: void TearDown() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 58
    functionName: LoggerTest::createSimpleTree
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - createTreeFromText
    linkageType: ''
    returnType: BT::Tree
    signature: BT::Tree createSimpleTree()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:65,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:71,1
    - Dst: StdCoutLogger::flush
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 75
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - createSimpleTree
    - StdCoutLogger::flush
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, StdCoutLogger_Creation)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:79,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:83,1
    - Dst: StdCoutLogger::enabled
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:83,1
    - Dst: StdCoutLogger::setEnabled
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:85,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:86,1
    - Dst: StdCoutLogger::enabled
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:86,1
    - Dst: StdCoutLogger::setEnabled
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:88,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:89,1
    - Dst: StdCoutLogger::enabled
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:89,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 92
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - createSimpleTree
    - StdCoutLogger::enabled
    - ASSERT_FALSE
    - StdCoutLogger::setEnabled
    - ASSERT_TRUE
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, StdCoutLogger_Enabled)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:96,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:100,1
    - Dst: StdCoutLogger::showsTransitionToIdle
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:100,1
    - Dst: StdCoutLogger::enableTransitionToIdle
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:102,1
    - Dst: ASSERT_FALSE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:103,1
    - Dst: StdCoutLogger::showsTransitionToIdle
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:103,1
    - Dst: StdCoutLogger::enableTransitionToIdle
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:105,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:106,1
    - Dst: StdCoutLogger::showsTransitionToIdle
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:106,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 109
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - createSimpleTree
    - ASSERT_FALSE
    - StdCoutLogger::showsTransitionToIdle
    - ASSERT_TRUE
    - StdCoutLogger::enableTransitionToIdle
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, StdCoutLogger_TransitionToIdle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:113,1
    - Dst: StdCoutLogger::setTimestampType
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:117,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:118,1
    - Dst: StdCoutLogger::setTimestampType
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:120,1
    - Dst: auto::haltTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:121,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 123
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - createSimpleTree
    - StdCoutLogger::setTimestampType
    - auto::haltTree
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, StdCoutLogger_TimestampType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:129,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:134,1
    - Dst: FileLogger2::flush
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:135,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:139,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:139,1
    - Dst: std::filesystem::file_size
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:142,1
    - Dst: ASSERT_GT
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 144
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - createSimpleTree
    - std::filesystem::file_size
    - std::filesystem::exists
    - ASSERT_TRUE
    - ASSERT_GT
    - FileLogger2::flush
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, FileLogger2_Creation)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:148,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 153
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 153
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - createSimpleTree
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, FileLogger2_WrongExtension)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:157,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:162,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:167,1
    - Dst: std::ifstream::is_open
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:167,1
    - Dst: std::ifstream::read
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:170,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 173
      start: 155
    functionDepth: 0
    functionLinenumber: 155
    functionLinenumberEnd: 173
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - std::ifstream::is_open
    - auto::tickWhileRunning
    - createSimpleTree
    - ASSERT_EQ
    - std::ifstream::read
    - ASSERT_TRUE
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, FileLogger2_FileHeader)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:177,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:186,1
    - Dst: auto::haltTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:187,1
    - Dst: FileLogger2::flush
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:189,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:192,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:192,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 175
    functionDepth: 0
    functionLinenumber: 175
    functionLinenumberEnd: 193
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - auto::haltTree
    - auto::tickWhileRunning
    - createSimpleTree
    - std::filesystem::exists
    - ASSERT_TRUE
    - FileLogger2::flush
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, FileLogger2_MultipleTicks)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:199,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:203,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:204,1
    - Dst: MinitraceLogger::flush
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:205,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:209,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:209,1
    - Dst: std::filesystem::file_size
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:212,1
    - Dst: ASSERT_GT
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 214
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - createSimpleTree
    - std::string::c_str
    - MinitraceLogger::flush
    - std::filesystem::exists
    - std::filesystem::file_size
    - ASSERT_TRUE
    - ASSERT_GT
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, MinitraceLogger_Creation)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:218,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:222,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:223,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:228,1
    - Dst: std::ifstream::is_open
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:228,1
    - Dst: std::istreambuf_iterator<char>
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:230,1
    - Dst: std::istreambuf_iterator<char>
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:231,1
    - Dst: ASSERT_NE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:234,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 216
    functionDepth: 1
    functionLinenumber: 216
    functionLinenumberEnd: 235
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - std::istreambuf_iterator<char>
    - std::ifstream::is_open
    - auto::tickWhileRunning
    - createSimpleTree
    - std::string::c_str
    - std::string::find
    - ASSERT_TRUE
    - ASSERT_NE
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, MinitraceLogger_JsonContent)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:252,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:256,1
    - Dst: MinitraceLogger::enableTransitionToIdle
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:257,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:258,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:261,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 237
    functionDepth: 0
    functionLinenumber: 237
    functionLinenumberEnd: 262
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - std::string::c_str
    - std::filesystem::exists
    - MinitraceLogger::enableTransitionToIdle
    - ASSERT_TRUE
    - createTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, MinitraceLogger_TransitionTypes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:268,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:273,1
    - Dst: SqliteLogger::flush
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:274,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:278,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 279
      start: 266
    functionDepth: 0
    functionLinenumber: 266
    functionLinenumberEnd: 279
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - createSimpleTree
    - std::filesystem::exists
    - ASSERT_TRUE
    - SqliteLogger::flush
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, SqliteLogger_Creation_db3)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:283,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:288,1
    - Dst: SqliteLogger::flush
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:289,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:293,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:293,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 281
    functionDepth: 0
    functionLinenumber: 281
    functionLinenumberEnd: 294
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - createSimpleTree
    - std::filesystem::exists
    - ASSERT_TRUE
    - SqliteLogger::flush
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, SqliteLogger_Creation_btdb)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:298,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 296
    functionDepth: 0
    functionLinenumber: 296
    functionLinenumberEnd: 303
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - createSimpleTree
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, SqliteLogger_WrongExtension)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:307,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:313,1
    - Dst: std::filesystem::file_size
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:316,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:321,1
    - Dst: std::filesystem::file_size
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:324,1
    - Dst: ASSERT_GT
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 326
      start: 305
    functionDepth: 0
    functionLinenumber: 305
    functionLinenumberEnd: 326
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - createSimpleTree
    - ASSERT_GT
    - std::filesystem::file_size
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, SqliteLogger_AppendMode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:330,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:336,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:342,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:346,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:346,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 347
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 347
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - createSimpleTree
    - std::filesystem::exists
    - ASSERT_TRUE
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, SqliteLogger_NoAppendMode)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:351,1
    - Dst: SqliteLogger::setAdditionalCallback
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:358,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:364,1
    - Dst: ASSERT_GT
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:367,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 349
    functionDepth: 0
    functionLinenumber: 349
    functionLinenumberEnd: 368
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - createSimpleTree
    - auto::tickWhileRunning
    - ASSERT_GT
    - SqliteLogger::setAdditionalCallback
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, SqliteLogger_ExtraCallback)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:372,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:377,1
    - Dst: SqliteLogger::execSqlStatement
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:380,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:383,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 370
    functionDepth: 0
    functionLinenumber: 370
    functionLinenumberEnd: 384
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - createSimpleTree
    - std::filesystem::exists
    - ASSERT_TRUE
    - SqliteLogger::execSqlStatement
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, SqliteLogger_ExecSqlStatement)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:388,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:396,1
    - Dst: auto::haltTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:397,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:401,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:401,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 386
    functionDepth: 0
    functionLinenumber: 386
    functionLinenumberEnd: 402
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - auto::haltTree
    - auto::tickWhileRunning
    - createSimpleTree
    - std::filesystem::exists
    - ASSERT_TRUE
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, SqliteLogger_MultipleTicks)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:408,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:417,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:420,1
    - Dst: StdCoutLogger::flush
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:422,1
    - Dst: FileLogger2::flush
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:423,1
    - Dst: MinitraceLogger::flush
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:424,1
    - Dst: SqliteLogger::flush
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:425,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:429,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:429,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:430,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:430,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:431,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:431,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 406
    functionDepth: 0
    functionLinenumber: 406
    functionLinenumberEnd: 432
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - createSimpleTree
    - std::string::c_str
    - MinitraceLogger::flush
    - std::filesystem::exists
    - StdCoutLogger::flush
    - ASSERT_TRUE
    - FileLogger2::flush
    - SqliteLogger::flush
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, MultipleLoggers)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:448,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:453,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:456,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:456,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 436
    functionDepth: 0
    functionLinenumber: 436
    functionLinenumberEnd: 457
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - std::filesystem::exists
    - ASSERT_TRUE
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, LoggerWithAsyncTree)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:470,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:475,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:478,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:478,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 461
    functionDepth: 0
    functionLinenumber: 461
    functionLinenumberEnd: 479
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - std::filesystem::exists
    - ASSERT_TRUE
    - createTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, Logger_EmptyTree)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: createSimpleTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:483,1
    - Dst: SqliteLogger::setEnabled
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:488,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:489,1
    - Dst: SqliteLogger::setEnabled
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:490,1
    - Dst: auto::haltTree
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:491,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:492,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:495,1
    - Dst: std::filesystem::exists
      Src: /src/behaviortreecpp/tests/gtest_loggers.cpp:495,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 496
      start: 481
    functionDepth: 0
    functionLinenumber: 481
    functionLinenumberEnd: 496
    functionName: TEST_F
    functionSourceFile: /src/behaviortreecpp/tests/gtest_loggers.cpp
    functionUses: 0
    functionsReached:
    - auto::haltTree
    - auto::tickWhileRunning
    - createSimpleTree
    - std::filesystem::exists
    - ASSERT_TRUE
    - SqliteLogger::setEnabled
    linkageType: ''
    returnType: void
    signature: void TEST_F(LoggerTest, Logger_DisabledDuringExecution)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: EXPECT_THROW
      Src: /src/behaviortreecpp/tests/gtest_xml_null_subtree_id.cpp:36,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_xml_null_subtree_id.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 37
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_xml_null_subtree_id.cpp
    functionUses: 0
    functionsReached:
    - EXPECT_THROW
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    linkageType: ''
    returnType: void
    signature: void TEST(XMLParserTest, SubTreeModelMissingID_Bug7)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:29,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:32,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:41,1
    - Dst: auto::unset
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:48,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:55,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:56,1
    - Dst: SUCCEED
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:59,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 60
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp
    functionUses: 0
    functionsReached:
    - auto::set
    - BT::Blackboard::create
    - auto::unset
    - SUCCEED
    - std::thread::join
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardThreadSafety, SetAndUnsetRace_Bug2)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:77,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:85,1
    - Dst: auto::unset
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:86,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:87,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:97,1
    - Dst: auto::getEntry
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:98,1
    - Dst: auto::value::empty
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:102,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:113,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:114,1
    - Dst: SUCCEED
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:116,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 117
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp
    functionUses: 0
    functionsReached:
    - auto::set
    - BT::Blackboard::create
    - auto::unset
    - SUCCEED
    - auto::value::empty
    - to_string
    - auto::getEntry
    - std::thread::join
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardThreadSafety, SetNewEntryWhileReading_Bug1_Bug8)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:128,1
    - Dst: std::condition_variable::notify_all
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:140,1
    - Dst: std::condition_variable::wait
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:141,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:143,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:149,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:150,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:153,1
    - Dst: ASSERT_TRUE
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:154,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 122
    functionDepth: 1
    functionLinenumber: 122
    functionLinenumberEnd: 156
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp
    functionUses: 0
    functionsReached:
    - auto::set
    - BT::Blackboard::create
    - auto::get
    - std::condition_variable::wait
    - ASSERT_TRUE
    - std::condition_variable::notify_all
    - std::thread::join
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardThreadSafety, TwoThreadsSetSameNewKey_Bug8)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:168,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:169,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:176,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:177,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:178,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:185,1
    - Dst: auto::getEntry
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:185,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:185,1
    - Dst: auto::cloneInto
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:194,1
    - Dst: value::empty
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:204,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:214,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:215,1
    - Dst: SUCCEED
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:217,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 218
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp
    functionUses: 0
    functionsReached:
    - auto::set
    - BT::Blackboard::create
    - SUCCEED
    - to_string
    - auto::getEntry
    - value::empty
    - std::thread::join
    - std::vector::push_back
    - auto::cloneInto
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardThreadSafety, CloneIntoWhileReading_Bug3)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:225,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:228,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:229,1
    - Dst: string
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:229,1
    - Dst: ExportBlackboardToJSON
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:232,1
    - Dst: auto::getEntry
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:235,1
    - Dst: ImportBlackboardFromJSON
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:242,1
    - Dst: auto::value::empty
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:251,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:259,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:260,1
    - Dst: SUCCEED
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:262,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 263
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp
    functionUses: 0
    functionsReached:
    - ImportBlackboardFromJSON
    - auto::set
    - string
    - BT::Blackboard::create
    - SUCCEED
    - auto::value::empty
    - auto::getEntry
    - ExportBlackboardToJSON
    - std::thread::join
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardThreadSafety, ImportJsonWhileReading_Bug4)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:269,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:276,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:277,1
    - Dst: auto::unset
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:280,1
    - Dst: testing::internal::CaptureStdout
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:289,1
    - Dst: auto::debugMessage
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:290,1
    - Dst: testing::internal::GetCapturedStdout
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:291,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:298,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:299,1
    - Dst: SUCCEED
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:301,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 302
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp
    functionUses: 0
    functionsReached:
    - testing::internal::CaptureStdout
    - auto::set
    - BT::Blackboard::create
    - auto::unset
    - SUCCEED
    - auto::debugMessage
    - testing::internal::GetCapturedStdout
    - to_string
    - std::thread::join
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardThreadSafety, DebugMessageWhileModifying_Bug5)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:308,1
    - Dst: to_string
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:315,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:316,1
    - Dst: auto::getKeys
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:323,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:325,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:333,1
    - Dst: std::thread::join
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:334,1
    - Dst: SUCCEED
      Src: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp:336,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 306
    functionDepth: 1
    functionLinenumber: 306
    functionLinenumberEnd: 337
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp
    functionUses: 0
    functionsReached:
    - auto::set
    - BT::Blackboard::create
    - auto::getKeys
    - SUCCEED
    - to_string
    - std::thread::join
    - auto::size
    linkageType: ''
    returnType: void
    signature: void TEST(BlackboardThreadSafety, GetKeysWhileModifying_Bug6)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:34,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:35,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:36,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:38,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:38,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:39,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:39,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:40,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 10
    functionDepth: 0
    functionLinenumber: 10
    functionLinenumberEnd: 41
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_postconditions.cpp
    functionUses: 0
    functionsReached:
    - auto::rootBlackboard
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(PostConditions, BasicTest)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:58,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:59,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:60,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:62,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:62,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:63,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 64
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_postconditions.cpp
    functionUses: 0
    functionsReached:
    - auto::rootBlackboard
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(PostConditions, Issue539)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:85,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:86,1
    - Dst: ASSERT_EQ
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:88,1
    - Dst: auto::rootBlackboard
      Src: /src/behaviortreecpp/tests/gtest_postconditions.cpp:88,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 89
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_postconditions.cpp
    functionUses: 0
    functionsReached:
    - auto::rootBlackboard
    - BehaviorTreeFactory::createTreeFromText
    - ASSERT_EQ
    - auto::tickWhileRunning
    linkageType: ''
    returnType: void
    signature: void TEST(PostConditions, Issue601)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_logger_zmq.cpp:16,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_logger_zmq.cpp:17,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/tests/gtest_logger_zmq.cpp:21,1
    - Dst: SUCCEED
      Src: /src/behaviortreecpp/tests/gtest_logger_zmq.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 6
    functionDepth: 1
    functionLinenumber: 6
    functionLinenumberEnd: 27
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_logger_zmq.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - SUCCEED
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(LoggerZMQ, ZMQLoggerDeletesCleanlyAfterTickingTree)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tests/gtest_logger_zmq.cpp:39,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/tests/gtest_logger_zmq.cpp:40,1
    - Dst: SUCCEED
      Src: /src/behaviortreecpp/tests/gtest_logger_zmq.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 51
    functionName: TEST
    functionSourceFile: /src/behaviortreecpp/tests/gtest_logger_zmq.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - SUCCEED
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: void
    signature: void TEST(LoggerZMQ, ZMQLoggerDeletesCleanlyAfterNotTickingTree)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 21
    functionName: BT::ConditionTestNode::ConditionTestNode(const std::string& name)
    functionSourceFile: /src/behaviortreecpp/tests/src/condition_test_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BT::ConditionTestNode::ConditionTestNode(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 27
    functionName: BT::ConditionTestNode::tick()
    functionSourceFile: /src/behaviortreecpp/tests/src/condition_test_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus BT::ConditionTestNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - res
    argTypes:
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: BT::ConditionTestNode::setExpectedResult(NodeStatus res)
    functionSourceFile: /src/behaviortreecpp/tests/src/condition_test_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BT::ConditionTestNode::setExpectedResult(NodeStatus res)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - deadline_ms
    argTypes:
    - std::string
    - BT::Duration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 26
    functionName: BT::AsyncActionTest::AsyncActionTest(const std::string& name, BT::Duration
      deadline_ms)
    functionSourceFile: /src/behaviortreecpp/tests/src/action_test_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BT::AsyncActionTest::AsyncActionTest(const std::string& name,
      BT::Duration deadline_ms)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: high_resolution_clock::now
      Src: /src/behaviortreecpp/tests/src/action_test_node.cpp:33,1
    - Dst: isHaltRequested
      Src: /src/behaviortreecpp/tests/src/action_test_node.cpp:36,1
    - Dst: high_resolution_clock::now
      Src: /src/behaviortreecpp/tests/src/action_test_node.cpp:36,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/tests/src/action_test_node.cpp:38,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/tests/src/action_test_node.cpp:38,1
    - Dst: isHaltRequested
      Src: /src/behaviortreecpp/tests/src/action_test_node.cpp:42,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 57
    functionName: BT::AsyncActionTest::tick()
    functionSourceFile: /src/behaviortreecpp/tests/src/action_test_node.cpp
    functionUses: 0
    functionsReached:
    - std::this_thread::sleep_for
    - high_resolution_clock::now
    - std::chrono::milliseconds
    - isHaltRequested
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus BT::AsyncActionTest::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ThreadedAction::halt
      Src: /src/behaviortreecpp/tests/src/action_test_node.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 63
    functionName: BT::AsyncActionTest::halt()
    functionSourceFile: /src/behaviortreecpp/tests/src/action_test_node.cpp
    functionUses: 0
    functionsReached:
    - ThreadedAction::halt
    linkageType: ''
    returnType: void
    signature: void BT::AsyncActionTest::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - time
    argTypes:
    - BT::Duration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: BT::AsyncActionTest::setTime(BT::Duration time)
    functionSourceFile: /src/behaviortreecpp/tests/src/action_test_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BT::AsyncActionTest::setTime(BT::Duration time)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - res
    argTypes:
    - BT::NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: BT::AsyncActionTest::setExpectedResult(BT::NodeStatus res)
    functionSourceFile: /src/behaviortreecpp/tests/src/action_test_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BT::AsyncActionTest::setExpectedResult(BT::NodeStatus res)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 79
    functionName: BT::SyncActionTest::SyncActionTest(const std::string& name)
    functionSourceFile: /src/behaviortreecpp/tests/src/action_test_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BT::SyncActionTest::SyncActionTest(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 85
    functionName: BT::SyncActionTest::tick()
    functionSourceFile: /src/behaviortreecpp/tests/src/action_test_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus BT::SyncActionTest::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - res
    argTypes:
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: BT::SyncActionTest::setExpectedResult(NodeStatus res)
    functionSourceFile: /src/behaviortreecpp/tests/src/action_test_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BT::SyncActionTest::setExpectedResult(NodeStatus res)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 19
    functionName: Animal::Animal
    functionSourceFile: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Animal()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 20
    functionName: ~Animal()
    functionSourceFile: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Animal()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 21
    functionDepth: 0
    functionLinenumber: 21
    functionLinenumberEnd: 21
    functionName: Animal::Animal
    functionSourceFile: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Animal(const Animal&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 22
    functionName: '& operator=(const Animal&)'
    functionSourceFile: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Animal
    signature: Animal & operator=(const Animal&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 23
    functionName: Animal::Animal
    functionSourceFile: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Animal(Animal&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 24
    functionName: '& operator=(Animal&&)'
    functionSourceFile: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Animal
    signature: Animal & operator=(Animal&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 29
    functionName: Animal::name
    functionSourceFile: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: Cat::name
    functionSourceFile: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 43
    functionName: Cat::meow
    functionSourceFile: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void meow() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: Dog::name
    functionSourceFile: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: Dog::bark
    functionSourceFile: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void bark() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 68
    functionName: Sphynx::name
    functionSourceFile: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerPolymorphicCast
      Src: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h:76,1
    - Dst: registerPolymorphicCast
      Src: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h:77,1
    - Dst: registerPolymorphicCast
      Src: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' factory'
    argTypes:
    - BT::BehaviorTreeFactory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 79
    functionName: RegisterAnimalHierarchy
    functionSourceFile: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h
    functionUses: 5
    functionsReached:
    - registerPolymorphicCast
    linkageType: ''
    returnType: void
    signature: void RegisterAnimalHierarchy(BT::BehaviorTreeFactory& factory)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 21
    functionName: BT::ConditionTestNode::tickCount
    functionSourceFile: /src/behaviortreecpp/tests/include/condition_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int tickCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 21
    functionName: BT::ConditionTestNode::tickCount
    functionSourceFile: /src/behaviortreecpp/tests/include/condition_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int tickCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 20
    functionName: BT::SyncActionTest::tickCount
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int tickCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 25
    functionName: BT::SyncActionTest::resetTicks
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void resetTicks()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: halt
      Src: /src/behaviortreecpp/tests/include/action_test_node.h:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: ~AsyncActionTest() override
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached:
    - halt
    linkageType: ''
    returnType: void
    signature: void ~AsyncActionTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: BT::AsyncActionTest::AsyncActionTest
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AsyncActionTest(const AsyncActionTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: '& operator=(const AsyncActionTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AsyncActionTest
    signature: AsyncActionTest & operator=(const AsyncActionTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: BT::AsyncActionTest::AsyncActionTest
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AsyncActionTest(AsyncActionTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: '& operator=(AsyncActionTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AsyncActionTest
    signature: AsyncActionTest & operator=(AsyncActionTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: BT::AsyncActionTest::tickCount
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int tickCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: BT::AsyncActionTest::successCount
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int successCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: BT::AsyncActionTest::failureCount
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int failureCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 77
    functionName: BT::AsyncActionTest::resetCounters
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void resetCounters()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 20
    functionName: BT::SyncActionTest::tickCount
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int tickCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 25
    functionName: BT::SyncActionTest::resetTicks
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void resetTicks()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: halt
      Src: /src/behaviortreecpp/tests/include/action_test_node.h:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: ~AsyncActionTest() override
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached:
    - halt
    linkageType: ''
    returnType: void
    signature: void ~AsyncActionTest() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: BT::AsyncActionTest::AsyncActionTest
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AsyncActionTest(const AsyncActionTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: '& operator=(const AsyncActionTest&)'
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AsyncActionTest
    signature: AsyncActionTest & operator=(const AsyncActionTest&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: BT::AsyncActionTest::AsyncActionTest
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void AsyncActionTest(AsyncActionTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: '& operator=(AsyncActionTest&&)'
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: AsyncActionTest
    signature: AsyncActionTest & operator=(AsyncActionTest&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: BT::AsyncActionTest::tickCount
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int tickCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 65
    functionName: BT::AsyncActionTest::successCount
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int successCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 70
    functionName: BT::AsyncActionTest::failureCount
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int failureCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 77
    functionName: BT::AsyncActionTest::resetCounters
    functionSourceFile: /src/behaviortreecpp/tests/include/action_test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void resetCounters()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: filesystem::path
      Src: /src/behaviortreecpp/tests/include/environment.h:15,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17
      start: 11
    functionDepth: 0
    functionLinenumber: 11
    functionLinenumberEnd: 17
    functionName: Environment::Environment
    functionSourceFile: /src/behaviortreecpp/tests/include/environment.h
    functionUses: 0
    functionsReached:
    - filesystem::path
    linkageType: ''
    returnType: void
    signature: void Environment(int argc, char** argv)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:33,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:34,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:36,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:40,1
    - Dst: string
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:41,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:42,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 44
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp
    functionUses: 6
    functionsReached:
    - string
    - throwRuntimeError
    - BT::convertFromString
    - BT::splitString
    - auto::size
    linkageType: ''
    returnType: Issue953Type
    signature: Issue953Type convertFromString(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:33,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:34,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:36,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:40,1
    - Dst: string
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:41,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:42,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 44
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp
    functionUses: 7
    functionsReached:
    - string
    - throwRuntimeError
    - BT::convertFromString
    - BT::splitString
    - auto::size
    linkageType: ''
    returnType: Issue953Type
    signature: Issue953Type convertFromString(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 53
    functionName: Issue953Action::Issue953Action
    functionSourceFile: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Issue953Action(const std::string& name, const BT::NodeConfig&
      config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<Issue953Type>
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:59,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:62,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:66,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:69,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:70,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:71,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 74
    functionName: Issue953Action::tick
    functionSourceFile: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp
    functionUses: 0
    functionsReached:
    - getInput<Issue953Type>
    - auto::value
    - auto::error
    - setOutput
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<Issue953Type>
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:81,1
    - Dst: BT::OutputPort<int>
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:82,1
    - Dst: BT::OutputPort<std::string>
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:83,1
    - Dst: BT::OutputPort<double>
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 85
    functionName: Issue953Action::providedPorts
    functionSourceFile: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<Issue953Type>
    - BT::OutputPort<int>
    - BT::OutputPort<double>
    - BT::OutputPort<std::string>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerNodeType
      Src: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 89
    functionDepth: 0
    functionLinenumber: 89
    functionLinenumberEnd: 92
    functionName: BT_REGISTER_NODES
    functionSourceFile: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp
    functionUses: 0
    functionsReached:
    - registerNodeType
    linkageType: ''
    returnType: void
    signature: void BT_REGISTER_NODES(factory)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::printf
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:27,1
    - Dst: std::printf
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:28,1
    - Dst: std::printf
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:29,1
    - Dst: std::printf
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:30,1
    - Dst: std::printf
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:31,1
    - Dst: std::printf
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:32,1
    - Dst: std::printf
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:33,1
    - Dst: std::printf
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:34,1
    - Dst: std::printf
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:35,1
    - Dst: std::printf
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:36,1
    - Dst: std::printf
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - program_name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 40
    functionName: printUsage
    functionSourceFile: /src/behaviortreecpp/tools/bt_nodes_model.cpp
    functionUses: 0
    functionsReached:
    - std::printf
    linkageType: ''
    returnType: void
    signature: void printUsage(const char* program_name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::strcmp
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:50,1
    - Dst: std::strcmp
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:54,1
    - Dst: std::fprintf
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:58,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:61,1
    - Dst: std::strcmp
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:63,1
    - Dst: std::strcmp
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:63,1
    - Dst: printUsage
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:65,1
    - Dst: std::fprintf
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:70,1
    - Dst: printUsage
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:71,1
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:76,1
    - Dst: BT::BehaviorTreeFactory::registerFromPlugin
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:83,1
    - Dst: std::fprintf
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:87,1
    - Dst: c_str
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:87,1
    - Dst: what
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:88,1
    - Dst: BT::writeTreeNodesModelXML
      Src: /src/behaviortreecpp/tools/bt_nodes_model.cpp:94,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 30
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 98
    functionName: main
    functionSourceFile: /src/behaviortreecpp/tools/bt_nodes_model.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::registerFromPlugin
    - BT::writeTreeNodesModelXML
    - c_str
    - what
    - std::strcmp
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - std::fprintf
    - printUsage
    - std::vector::push_back
    linkageType: ''
    returnType: int
    signature: int main(int argc, char* argv[])
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/behaviortreecpp/tools/bt_plugin_manifest.cpp:13,1
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/tools/bt_plugin_manifest.cpp:17,1
    - Dst: BT::BehaviorTreeFactory::manifests
      Src: /src/behaviortreecpp/tools/bt_plugin_manifest.cpp:20,1
    - Dst: std::unordered_set::insert
      Src: /src/behaviortreecpp/tools/bt_plugin_manifest.cpp:23,1
    - Dst: BT::BehaviorTreeFactory::registerFromPlugin
      Src: /src/behaviortreecpp/tools/bt_plugin_manifest.cpp:26,1
    - Dst: BT::BehaviorTreeFactory::manifests
      Src: /src/behaviortreecpp/tools/bt_plugin_manifest.cpp:28,1
    - Dst: std::unordered_set::count
      Src: /src/behaviortreecpp/tools/bt_plugin_manifest.cpp:31,1
    - Dst: size
      Src: /src/behaviortreecpp/tools/bt_plugin_manifest.cpp:38,1
    - Dst: size
      Src: /src/behaviortreecpp/tools/bt_plugin_manifest.cpp:40,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 9
    functionDepth: 1
    functionLinenumber: 9
    functionLinenumberEnd: 54
    functionName: main
    functionSourceFile: /src/behaviortreecpp/tools/bt_plugin_manifest.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::registerFromPlugin
    - size
    - std::unordered_set::insert
    - std::unordered_set::count
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - BT::BehaviorTreeFactory::manifests
    - printf
    linkageType: ''
    returnType: int
    signature: int main(int argc, char* argv[])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 17
    functionName: s_signal_handler
    functionSourceFile: /src/behaviortreecpp/tools/bt_recorder.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void s_signal_handler(int)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: signal
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:22,1
    - Dst: signal
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:23,1
    - Dst: sigemptyset
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:28,1
    - Dst: sigaction
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:29,1
    - Dst: sigaction
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 32
    functionName: CatchSignals
    functionSourceFile: /src/behaviortreecpp/tools/bt_recorder.cpp
    functionUses: 0
    functionsReached:
    - sigemptyset
    - signal
    - sigaction
    linkageType: ''
    returnType: void
    signature: void CatchSignals(void)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:38,1
    - Dst: CatchSignals
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:43,1
    - Dst: zmq::socket_t::connect
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:51,1
    - Dst: zmq::socket_t::set
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:54,1
    - Dst: printf
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:56,1
    - Dst: zmq::socket_t::recv
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:67,1
    - Dst: what
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:74,1
    - Dst: static_cast<char*>
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:81,1
    - Dst: zmq::message_t::data
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:81,1
    - Dst: flatbuffers::ReadScalar<uint32_t>
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:82,1
    - Dst: printf
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:86,1
    - Dst: std::ofstream::open
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:89,1
    - Dst: std::ofstream::write
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:90,1
    - Dst: flatbuffers::ReadScalar<uint32_t>
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:94,1
    - Dst: std::ofstream::write
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:97,1
    - Dst: zmq::socket_t::close
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:101,1
    - Dst: printf
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:103,1
    - Dst: std::ofstream::close
      Src: /src/behaviortreecpp/tools/bt_recorder.cpp:104,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 35
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char*[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 107
    functionName: main
    functionSourceFile: /src/behaviortreecpp/tools/bt_recorder.cpp
    functionUses: 0
    functionsReached:
    - std::ofstream::write
    - static_cast<char*>
    - CatchSignals
    - zmq::socket_t::close
    - zmq::socket_t::recv
    - zmq::socket_t::set
    - what
    - zmq::message_t::data
    - flatbuffers::ReadScalar<uint32_t>
    - std::ofstream::open
    - zmq::socket_t::connect
    - std::ofstream::close
    - printf
    linkageType: ''
    returnType: int
    signature: int main(int argc, char* argv[])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::isalpha
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:25,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:25,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 26
    functionName: BT::Scripting::isIdentStart
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 0
    functionsReached:
    - static_cast<unsigned char>
    - std::isalpha
    linkageType: ''
    returnType: bool
    signature: bool isIdentStart(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::isalnum
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:30,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:30,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: BT::Scripting::isIdentChar
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 0
    functionsReached:
    - std::isalnum
    - static_cast<unsigned char>
    linkageType: ''
    returnType: bool
    signature: bool isIdentChar(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::isdigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:35,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionName: BT::Scripting::isDigit
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 0
    functionsReached:
    - static_cast<unsigned char>
    - std::isdigit
    linkageType: ''
    returnType: bool
    signature: bool isDigit(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::isxdigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:40,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: BT::Scripting::isHexDigit
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 0
    functionsReached:
    - static_cast<unsigned char>
    - std::isxdigit
    linkageType: ''
    returnType: bool
    signature: bool isHexDigit(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::isIdentChar
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:46,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 3
    argNames:
    - ' source'
    - len
    - ' i'
    argTypes:
    - std::string
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 50
    functionName: BT::Scripting::consumeTrailingGarbage
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 0
    functionsReached:
    - BT::Scripting::isIdentChar
    linkageType: ''
    returnType: void
    signature: void consumeTrailingGarbage(const std::string& source, size_t len,
      size_t& i)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::isHexDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:62,1
    - Dst: BT::Scripting::isHexDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:68,1
    - Dst: BT::Scripting::isIdentChar
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:74,1
    - Dst: BT::Scripting::consumeTrailingGarbage
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:77,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 3
    argNames:
    - ' source'
    - len
    - ' i'
    argTypes:
    - std::string
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 58
    functionDepth: 2
    functionLinenumber: 58
    functionLinenumberEnd: 80
    functionName: BT::Scripting::scanHexNumber
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 0
    functionsReached:
    - BT::Scripting::isHexDigit
    - BT::Scripting::isIdentChar
    - BT::Scripting::consumeTrailingGarbage
    linkageType: ''
    returnType: NumberResult
    signature: NumberResult scanHexNumber(const std::string& source, size_t len, size_t&
      i)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:87,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:99,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:103,1
    - Dst: BT::Scripting::consumeTrailingGarbage
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:113,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:125,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:131,1
    - Dst: BT::Scripting::isIdentStart
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:138,1
    - Dst: BT::Scripting::isIdentChar
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:141,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 40
    argCount: 3
    argNames:
    - ' source'
    - len
    - ' i'
    argTypes:
    - std::string
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 82
    functionDepth: 2
    functionLinenumber: 82
    functionLinenumberEnd: 147
    functionName: BT::Scripting::scanDecimalNumber
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 0
    functionsReached:
    - BT::Scripting::isIdentStart
    - BT::Scripting::isDigit
    - BT::Scripting::isIdentChar
    - BT::Scripting::consumeTrailingGarbage
    linkageType: ''
    returnType: NumberResult
    signature: NumberResult scanDecimalNumber(const std::string& source, size_t len,
      size_t& i)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 26
    argCount: 2
    argNames:
    - c
    - next
    argTypes:
    - char
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 176
    functionName: BT::Scripting::matchTwoCharOp
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TokenType
    signature: TokenType matchTwoCharOp(char c, char next)
  - BBCount: 19
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 39
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 219
    functionName: BT::Scripting::matchSingleCharOp
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TokenType
    signature: TokenType matchSingleCharOp(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::isalpha
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:25,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:25,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 26
    functionName: BT::Scripting::isIdentStart
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 1
    functionsReached:
    - static_cast<unsigned char>
    - std::isalpha
    linkageType: ''
    returnType: bool
    signature: bool isIdentStart(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::isalnum
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:30,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:30,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: BT::Scripting::isIdentChar
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 3
    functionsReached:
    - std::isalnum
    - static_cast<unsigned char>
    linkageType: ''
    returnType: bool
    signature: bool isIdentChar(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::isdigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:35,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionName: BT::Scripting::isDigit
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 1
    functionsReached:
    - static_cast<unsigned char>
    - std::isdigit
    linkageType: ''
    returnType: bool
    signature: bool isDigit(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::isxdigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:40,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: BT::Scripting::isHexDigit
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 1
    functionsReached:
    - static_cast<unsigned char>
    - std::isxdigit
    linkageType: ''
    returnType: bool
    signature: bool isHexDigit(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::isIdentChar
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:46,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 3
    argNames:
    - ' source'
    - len
    - ' i'
    argTypes:
    - std::string
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 50
    functionName: BT::Scripting::consumeTrailingGarbage
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 2
    functionsReached:
    - BT::Scripting::isIdentChar
    linkageType: ''
    returnType: void
    signature: void consumeTrailingGarbage(const std::string& source, size_t len,
      size_t& i)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::isHexDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:62,1
    - Dst: BT::Scripting::isHexDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:68,1
    - Dst: BT::Scripting::isIdentChar
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:74,1
    - Dst: BT::Scripting::consumeTrailingGarbage
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:77,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 3
    argNames:
    - ' source'
    - len
    - ' i'
    argTypes:
    - std::string
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 58
    functionDepth: 2
    functionLinenumber: 58
    functionLinenumberEnd: 80
    functionName: BT::Scripting::scanHexNumber
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 0
    functionsReached:
    - BT::Scripting::isHexDigit
    - BT::Scripting::isIdentChar
    - BT::Scripting::consumeTrailingGarbage
    linkageType: ''
    returnType: NumberResult
    signature: NumberResult scanHexNumber(const std::string& source, size_t len, size_t&
      i)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:87,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:99,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:103,1
    - Dst: BT::Scripting::consumeTrailingGarbage
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:113,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:125,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:131,1
    - Dst: BT::Scripting::isIdentStart
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:138,1
    - Dst: BT::Scripting::isIdentChar
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:141,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 40
    argCount: 3
    argNames:
    - ' source'
    - len
    - ' i'
    argTypes:
    - std::string
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 82
    functionDepth: 2
    functionLinenumber: 82
    functionLinenumberEnd: 147
    functionName: BT::Scripting::scanDecimalNumber
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 0
    functionsReached:
    - BT::Scripting::isIdentStart
    - BT::Scripting::isDigit
    - BT::Scripting::isIdentChar
    - BT::Scripting::consumeTrailingGarbage
    linkageType: ''
    returnType: NumberResult
    signature: NumberResult scanDecimalNumber(const std::string& source, size_t len,
      size_t& i)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 26
    argCount: 2
    argNames:
    - c
    - next
    argTypes:
    - char
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 176
    functionName: BT::Scripting::matchTwoCharOp
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TokenType
    signature: TokenType matchTwoCharOp(char c, char next)
  - BBCount: 19
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 39
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 219
    functionName: BT::Scripting::matchSingleCharOp
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TokenType
    signature: TokenType matchSingleCharOp(char c)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:226,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:254,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:260,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:266,1
    - Dst: BT::Scripting::scanHexNumber
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:273,1
    - Dst: BT::Scripting::scanDecimalNumber
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:277,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:283,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:287,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:291,1
    - Dst: BT::Scripting::isIdentStart
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:297,1
    - Dst: BT::Scripting::isIdentChar
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:300,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:307,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:311,1
    - Dst: BT::Scripting::matchTwoCharOp
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:319,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:323,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:331,1
    - Dst: BT::Scripting::matchSingleCharOp
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:331,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:336,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 60
    argCount: 1
    argNames:
    - ' source'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 223
    functionDepth: 3
    functionLinenumber: 223
    functionLinenumberEnd: 338
    functionName: BT::Scripting::tokenize
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 0
    functionsReached:
    - BT::Scripting::scanHexNumber
    - BT::Scripting::isIdentStart
    - BT::Scripting::matchSingleCharOp
    - BT::Scripting::scanDecimalNumber
    - BT::Scripting::isDigit
    - BT::Scripting::isIdentChar
    - size
    - std::vector::push_back
    - BT::Scripting::matchTwoCharOp
    linkageType: ''
    returnType: std::vector<Token>
    signature: std::vector<Token> tokenize(const std::string& source)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::isalpha
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:25,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:25,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 26
    functionName: BT::Scripting::isIdentStart
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 3
    functionsReached:
    - static_cast<unsigned char>
    - std::isalpha
    linkageType: ''
    returnType: bool
    signature: bool isIdentStart(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::isalnum
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:30,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:30,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: BT::Scripting::isIdentChar
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 7
    functionsReached:
    - std::isalnum
    - static_cast<unsigned char>
    linkageType: ''
    returnType: bool
    signature: bool isIdentChar(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::isdigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:35,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionName: BT::Scripting::isDigit
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 3
    functionsReached:
    - static_cast<unsigned char>
    - std::isdigit
    linkageType: ''
    returnType: bool
    signature: bool isDigit(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::isxdigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:40,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: BT::Scripting::isHexDigit
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 2
    functionsReached:
    - static_cast<unsigned char>
    - std::isxdigit
    linkageType: ''
    returnType: bool
    signature: bool isHexDigit(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::isIdentChar
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:46,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 3
    argNames:
    - ' source'
    - len
    - ' i'
    argTypes:
    - std::string
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 50
    functionName: BT::Scripting::consumeTrailingGarbage
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 4
    functionsReached:
    - BT::Scripting::isIdentChar
    linkageType: ''
    returnType: void
    signature: void consumeTrailingGarbage(const std::string& source, size_t len,
      size_t& i)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::isHexDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:62,1
    - Dst: BT::Scripting::isHexDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:68,1
    - Dst: BT::Scripting::isIdentChar
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:74,1
    - Dst: BT::Scripting::consumeTrailingGarbage
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:77,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 3
    argNames:
    - ' source'
    - len
    - ' i'
    argTypes:
    - std::string
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 58
    functionDepth: 2
    functionLinenumber: 58
    functionLinenumberEnd: 80
    functionName: BT::Scripting::scanHexNumber
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 1
    functionsReached:
    - BT::Scripting::isHexDigit
    - BT::Scripting::isIdentChar
    - BT::Scripting::consumeTrailingGarbage
    linkageType: ''
    returnType: NumberResult
    signature: NumberResult scanHexNumber(const std::string& source, size_t len, size_t&
      i)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:87,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:99,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:103,1
    - Dst: BT::Scripting::consumeTrailingGarbage
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:113,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:125,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:131,1
    - Dst: BT::Scripting::isIdentStart
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:138,1
    - Dst: BT::Scripting::isIdentChar
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:141,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 40
    argCount: 3
    argNames:
    - ' source'
    - len
    - ' i'
    argTypes:
    - std::string
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 82
    functionDepth: 2
    functionLinenumber: 82
    functionLinenumberEnd: 147
    functionName: BT::Scripting::scanDecimalNumber
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 1
    functionsReached:
    - BT::Scripting::isIdentStart
    - BT::Scripting::isDigit
    - BT::Scripting::isIdentChar
    - BT::Scripting::consumeTrailingGarbage
    linkageType: ''
    returnType: NumberResult
    signature: NumberResult scanDecimalNumber(const std::string& source, size_t len,
      size_t& i)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 26
    argCount: 2
    argNames:
    - c
    - next
    argTypes:
    - char
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 176
    functionName: BT::Scripting::matchTwoCharOp
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: TokenType
    signature: TokenType matchTwoCharOp(char c, char next)
  - BBCount: 19
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 39
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 219
    functionName: BT::Scripting::matchSingleCharOp
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: TokenType
    signature: TokenType matchSingleCharOp(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::isalpha
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:25,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:25,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 26
    functionName: BT::Scripting::isIdentStart
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 4
    functionsReached:
    - static_cast<unsigned char>
    - std::isalpha
    linkageType: ''
    returnType: bool
    signature: bool isIdentStart(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::isalnum
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:30,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:30,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: BT::Scripting::isIdentChar
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 10
    functionsReached:
    - std::isalnum
    - static_cast<unsigned char>
    linkageType: ''
    returnType: bool
    signature: bool isIdentChar(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::isdigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:35,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionName: BT::Scripting::isDigit
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 4
    functionsReached:
    - static_cast<unsigned char>
    - std::isdigit
    linkageType: ''
    returnType: bool
    signature: bool isDigit(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::isxdigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:40,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: BT::Scripting::isHexDigit
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 3
    functionsReached:
    - static_cast<unsigned char>
    - std::isxdigit
    linkageType: ''
    returnType: bool
    signature: bool isHexDigit(char c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::isIdentChar
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:46,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 4
    argCount: 3
    argNames:
    - ' source'
    - len
    - ' i'
    argTypes:
    - std::string
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 44
    functionDepth: 1
    functionLinenumber: 44
    functionLinenumberEnd: 50
    functionName: BT::Scripting::consumeTrailingGarbage
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 6
    functionsReached:
    - BT::Scripting::isIdentChar
    linkageType: ''
    returnType: void
    signature: void consumeTrailingGarbage(const std::string& source, size_t len,
      size_t& i)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::isHexDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:62,1
    - Dst: BT::Scripting::isHexDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:68,1
    - Dst: BT::Scripting::isIdentChar
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:74,1
    - Dst: BT::Scripting::consumeTrailingGarbage
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:77,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 14
    argCount: 3
    argNames:
    - ' source'
    - len
    - ' i'
    argTypes:
    - std::string
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 58
    functionDepth: 2
    functionLinenumber: 58
    functionLinenumberEnd: 80
    functionName: BT::Scripting::scanHexNumber
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 1
    functionsReached:
    - BT::Scripting::isHexDigit
    - BT::Scripting::isIdentChar
    - BT::Scripting::consumeTrailingGarbage
    linkageType: ''
    returnType: NumberResult
    signature: NumberResult scanHexNumber(const std::string& source, size_t len, size_t&
      i)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:87,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:99,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:103,1
    - Dst: BT::Scripting::consumeTrailingGarbage
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:113,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:125,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:131,1
    - Dst: BT::Scripting::isIdentStart
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:138,1
    - Dst: BT::Scripting::isIdentChar
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:141,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 40
    argCount: 3
    argNames:
    - ' source'
    - len
    - ' i'
    argTypes:
    - std::string
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 82
    functionDepth: 2
    functionLinenumber: 82
    functionLinenumberEnd: 147
    functionName: BT::Scripting::scanDecimalNumber
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 1
    functionsReached:
    - BT::Scripting::isIdentStart
    - BT::Scripting::isDigit
    - BT::Scripting::isIdentChar
    - BT::Scripting::consumeTrailingGarbage
    linkageType: ''
    returnType: NumberResult
    signature: NumberResult scanDecimalNumber(const std::string& source, size_t len,
      size_t& i)
  - BBCount: 13
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 26
    argCount: 2
    argNames:
    - c
    - next
    argTypes:
    - char
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 176
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 176
    functionName: BT::Scripting::matchTwoCharOp
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: TokenType
    signature: TokenType matchTwoCharOp(char c, char next)
  - BBCount: 19
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 39
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 178
    functionDepth: 0
    functionLinenumber: 178
    functionLinenumberEnd: 219
    functionName: BT::Scripting::matchSingleCharOp
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: TokenType
    signature: TokenType matchSingleCharOp(char c)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:226,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:254,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:260,1
    - Dst: BT::Scripting::isDigit
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:266,1
    - Dst: BT::Scripting::scanHexNumber
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:273,1
    - Dst: BT::Scripting::scanDecimalNumber
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:277,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:283,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:287,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:291,1
    - Dst: BT::Scripting::isIdentStart
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:297,1
    - Dst: BT::Scripting::isIdentChar
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:300,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:307,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:311,1
    - Dst: BT::Scripting::matchTwoCharOp
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:319,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:323,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:331,1
    - Dst: BT::Scripting::matchSingleCharOp
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:331,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_tokenizer.cpp:336,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 60
    argCount: 1
    argNames:
    - ' source'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 223
    functionDepth: 3
    functionLinenumber: 223
    functionLinenumberEnd: 338
    functionName: BT::Scripting::tokenize
    functionSourceFile: /src/behaviortreecpp/src/script_tokenizer.cpp
    functionUses: 0
    functionsReached:
    - BT::Scripting::scanHexNumber
    - BT::Scripting::isIdentStart
    - BT::Scripting::matchSingleCharOp
    - BT::Scripting::scanDecimalNumber
    - BT::Scripting::isDigit
    - BT::Scripting::isIdentChar
    - size
    - std::vector::push_back
    - BT::Scripting::matchTwoCharOp
    linkageType: ''
    returnType: std::vector<Token>
    signature: std::vector<Token> tokenize(const std::string& source)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - ' status'
    argTypes:
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 43
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string toStr<NodeStatus>(const NodeStatus& status)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string toStr<bool>(const bool& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string toStr<std::string>(const std::string& value)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/src/basic_types.cpp:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - status
    - colored
    argTypes:
    - NodeStatus
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 87
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 1
    functionsReached:
    - BT::toStr
    linkageType: ''
    returnType: std::string
    signature: std::string toStr(NodeStatus status, bool colored)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ' direction'
    argTypes:
    - PortDirection
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 102
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string toStr<PortDirection>(const PortDirection& direction)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - ' type'
    argTypes:
    - NodeType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 122
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string toStr<NodeType>(const NodeType& type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string
      Src: /src/behaviortreecpp/src/basic_types.cpp:127,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:127,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 7
    functionsReached:
    - StringView::size
    - StringView::data
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string convertFromString<std::string>(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/basic_types.cpp:134,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:134,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:134,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:134,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/src/basic_types.cpp:136,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:138,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/basic_types.cpp:138,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 141
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 7
    functionsReached:
    - std::from_chars
    - StringView::data
    - BT::StrCat
    - StringView::size
    - std::errc
    - RuntimeError
    linkageType: ''
    returnType: int64_t
    signature: int64_t convertFromString<int64_t>(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/basic_types.cpp:147,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:147,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:147,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:147,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/src/basic_types.cpp:149,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:151,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/basic_types.cpp:151,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 154
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 7
    functionsReached:
    - std::from_chars
    - StringView::data
    - BT::StrCat
    - StringView::size
    - std::errc
    - RuntimeError
    linkageType: ''
    returnType: uint64_t
    signature: uint64_t convertFromString<uint64_t>(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/src/basic_types.cpp:161,1
    - Dst: std::numeric_limits<T>::lowest
      Src: /src/behaviortreecpp/src/basic_types.cpp:162,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/src/basic_types.cpp:162,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:164,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/basic_types.cpp:165,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 168
    functionName: BT::ConvertWithBoundCheck
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - std::numeric_limits<T>::lowest
    - BT::StrCat
    - BT::convertFromString
    - magic_enum::detail::reflected_max
    - RuntimeError
    linkageType: ''
    returnType: T
    signature: T ConvertWithBoundCheck(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/src/basic_types.cpp:161,1
    - Dst: std::numeric_limits<T>::lowest
      Src: /src/behaviortreecpp/src/basic_types.cpp:162,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/src/basic_types.cpp:162,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:164,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/basic_types.cpp:165,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 168
    functionName: BT::ConvertWithBoundCheck
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - std::numeric_limits<T>::lowest
    - BT::StrCat
    - BT::convertFromString
    - magic_enum::detail::reflected_max
    - RuntimeError
    linkageType: ''
    returnType: T
    signature: T ConvertWithBoundCheck(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ConvertWithBoundCheck
      Src: /src/behaviortreecpp/src/basic_types.cpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 172
    functionDepth: 2
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 9
    functionsReached:
    - BT::ConvertWithBoundCheck
    linkageType: ''
    returnType: int8_t
    signature: int8_t convertFromString<int8_t>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ConvertWithBoundCheck
      Src: /src/behaviortreecpp/src/basic_types.cpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 178
    functionDepth: 2
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 9
    functionsReached:
    - BT::ConvertWithBoundCheck
    linkageType: ''
    returnType: int16_t
    signature: int16_t convertFromString<int16_t>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ConvertWithBoundCheck
      Src: /src/behaviortreecpp/src/basic_types.cpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 2
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 9
    functionsReached:
    - BT::ConvertWithBoundCheck
    linkageType: ''
    returnType: int32_t
    signature: int32_t convertFromString<int32_t>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ConvertWithBoundCheck
      Src: /src/behaviortreecpp/src/basic_types.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 190
    functionDepth: 2
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 9
    functionsReached:
    - BT::ConvertWithBoundCheck
    linkageType: ''
    returnType: uint8_t
    signature: uint8_t convertFromString<uint8_t>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ConvertWithBoundCheck
      Src: /src/behaviortreecpp/src/basic_types.cpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 196
    functionDepth: 2
    functionLinenumber: 196
    functionLinenumberEnd: 199
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 9
    functionsReached:
    - BT::ConvertWithBoundCheck
    linkageType: ''
    returnType: uint16_t
    signature: uint16_t convertFromString<uint16_t>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ConvertWithBoundCheck
      Src: /src/behaviortreecpp/src/basic_types.cpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 202
    functionDepth: 2
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 9
    functionsReached:
    - BT::ConvertWithBoundCheck
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t convertFromString<uint32_t>(StringView str)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:211,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:212,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/basic_types.cpp:213,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/src/basic_types.cpp:214,1
    - Dst: StringView::empty
      Src: /src/behaviortreecpp/src/basic_types.cpp:225,1
    - Dst: StringView::front
      Src: /src/behaviortreecpp/src/basic_types.cpp:229,1
    - Dst: std::isspace
      Src: /src/behaviortreecpp/src/basic_types.cpp:230,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/basic_types.cpp:230,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:239,1
    - Dst: ::newlocale
      Src: /src/behaviortreecpp/src/basic_types.cpp:250,1
    - Dst: static_cast<::locale_t>
      Src: /src/behaviortreecpp/src/basic_types.cpp:250,1
    - Dst: static_cast<::locale_t>
      Src: /src/behaviortreecpp/src/basic_types.cpp:251,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:256,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:256,1
    - Dst: ::strtod_l
      Src: /src/behaviortreecpp/src/basic_types.cpp:259,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/src/basic_types.cpp:259,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/src/basic_types.cpp:260,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/src/basic_types.cpp:264,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:264,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 30
    argCount: 3
    argNames:
    - str
    - ' out'
    - require_full_consumption
    argTypes:
    - StringView
    - double
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 271
    functionName: BT::parseDouble
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - std::from_chars
    - std::string::size
    - StringView::empty
    - std::string::c_str
    - StringView::data
    - ::newlocale
    - static_cast<::locale_t>
    - StringView::size
    - std::errc
    - ::strtod_l
    - StringView::front
    - static_cast<unsigned char>
    - std::isspace
    linkageType: ''
    returnType: bool
    signature: bool parseDouble(StringView str, double& out, bool require_full_consumption)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::parseDouble
      Src: /src/behaviortreecpp/src/basic_types.cpp:277,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:279,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/basic_types.cpp:279,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 274
    functionDepth: 2
    functionLinenumber: 274
    functionLinenumberEnd: 282
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 9
    functionsReached:
    - BT::StrCat
    - RuntimeError
    - BT::parseDouble
    linkageType: ''
    returnType: double
    signature: double convertFromString<double>(StringView str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/basic_types.cpp:290,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:290,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:290,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:290,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/src/basic_types.cpp:291,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:293,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/basic_types.cpp:293,1
    - Dst: BT::parseDouble
      Src: /src/behaviortreecpp/src/basic_types.cpp:298,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:300,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/basic_types.cpp:300,1
    - Dst: static_cast<float>
      Src: /src/behaviortreecpp/src/basic_types.cpp:302,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 285
    functionDepth: 2
    functionLinenumber: 285
    functionLinenumberEnd: 304
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 9
    functionsReached:
    - std::from_chars
    - BT::parseDouble
    - StringView::data
    - BT::StrCat
    - StringView::size
    - std::errc
    - RuntimeError
    - static_cast<float>
    linkageType: ''
    returnType: float
    signature: float convertFromString<float>(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::StartWith
      Src: /src/behaviortreecpp/src/basic_types.cpp:309,1
    - Dst: StringView::remove_prefix
      Src: /src/behaviortreecpp/src/basic_types.cpp:311,1
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/basic_types.cpp:312,1
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/src/basic_types.cpp:314,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/basic_types.cpp:316,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:316,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/basic_types.cpp:319,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/src/basic_types.cpp:319,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 307
    functionDepth: 1
    functionLinenumber: 307
    functionLinenumberEnd: 322
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 10
    functionsReached:
    - std::vector::reserve
    - BT::StartWith
    - BT::convertFromString
    - BT::splitString
    - StringView::remove_prefix
    - std::vector::push_back
    - parser::parse
    - auto::size
    linkageType: ''
    returnType: std::vector<int>
    signature: std::vector<int> convertFromString<std::vector<int>>(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::StartWith
      Src: /src/behaviortreecpp/src/basic_types.cpp:327,1
    - Dst: StringView::remove_prefix
      Src: /src/behaviortreecpp/src/basic_types.cpp:329,1
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/basic_types.cpp:330,1
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/src/basic_types.cpp:332,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/basic_types.cpp:334,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:334,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/basic_types.cpp:337,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/src/basic_types.cpp:337,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 325
    functionDepth: 1
    functionLinenumber: 325
    functionLinenumberEnd: 340
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 11
    functionsReached:
    - std::vector::reserve
    - BT::StartWith
    - BT::convertFromString
    - BT::splitString
    - StringView::remove_prefix
    - std::vector::push_back
    - parser::parse
    - auto::size
    linkageType: ''
    returnType: std::vector<double>
    signature: std::vector<double> convertFromString<std::vector<double>>(StringView
      str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::StartWith
      Src: /src/behaviortreecpp/src/basic_types.cpp:345,1
    - Dst: StringView::remove_prefix
      Src: /src/behaviortreecpp/src/basic_types.cpp:347,1
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/basic_types.cpp:348,1
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/src/basic_types.cpp:350,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/basic_types.cpp:352,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:352,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/basic_types.cpp:355,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/src/basic_types.cpp:355,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 343
    functionDepth: 1
    functionLinenumber: 343
    functionLinenumberEnd: 358
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 12
    functionsReached:
    - std::vector::reserve
    - BT::StartWith
    - BT::convertFromString
    - BT::splitString
    - StringView::remove_prefix
    - std::vector::push_back
    - parser::parse
    - auto::size
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> convertFromString<std::vector<bool>>(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::StartWith
      Src: /src/behaviortreecpp/src/basic_types.cpp:363,1
    - Dst: StringView::remove_prefix
      Src: /src/behaviortreecpp/src/basic_types.cpp:365,1
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/basic_types.cpp:366,1
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/src/basic_types.cpp:368,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/basic_types.cpp:370,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:370,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/basic_types.cpp:373,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/src/basic_types.cpp:373,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 361
    functionDepth: 1
    functionLinenumber: 361
    functionLinenumberEnd: 376
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 13
    functionsReached:
    - std::vector::reserve
    - BT::StartWith
    - BT::convertFromString
    - BT::splitString
    - StringView::remove_prefix
    - std::vector::push_back
    - parser::parse
    - auto::size
    linkageType: ''
    returnType: std::vector<std::string>
    signature: std::vector<std::string> convertFromString<std::vector<std::string>>(StringView
      str)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:381,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:392,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:399,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:406,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 20
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 379
    functionDepth: 1
    functionLinenumber: 379
    functionLinenumberEnd: 407
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 13
    functionsReached:
    - StringView::size
    - RuntimeError
    linkageType: ''
    returnType: bool
    signature: bool convertFromString<bool>(StringView str)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:423,1
    - Dst: string
      Src: /src/behaviortreecpp/src/basic_types.cpp:423,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/src/basic_types.cpp:424,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 410
    functionDepth: 1
    functionLinenumber: 410
    functionLinenumberEnd: 425
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 13
    functionsReached:
    - static_cast<std::string>
    - RuntimeError
    - string
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus convertFromString<NodeStatus>(StringView str)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 428
    functionDepth: 0
    functionLinenumber: 428
    functionLinenumberEnd: 441
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: NodeType
    signature: NodeType convertFromString<NodeType>(StringView str)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:452,1
    - Dst: string
      Src: /src/behaviortreecpp/src/basic_types.cpp:452,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/src/basic_types.cpp:453,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 8
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 444
    functionDepth: 1
    functionLinenumber: 444
    functionLinenumberEnd: 454
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 13
    functionsReached:
    - static_cast<std::string>
    - RuntimeError
    - string
    linkageType: ''
    returnType: PortDirection
    signature: PortDirection convertFromString<PortDirection>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toStr
      Src: /src/behaviortreecpp/src/basic_types.cpp:458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' os'
    - ' type'
    argTypes:
    - std::ostream
    - NodeType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 456
    functionDepth: 0
    functionLinenumber: 456
    functionLinenumberEnd: 460
    functionName: '& operator<<(std::ostream& os, const NodeType& type)'
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - toStr
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& os, const NodeType& type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toStr
      Src: /src/behaviortreecpp/src/basic_types.cpp:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' os'
    - ' status'
    argTypes:
    - std::ostream
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 462
    functionDepth: 0
    functionLinenumber: 462
    functionLinenumberEnd: 466
    functionName: '& operator<<(std::ostream& os, const NodeStatus& status)'
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - toStr
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& os, const NodeStatus& status)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toStr
      Src: /src/behaviortreecpp/src/basic_types.cpp:470,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' os'
    - ' type'
    argTypes:
    - std::ostream
    - PortDirection
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 468
    functionDepth: 0
    functionLinenumber: 468
    functionLinenumberEnd: 472
    functionName: '& operator<<(std::ostream& os, const PortDirection& type)'
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - toStr
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& os, const PortDirection& type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/basic_types.cpp:477,1
    - Dst: size
      Src: /src/behaviortreecpp/src/basic_types.cpp:480,1
    - Dst: find_first_of
      Src: /src/behaviortreecpp/src/basic_types.cpp:482,1
    - Dst: size
      Src: /src/behaviortreecpp/src/basic_types.cpp:485,1
    - Dst: data
      Src: /src/behaviortreecpp/src/basic_types.cpp:487,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/basic_types.cpp:488,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ' strToSplit'
    - delimeter
    argTypes:
    - StringView
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 474
    functionDepth: 1
    functionLinenumber: 474
    functionLinenumberEnd: 492
    functionName: BT::splitString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 11
    functionsReached:
    - std::vector::reserve
    - size
    - data
    - find_first_of
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<StringView>
    signature: std::vector<StringView> splitString(const StringView& strToSplit, char
      delimeter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 494
    functionDepth: 0
    functionLinenumber: 494
    functionLinenumberEnd: 497
    functionName: BT::PortInfo::direction
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PortDirection
    signature: PortDirection PortInfo::direction() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 499
    functionDepth: 0
    functionLinenumber: 499
    functionLinenumberEnd: 502
    functionName: '& TypeInfo::type() const'
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::type_index
    signature: std::type_index & TypeInfo::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 504
    functionDepth: 0
    functionLinenumber: 504
    functionLinenumberEnd: 507
    functionName: '& TypeInfo::typeName() const'
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & TypeInfo::typeName() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: converter_
      Src: /src/behaviortreecpp/src/basic_types.cpp:513,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 509
    functionDepth: 0
    functionLinenumber: 509
    functionLinenumberEnd: 516
    functionName: BT::TypeInfo::parseString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - converter_
    linkageType: ''
    returnType: Any
    signature: Any TypeInfo::parseString(const char* str) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: converter_
      Src: /src/behaviortreecpp/src/basic_types.cpp:522,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 518
    functionDepth: 0
    functionLinenumber: 518
    functionLinenumberEnd: 525
    functionName: BT::TypeInfo::parseString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - converter_
    linkageType: ''
    returnType: Any
    signature: Any TypeInfo::parseString(const std::string& str) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/src/basic_types.cpp:529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - description
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 527
    functionDepth: 0
    functionLinenumber: 527
    functionLinenumberEnd: 530
    functionName: BT::PortInfo::setDescription
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - static_cast<std::string>
    linkageType: ''
    returnType: void
    signature: void PortInfo::setDescription(StringView description)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 532
    functionDepth: 0
    functionLinenumber: 532
    functionLinenumberEnd: 535
    functionName: '& PortInfo::description() const'
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & PortInfo::description() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 537
    functionDepth: 0
    functionLinenumber: 537
    functionLinenumberEnd: 540
    functionName: '& PortInfo::defaultValue() const'
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Any
    signature: Any & PortInfo::defaultValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 542
    functionDepth: 0
    functionLinenumber: 542
    functionLinenumberEnd: 545
    functionName: '& PortInfo::defaultValueString() const'
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & PortInfo::defaultValueString() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: StringView::empty
      Src: /src/behaviortreecpp/src/basic_types.cpp:549,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:553,1
    - Dst: std::isalpha
      Src: /src/behaviortreecpp/src/basic_types.cpp:555,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/basic_types.cpp:555,1
    - Dst: BT::findForbiddenChar
      Src: /src/behaviortreecpp/src/basic_types.cpp:560,1
    - Dst: BT::IsReservedAttribute
      Src: /src/behaviortreecpp/src/basic_types.cpp:564,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 547
    functionDepth: 1
    functionLinenumber: 547
    functionLinenumberEnd: 565
    functionName: BT::IsAllowedPortName
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - StringView::empty
    - StringView::data
    - BT::findForbiddenChar
    - BT::IsReservedAttribute
    - static_cast<unsigned char>
    - std::isalpha
    linkageType: ''
    returnType: bool
    signature: bool IsAllowedPortName(StringView str)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 567
    functionDepth: 0
    functionLinenumber: 567
    functionLinenumberEnd: 584
    functionName: BT::IsReservedAttribute
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool IsReservedAttribute(StringView str)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/basic_types.cpp:595,1
    - Dst: find
      Src: /src/behaviortreecpp/src/basic_types.cpp:607,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/src/basic_types.cpp:607,1
    - Dst: std::array::end
      Src: /src/behaviortreecpp/src/basic_types.cpp:607,1
    - Dst: std::array::end
      Src: /src/behaviortreecpp/src/basic_types.cpp:608,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 586
    functionDepth: 1
    functionLinenumber: 586
    functionLinenumberEnd: 614
    functionName: BT::findForbiddenChar
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 1
    functionsReached:
    - find
    - std::array::end
    - static_cast<unsigned char>
    - std::array::begin
    linkageType: ''
    returnType: char
    signature: char findForbiddenChar(StringView name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/basic_types.cpp:618,1
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/src/basic_types.cpp:619,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/src/basic_types.cpp:622,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/src/basic_types.cpp:622,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - json_text
    - type
    argTypes:
    - StringView
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 616
    functionDepth: 1
    functionLinenumber: 616
    functionLinenumberEnd: 625
    functionName: BT::convertFromJSON
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 1
    functionsReached:
    - auto::error
    - BT::Blackboard::get
    - parser::parse
    - std::runtime_error
    linkageType: ''
    returnType: Any
    signature: Any convertFromJSON(StringView json_text, std::type_index type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/src/basic_types.cpp:630,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/basic_types.cpp:632,1
    - Dst: nlohmann::json::dump
      Src: /src/behaviortreecpp/src/basic_types.cpp:632,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/basic_types.cpp:634,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 635
      start: 627
    functionDepth: 1
    functionLinenumber: 627
    functionLinenumberEnd: 635
    functionName: BT::toJsonString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - nonstd::make_unexpected
    - BT::StrCat
    - BT::Blackboard::get
    - nlohmann::json::dump
    linkageType: ''
    returnType: Expected<std::string>
    signature: Expected<std::string> toJsonString(const Any& value)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:639,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:639,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:643,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - str
    - prefix
    argTypes:
    - StringView
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 637
    functionDepth: 1
    functionLinenumber: 637
    functionLinenumberEnd: 651
    functionName: BT::StartWith
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 5
    functionsReached:
    - StringView::size
    linkageType: ''
    returnType: bool
    signature: bool StartWith(StringView str, StringView prefix)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:655,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - str
    - prefix
    argTypes:
    - StringView
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 653
    functionDepth: 1
    functionLinenumber: 653
    functionLinenumberEnd: 656
    functionName: BT::StartWith
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 5
    functionsReached:
    - StringView::size
    linkageType: ''
    returnType: bool
    signature: bool StartWith(StringView str, char prefix)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 1
    argNames:
    - ' status'
    argTypes:
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 43
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string toStr<NodeStatus>(const NodeStatus& status)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string toStr<bool>(const bool& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string toStr<std::string>(const std::string& value)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/src/basic_types.cpp:61,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 2
    argNames:
    - status
    - colored
    argTypes:
    - NodeStatus
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 87
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 2
    functionsReached:
    - BT::toStr
    linkageType: ''
    returnType: std::string
    signature: std::string toStr(NodeStatus status, bool colored)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - ' direction'
    argTypes:
    - PortDirection
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 102
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string toStr<PortDirection>(const PortDirection& direction)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - ' type'
    argTypes:
    - NodeType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 122
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string toStr<NodeType>(const NodeType& type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string
      Src: /src/behaviortreecpp/src/basic_types.cpp:127,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:127,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 1
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 13
    functionsReached:
    - StringView::size
    - StringView::data
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string convertFromString<std::string>(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/basic_types.cpp:134,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:134,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:134,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:134,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/src/basic_types.cpp:136,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:138,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/basic_types.cpp:138,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 131
    functionDepth: 1
    functionLinenumber: 131
    functionLinenumberEnd: 141
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 13
    functionsReached:
    - std::from_chars
    - StringView::data
    - BT::StrCat
    - StringView::size
    - std::errc
    - RuntimeError
    linkageType: ''
    returnType: int64_t
    signature: int64_t convertFromString<int64_t>(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/basic_types.cpp:147,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:147,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:147,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:147,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/src/basic_types.cpp:149,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:151,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/basic_types.cpp:151,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 144
    functionDepth: 1
    functionLinenumber: 144
    functionLinenumberEnd: 154
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 13
    functionsReached:
    - std::from_chars
    - StringView::data
    - BT::StrCat
    - StringView::size
    - std::errc
    - RuntimeError
    linkageType: ''
    returnType: uint64_t
    signature: uint64_t convertFromString<uint64_t>(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/src/basic_types.cpp:161,1
    - Dst: std::numeric_limits<T>::lowest
      Src: /src/behaviortreecpp/src/basic_types.cpp:162,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/src/basic_types.cpp:162,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:164,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/basic_types.cpp:165,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 168
    functionName: BT::ConvertWithBoundCheck
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 6
    functionsReached:
    - std::numeric_limits<T>::lowest
    - BT::StrCat
    - BT::convertFromString
    - magic_enum::detail::reflected_max
    - RuntimeError
    linkageType: ''
    returnType: T
    signature: T ConvertWithBoundCheck(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/src/basic_types.cpp:161,1
    - Dst: std::numeric_limits<T>::lowest
      Src: /src/behaviortreecpp/src/basic_types.cpp:162,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/src/basic_types.cpp:162,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:164,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/basic_types.cpp:165,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 168
    functionName: BT::ConvertWithBoundCheck
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 6
    functionsReached:
    - std::numeric_limits<T>::lowest
    - BT::StrCat
    - BT::convertFromString
    - magic_enum::detail::reflected_max
    - RuntimeError
    linkageType: ''
    returnType: T
    signature: T ConvertWithBoundCheck(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ConvertWithBoundCheck
      Src: /src/behaviortreecpp/src/basic_types.cpp:174,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 175
      start: 172
    functionDepth: 2
    functionLinenumber: 172
    functionLinenumberEnd: 175
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 15
    functionsReached:
    - BT::ConvertWithBoundCheck
    linkageType: ''
    returnType: int8_t
    signature: int8_t convertFromString<int8_t>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ConvertWithBoundCheck
      Src: /src/behaviortreecpp/src/basic_types.cpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 178
    functionDepth: 2
    functionLinenumber: 178
    functionLinenumberEnd: 181
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 15
    functionsReached:
    - BT::ConvertWithBoundCheck
    linkageType: ''
    returnType: int16_t
    signature: int16_t convertFromString<int16_t>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ConvertWithBoundCheck
      Src: /src/behaviortreecpp/src/basic_types.cpp:186,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 184
    functionDepth: 2
    functionLinenumber: 184
    functionLinenumberEnd: 187
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 15
    functionsReached:
    - BT::ConvertWithBoundCheck
    linkageType: ''
    returnType: int32_t
    signature: int32_t convertFromString<int32_t>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ConvertWithBoundCheck
      Src: /src/behaviortreecpp/src/basic_types.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 190
    functionDepth: 2
    functionLinenumber: 190
    functionLinenumberEnd: 193
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 15
    functionsReached:
    - BT::ConvertWithBoundCheck
    linkageType: ''
    returnType: uint8_t
    signature: uint8_t convertFromString<uint8_t>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ConvertWithBoundCheck
      Src: /src/behaviortreecpp/src/basic_types.cpp:198,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 196
    functionDepth: 2
    functionLinenumber: 196
    functionLinenumberEnd: 199
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 15
    functionsReached:
    - BT::ConvertWithBoundCheck
    linkageType: ''
    returnType: uint16_t
    signature: uint16_t convertFromString<uint16_t>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ConvertWithBoundCheck
      Src: /src/behaviortreecpp/src/basic_types.cpp:204,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 202
    functionDepth: 2
    functionLinenumber: 202
    functionLinenumberEnd: 205
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 15
    functionsReached:
    - BT::ConvertWithBoundCheck
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t convertFromString<uint32_t>(StringView str)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:211,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:212,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/basic_types.cpp:213,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/src/basic_types.cpp:214,1
    - Dst: StringView::empty
      Src: /src/behaviortreecpp/src/basic_types.cpp:225,1
    - Dst: StringView::front
      Src: /src/behaviortreecpp/src/basic_types.cpp:229,1
    - Dst: std::isspace
      Src: /src/behaviortreecpp/src/basic_types.cpp:230,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/basic_types.cpp:230,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:239,1
    - Dst: ::newlocale
      Src: /src/behaviortreecpp/src/basic_types.cpp:250,1
    - Dst: static_cast<::locale_t>
      Src: /src/behaviortreecpp/src/basic_types.cpp:250,1
    - Dst: static_cast<::locale_t>
      Src: /src/behaviortreecpp/src/basic_types.cpp:251,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:256,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:256,1
    - Dst: ::strtod_l
      Src: /src/behaviortreecpp/src/basic_types.cpp:259,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/src/basic_types.cpp:259,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/src/basic_types.cpp:260,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/src/basic_types.cpp:264,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:264,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 30
    argCount: 3
    argNames:
    - str
    - ' out'
    - require_full_consumption
    argTypes:
    - StringView
    - double
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 271
    functionName: BT::parseDouble
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 2
    functionsReached:
    - std::from_chars
    - std::string::size
    - StringView::empty
    - std::string::c_str
    - StringView::data
    - ::newlocale
    - static_cast<::locale_t>
    - StringView::size
    - std::errc
    - ::strtod_l
    - StringView::front
    - static_cast<unsigned char>
    - std::isspace
    linkageType: ''
    returnType: bool
    signature: bool parseDouble(StringView str, double& out, bool require_full_consumption)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::parseDouble
      Src: /src/behaviortreecpp/src/basic_types.cpp:277,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:279,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/basic_types.cpp:279,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 274
    functionDepth: 2
    functionLinenumber: 274
    functionLinenumberEnd: 282
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 15
    functionsReached:
    - BT::StrCat
    - RuntimeError
    - BT::parseDouble
    linkageType: ''
    returnType: double
    signature: double convertFromString<double>(StringView str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/basic_types.cpp:290,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:290,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:290,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:290,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/src/basic_types.cpp:291,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:293,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/basic_types.cpp:293,1
    - Dst: BT::parseDouble
      Src: /src/behaviortreecpp/src/basic_types.cpp:298,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:300,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/basic_types.cpp:300,1
    - Dst: static_cast<float>
      Src: /src/behaviortreecpp/src/basic_types.cpp:302,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 285
    functionDepth: 2
    functionLinenumber: 285
    functionLinenumberEnd: 304
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 15
    functionsReached:
    - std::from_chars
    - BT::parseDouble
    - StringView::data
    - BT::StrCat
    - StringView::size
    - std::errc
    - RuntimeError
    - static_cast<float>
    linkageType: ''
    returnType: float
    signature: float convertFromString<float>(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::StartWith
      Src: /src/behaviortreecpp/src/basic_types.cpp:309,1
    - Dst: StringView::remove_prefix
      Src: /src/behaviortreecpp/src/basic_types.cpp:311,1
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/basic_types.cpp:312,1
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/src/basic_types.cpp:314,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/basic_types.cpp:316,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:316,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/basic_types.cpp:319,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/src/basic_types.cpp:319,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 322
      start: 307
    functionDepth: 2
    functionLinenumber: 307
    functionLinenumberEnd: 322
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 16
    functionsReached:
    - std::vector::reserve
    - BT::StartWith
    - BT::convertFromString
    - BT::splitString
    - StringView::remove_prefix
    - std::vector::push_back
    - parser::parse
    - auto::size
    linkageType: ''
    returnType: std::vector<int>
    signature: std::vector<int> convertFromString<std::vector<int>>(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::StartWith
      Src: /src/behaviortreecpp/src/basic_types.cpp:327,1
    - Dst: StringView::remove_prefix
      Src: /src/behaviortreecpp/src/basic_types.cpp:329,1
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/basic_types.cpp:330,1
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/src/basic_types.cpp:332,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/basic_types.cpp:334,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:334,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/basic_types.cpp:337,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/src/basic_types.cpp:337,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 325
    functionDepth: 2
    functionLinenumber: 325
    functionLinenumberEnd: 340
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 17
    functionsReached:
    - std::vector::reserve
    - BT::StartWith
    - BT::convertFromString
    - BT::splitString
    - StringView::remove_prefix
    - std::vector::push_back
    - parser::parse
    - auto::size
    linkageType: ''
    returnType: std::vector<double>
    signature: std::vector<double> convertFromString<std::vector<double>>(StringView
      str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::StartWith
      Src: /src/behaviortreecpp/src/basic_types.cpp:345,1
    - Dst: StringView::remove_prefix
      Src: /src/behaviortreecpp/src/basic_types.cpp:347,1
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/basic_types.cpp:348,1
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/src/basic_types.cpp:350,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/basic_types.cpp:352,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:352,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/basic_types.cpp:355,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/src/basic_types.cpp:355,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 343
    functionDepth: 2
    functionLinenumber: 343
    functionLinenumberEnd: 358
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 18
    functionsReached:
    - std::vector::reserve
    - BT::StartWith
    - BT::convertFromString
    - BT::splitString
    - StringView::remove_prefix
    - std::vector::push_back
    - parser::parse
    - auto::size
    linkageType: ''
    returnType: std::vector<bool>
    signature: std::vector<bool> convertFromString<std::vector<bool>>(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::StartWith
      Src: /src/behaviortreecpp/src/basic_types.cpp:363,1
    - Dst: StringView::remove_prefix
      Src: /src/behaviortreecpp/src/basic_types.cpp:365,1
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/basic_types.cpp:366,1
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/src/basic_types.cpp:368,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/basic_types.cpp:370,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:370,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/basic_types.cpp:373,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/src/basic_types.cpp:373,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 376
      start: 361
    functionDepth: 2
    functionLinenumber: 361
    functionLinenumberEnd: 376
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 19
    functionsReached:
    - std::vector::reserve
    - BT::StartWith
    - BT::convertFromString
    - BT::splitString
    - StringView::remove_prefix
    - std::vector::push_back
    - parser::parse
    - auto::size
    linkageType: ''
    returnType: std::vector<std::string>
    signature: std::vector<std::string> convertFromString<std::vector<std::string>>(StringView
      str)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:381,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:392,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:399,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:406,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 20
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 379
    functionDepth: 1
    functionLinenumber: 379
    functionLinenumberEnd: 407
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 19
    functionsReached:
    - StringView::size
    - RuntimeError
    linkageType: ''
    returnType: bool
    signature: bool convertFromString<bool>(StringView str)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:423,1
    - Dst: string
      Src: /src/behaviortreecpp/src/basic_types.cpp:423,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/src/basic_types.cpp:424,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 410
    functionDepth: 1
    functionLinenumber: 410
    functionLinenumberEnd: 425
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 19
    functionsReached:
    - static_cast<std::string>
    - RuntimeError
    - string
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus convertFromString<NodeStatus>(StringView str)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 428
    functionDepth: 0
    functionLinenumber: 428
    functionLinenumberEnd: 441
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 19
    functionsReached: []
    linkageType: ''
    returnType: NodeType
    signature: NodeType convertFromString<NodeType>(StringView str)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/basic_types.cpp:452,1
    - Dst: string
      Src: /src/behaviortreecpp/src/basic_types.cpp:452,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/src/basic_types.cpp:453,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 8
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 444
    functionDepth: 1
    functionLinenumber: 444
    functionLinenumberEnd: 454
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 19
    functionsReached:
    - static_cast<std::string>
    - RuntimeError
    - string
    linkageType: ''
    returnType: PortDirection
    signature: PortDirection convertFromString<PortDirection>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toStr
      Src: /src/behaviortreecpp/src/basic_types.cpp:458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' os'
    - ' type'
    argTypes:
    - std::ostream
    - NodeType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 456
    functionDepth: 0
    functionLinenumber: 456
    functionLinenumberEnd: 460
    functionName: '& operator<<(std::ostream& os, const NodeType& type)'
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - toStr
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& os, const NodeType& type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toStr
      Src: /src/behaviortreecpp/src/basic_types.cpp:464,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' os'
    - ' status'
    argTypes:
    - std::ostream
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 462
    functionDepth: 0
    functionLinenumber: 462
    functionLinenumberEnd: 466
    functionName: '& operator<<(std::ostream& os, const NodeStatus& status)'
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - toStr
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& os, const NodeStatus& status)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toStr
      Src: /src/behaviortreecpp/src/basic_types.cpp:470,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' os'
    - ' type'
    argTypes:
    - std::ostream
    - PortDirection
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 468
    functionDepth: 0
    functionLinenumber: 468
    functionLinenumberEnd: 472
    functionName: '& operator<<(std::ostream& os, const PortDirection& type)'
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - toStr
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream & operator<<(std::ostream& os, const PortDirection& type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/basic_types.cpp:477,1
    - Dst: size
      Src: /src/behaviortreecpp/src/basic_types.cpp:480,1
    - Dst: find_first_of
      Src: /src/behaviortreecpp/src/basic_types.cpp:482,1
    - Dst: size
      Src: /src/behaviortreecpp/src/basic_types.cpp:485,1
    - Dst: data
      Src: /src/behaviortreecpp/src/basic_types.cpp:487,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/basic_types.cpp:488,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ' strToSplit'
    - delimeter
    argTypes:
    - StringView
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 474
    functionDepth: 1
    functionLinenumber: 474
    functionLinenumberEnd: 492
    functionName: BT::splitString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 15
    functionsReached:
    - std::vector::reserve
    - size
    - data
    - find_first_of
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<StringView>
    signature: std::vector<StringView> splitString(const StringView& strToSplit, char
      delimeter)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 497
      start: 494
    functionDepth: 0
    functionLinenumber: 494
    functionLinenumberEnd: 497
    functionName: BT::PortInfo::direction
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PortDirection
    signature: PortDirection PortInfo::direction() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 499
    functionDepth: 0
    functionLinenumber: 499
    functionLinenumberEnd: 502
    functionName: '& TypeInfo::type() const'
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::type_index
    signature: std::type_index & TypeInfo::type() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 504
    functionDepth: 0
    functionLinenumber: 504
    functionLinenumberEnd: 507
    functionName: '& TypeInfo::typeName() const'
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & TypeInfo::typeName() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: converter_
      Src: /src/behaviortreecpp/src/basic_types.cpp:513,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 509
    functionDepth: 0
    functionLinenumber: 509
    functionLinenumberEnd: 516
    functionName: BT::TypeInfo::parseString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - converter_
    linkageType: ''
    returnType: Any
    signature: Any TypeInfo::parseString(const char* str) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: converter_
      Src: /src/behaviortreecpp/src/basic_types.cpp:522,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 525
      start: 518
    functionDepth: 0
    functionLinenumber: 518
    functionLinenumberEnd: 525
    functionName: BT::TypeInfo::parseString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - converter_
    linkageType: ''
    returnType: Any
    signature: Any TypeInfo::parseString(const std::string& str) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/src/basic_types.cpp:529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - description
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 527
    functionDepth: 0
    functionLinenumber: 527
    functionLinenumberEnd: 530
    functionName: BT::PortInfo::setDescription
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - static_cast<std::string>
    linkageType: ''
    returnType: void
    signature: void PortInfo::setDescription(StringView description)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 535
      start: 532
    functionDepth: 0
    functionLinenumber: 532
    functionLinenumberEnd: 535
    functionName: '& PortInfo::description() const'
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & PortInfo::description() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 540
      start: 537
    functionDepth: 0
    functionLinenumber: 537
    functionLinenumberEnd: 540
    functionName: '& PortInfo::defaultValue() const'
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Any
    signature: Any & PortInfo::defaultValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 545
      start: 542
    functionDepth: 0
    functionLinenumber: 542
    functionLinenumberEnd: 545
    functionName: '& PortInfo::defaultValueString() const'
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & PortInfo::defaultValueString() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: StringView::empty
      Src: /src/behaviortreecpp/src/basic_types.cpp:549,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/basic_types.cpp:553,1
    - Dst: std::isalpha
      Src: /src/behaviortreecpp/src/basic_types.cpp:555,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/basic_types.cpp:555,1
    - Dst: BT::findForbiddenChar
      Src: /src/behaviortreecpp/src/basic_types.cpp:560,1
    - Dst: BT::IsReservedAttribute
      Src: /src/behaviortreecpp/src/basic_types.cpp:564,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 565
      start: 547
    functionDepth: 2
    functionLinenumber: 547
    functionLinenumberEnd: 565
    functionName: BT::IsAllowedPortName
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - StringView::empty
    - StringView::data
    - BT::findForbiddenChar
    - BT::IsReservedAttribute
    - static_cast<unsigned char>
    - std::isalpha
    linkageType: ''
    returnType: bool
    signature: bool IsAllowedPortName(StringView str)
  - BBCount: 3
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 567
    functionDepth: 0
    functionLinenumber: 567
    functionLinenumberEnd: 584
    functionName: BT::IsReservedAttribute
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool IsReservedAttribute(StringView str)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/basic_types.cpp:595,1
    - Dst: find
      Src: /src/behaviortreecpp/src/basic_types.cpp:607,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/src/basic_types.cpp:607,1
    - Dst: std::array::end
      Src: /src/behaviortreecpp/src/basic_types.cpp:607,1
    - Dst: std::array::end
      Src: /src/behaviortreecpp/src/basic_types.cpp:608,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 1
    argNames:
    - name
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 586
    functionDepth: 1
    functionLinenumber: 586
    functionLinenumberEnd: 614
    functionName: BT::findForbiddenChar
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 2
    functionsReached:
    - find
    - std::array::end
    - static_cast<unsigned char>
    - std::array::begin
    linkageType: ''
    returnType: char
    signature: char findForbiddenChar(StringView name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/basic_types.cpp:618,1
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/src/basic_types.cpp:619,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/src/basic_types.cpp:622,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/src/basic_types.cpp:622,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - json_text
    - type
    argTypes:
    - StringView
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 616
    functionDepth: 1
    functionLinenumber: 616
    functionLinenumberEnd: 625
    functionName: BT::convertFromJSON
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 1
    functionsReached:
    - auto::error
    - BT::Blackboard::get
    - parser::parse
    - std::runtime_error
    linkageType: ''
    returnType: Any
    signature: Any convertFromJSON(StringView json_text, std::type_index type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/src/basic_types.cpp:630,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/basic_types.cpp:632,1
    - Dst: nlohmann::json::dump
      Src: /src/behaviortreecpp/src/basic_types.cpp:632,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/basic_types.cpp:634,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 635
      start: 627
    functionDepth: 1
    functionLinenumber: 627
    functionLinenumberEnd: 635
    functionName: BT::toJsonString
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 0
    functionsReached:
    - nonstd::make_unexpected
    - BT::StrCat
    - BT::Blackboard::get
    - nlohmann::json::dump
    linkageType: ''
    returnType: Expected<std::string>
    signature: Expected<std::string> toJsonString(const Any& value)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:639,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:639,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:643,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - str
    - prefix
    argTypes:
    - StringView
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 637
    functionDepth: 1
    functionLinenumber: 637
    functionLinenumberEnd: 651
    functionName: BT::StartWith
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 9
    functionsReached:
    - StringView::size
    linkageType: ''
    returnType: bool
    signature: bool StartWith(StringView str, StringView prefix)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/basic_types.cpp:655,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - str
    - prefix
    argTypes:
    - StringView
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 653
    functionDepth: 1
    functionLinenumber: 653
    functionLinenumberEnd: 656
    functionName: BT::StartWith
    functionSourceFile: /src/behaviortreecpp/src/basic_types.cpp
    functionUses: 9
    functionsReached:
    - StringView::size
    linkageType: ''
    returnType: bool
    signature: bool StartWith(StringView str, char prefix)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 25
    functionName: ActionNodeBase::ActionNodeBase
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ActionNodeBase::ActionNodeBase(const std::string& name, const
      NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/action_node.cpp:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - tick_functor
    - ' config'
    argTypes:
    - std::string
    - SimpleActionNode::TickFunctor
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 33
    functionName: SimpleActionNode::SimpleActionNode
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SimpleActionNode::SimpleActionNode(const std::string& name,\n
      \                                  SimpleActionNode::TickFunctor tick_functor,\n
      \                                  const NodeConfig& config)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: status
      Src: /src/behaviortreecpp/src/action_node.cpp:37,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/action_node.cpp:41,1
    - Dst: tick_functor_
      Src: /src/behaviortreecpp/src/action_node.cpp:45,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/action_node.cpp:48,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 51
    functionName: SimpleActionNode::tick
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - status
    - tick_functor_
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus SimpleActionNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 57
    functionName: SyncActionNode::SyncActionNode
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SyncActionNode::SyncActionNode(const std::string& name, const
      NodeConfig& config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SyncActionNode::executeTick
      Src: /src/behaviortreecpp/src/action_node.cpp:61,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/action_node.cpp:64,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 67
    functionName: SyncActionNode::executeTick
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 1
    functionsReached:
    - SyncActionNode::executeTick
    - LogicError
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus SyncActionNode::executeTick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<CoroActionNode*>
      Src: /src/behaviortreecpp/src/action_node.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: CoroEntry
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 0
    functionsReached:
    - static_cast<CoroActionNode*>
    linkageType: ''
    returnType: void
    signature: void CoroEntry(mco_coro* co)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<CoroActionNode*>
      Src: /src/behaviortreecpp/src/action_node.cpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: CoroEntry
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 0
    functionsReached:
    - static_cast<CoroActionNode*>
    linkageType: ''
    returnType: void
    signature: void CoroEntry(mco_coro* co)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Pimpl::Pimpl
      Src: /src/behaviortreecpp/src/action_node.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 87
    functionName: CoroActionNode::CoroActionNode
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 0
    functionsReached:
    - Pimpl::Pimpl
    linkageType: ''
    returnType: void
    signature: void CoroActionNode::CoroActionNode(const std::string& name, const
      NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CoroActionNode::destroyCoroutine
      Src: /src/behaviortreecpp/src/action_node.cpp:93,1
    - Dst: what
      Src: /src/behaviortreecpp/src/action_node.cpp:97,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 89
    functionDepth: 1
    functionLinenumber: 89
    functionLinenumberEnd: 99
    functionName: CoroActionNode::~CoroActionNode()
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 0
    functionsReached:
    - what
    - CoroActionNode::destroyCoroutine
    linkageType: ''
    returnType: void
    signature: void CoroActionNode::~CoroActionNode()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/action_node.cpp:103,1
    - Dst: mco_yield
      Src: /src/behaviortreecpp/src/action_node.cpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 101
    functionDepth: 1
    functionLinenumber: 101
    functionLinenumberEnd: 105
    functionName: CoroActionNode::setStatusRunningAndYield
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - mco_yield
    linkageType: ''
    returnType: void
    signature: void CoroActionNode::setStatusRunningAndYield()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: mco_desc_init
      Src: /src/behaviortreecpp/src/action_node.cpp:113,1
    - Dst: mco_create
      Src: /src/behaviortreecpp/src/action_node.cpp:116,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/action_node.cpp:119,1
    - Dst: mco_resume
      Src: /src/behaviortreecpp/src/action_node.cpp:125,1
    - Dst: mco_status
      Src: /src/behaviortreecpp/src/action_node.cpp:129,1
    - Dst: CoroActionNode::destroyCoroutine
      Src: /src/behaviortreecpp/src/action_node.cpp:131,1
    - Dst: status
      Src: /src/behaviortreecpp/src/action_node.cpp:134,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 135
    functionName: CoroActionNode::executeTick
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 0
    functionsReached:
    - status
    - mco_status
    - RuntimeError
    - mco_resume
    - mco_create
    - CoroActionNode::destroyCoroutine
    - mco_desc_init
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus CoroActionNode::executeTick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/action_node.cpp:139,1
    - Dst: BT::TreeNode::executeTick
      Src: /src/behaviortreecpp/src/action_node.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 1
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: CoroActionNode::tickImpl
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - BT::TreeNode::executeTick
    linkageType: ''
    returnType: void
    signature: void CoroActionNode::tickImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CoroActionNode::destroyCoroutine
      Src: /src/behaviortreecpp/src/action_node.cpp:144,1
    - Dst: resetStatus
      Src: /src/behaviortreecpp/src/action_node.cpp:145,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 146
    functionName: CoroActionNode::halt
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 1
    functionsReached:
    - resetStatus
    - CoroActionNode::destroyCoroutine
    linkageType: ''
    returnType: void
    signature: void CoroActionNode::halt()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: mco_destroy
      Src: /src/behaviortreecpp/src/action_node.cpp:152,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/action_node.cpp:155,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 159
    functionName: CoroActionNode::destroyCoroutine
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 3
    functionsReached:
    - RuntimeError
    - mco_destroy
    linkageType: ''
    returnType: void
    signature: void CoroActionNode::destroyCoroutine()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: load
      Src: /src/behaviortreecpp/src/action_node.cpp:163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 164
    functionName: StatefulActionNode::isHaltRequested
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 0
    functionsReached:
    - load
    linkageType: ''
    returnType: bool
    signature: bool StatefulActionNode::isHaltRequested() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: status
      Src: /src/behaviortreecpp/src/action_node.cpp:168,1
    - Dst: onStart
      Src: /src/behaviortreecpp/src/action_node.cpp:172,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/action_node.cpp:175,1
    - Dst: onRunning
      Src: /src/behaviortreecpp/src/action_node.cpp:182,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/action_node.cpp:185,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 166
    functionDepth: 0
    functionLinenumber: 166
    functionLinenumberEnd: 190
    functionName: StatefulActionNode::tick
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 0
    functionsReached:
    - status
    - onStart
    - LogicError
    - onRunning
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus StatefulActionNode::tick()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: store
      Src: /src/behaviortreecpp/src/action_node.cpp:194,1
    - Dst: status
      Src: /src/behaviortreecpp/src/action_node.cpp:195,1
    - Dst: onHalted
      Src: /src/behaviortreecpp/src/action_node.cpp:197,1
    - Dst: resetStatus
      Src: /src/behaviortreecpp/src/action_node.cpp:199,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 192
    functionDepth: 0
    functionLinenumber: 192
    functionLinenumberEnd: 200
    functionName: StatefulActionNode::halt
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 0
    functionsReached:
    - onHalted
    - status
    - resetStatus
    - store
    linkageType: ''
    returnType: void
    signature: void StatefulActionNode::halt()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: status
      Src: /src/behaviortreecpp/src/action_node.cpp:207,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/action_node.cpp:209,1
    - Dst: std::async
      Src: /src/behaviortreecpp/src/action_node.cpp:211,1
    - Dst: tick
      Src: /src/behaviortreecpp/src/action_node.cpp:214,1
    - Dst: BT::ThreadedAction::isHaltRequested
      Src: /src/behaviortreecpp/src/action_node.cpp:215,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/action_node.cpp:217,1
    - Dst: registrationName
      Src: /src/behaviortreecpp/src/action_node.cpp:222,1
    - Dst: name
      Src: /src/behaviortreecpp/src/action_node.cpp:223,1
    - Dst: std::current_exception
      Src: /src/behaviortreecpp/src/action_node.cpp:227,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/action_node.cpp:228,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/action_node.cpp:230,1
    - Dst: std::rethrow_exception
      Src: /src/behaviortreecpp/src/action_node.cpp:241,1
    - Dst: status
      Src: /src/behaviortreecpp/src/action_node.cpp:243,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 244
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 244
    functionName: BT::ThreadedAction::executeTick()
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 0
    functionsReached:
    - tick
    - registrationName
    - setStatus
    - status
    - name
    - std::current_exception
    - BT::ThreadedAction::isHaltRequested
    - std::rethrow_exception
    - std::async
    - emitWakeUpSignal
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus BT::ThreadedAction::executeTick()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: store
      Src: /src/behaviortreecpp/src/action_node.cpp:248,1
    - Dst: valid
      Src: /src/behaviortreecpp/src/action_node.cpp:250,1
    - Dst: wait
      Src: /src/behaviortreecpp/src/action_node.cpp:252,1
    - Dst: resetStatus
      Src: /src/behaviortreecpp/src/action_node.cpp:255,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 246
    functionDepth: 0
    functionLinenumber: 246
    functionLinenumberEnd: 256
    functionName: ThreadedAction::halt
    functionSourceFile: /src/behaviortreecpp/src/action_node.cpp
    functionUses: 1
    functionsReached:
    - wait
    - valid
    - resetStatus
    - store
    linkageType: ''
    returnType: void
    signature: void ThreadedAction::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 20
    functionName: BT::ControlNode::ControlNode
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ControlNode::ControlNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/src/control_node.cpp:24,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - child
    argTypes:
    - TreeNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 25
    functionName: BT::ControlNode::addChild
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 0
    functionsReached:
    - push_back
    linkageType: ''
    returnType: void
    signature: void ControlNode::addChild(TreeNode* child)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/control_node.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: BT::ControlNode::childrenCount
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: size_t
    signature: size_t ControlNode::childrenCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::resetChildren
      Src: /src/behaviortreecpp/src/control_node.cpp:34,1
    - Dst: resetStatus
      Src: /src/behaviortreecpp/src/control_node.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionName: BT::ControlNode::halt
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::resetChildren
    - resetStatus
    linkageType: ''
    returnType: void
    signature: void ControlNode::halt()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: status
      Src: /src/behaviortreecpp/src/control_node.cpp:42,1
    - Dst: haltNode
      Src: /src/behaviortreecpp/src/control_node.cpp:44,1
    - Dst: resetStatus
      Src: /src/behaviortreecpp/src/control_node.cpp:46,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 48
    functionName: BT::ControlNode::resetChildren
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 1
    functionsReached:
    - haltNode
    - status
    - resetStatus
    linkageType: ''
    returnType: void
    signature: void ControlNode::resetChildren()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: '& ControlNode::children() const'
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<TreeNode*>
    signature: std::vector<TreeNode*> & ControlNode::children() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: auto*::status
      Src: /src/behaviortreecpp/src/control_node.cpp:58,1
    - Dst: auto*::haltNode
      Src: /src/behaviortreecpp/src/control_node.cpp:60,1
    - Dst: auto*::resetStatus
      Src: /src/behaviortreecpp/src/control_node.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 63
    functionName: BT::ControlNode::haltChild
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 0
    functionsReached:
    - auto*::status
    - auto*::resetStatus
    - auto*::haltNode
    linkageType: ''
    returnType: void
    signature: void ControlNode::haltChild(size_t i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/control_node.cpp:67,1
    - Dst: BT::ControlNode::haltChild
      Src: /src/behaviortreecpp/src/control_node.cpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 71
    functionName: BT::ControlNode::haltChildren
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::haltChild
    - size
    linkageType: ''
    returnType: void
    signature: void ControlNode::haltChildren()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/control_node.cpp:75,1
    - Dst: BT::ControlNode::haltChild
      Src: /src/behaviortreecpp/src/control_node.cpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - first
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 79
    functionName: BT::ControlNode::haltChildren
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::haltChild
    - size
    linkageType: ''
    returnType: void
    signature: void ControlNode::haltChildren(size_t first)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 20
    functionName: BT::ControlNode::ControlNode
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ControlNode::ControlNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/src/control_node.cpp:24,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - child
    argTypes:
    - TreeNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 25
    functionName: BT::ControlNode::addChild
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 0
    functionsReached:
    - push_back
    linkageType: ''
    returnType: void
    signature: void ControlNode::addChild(TreeNode* child)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/control_node.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 30
    functionName: BT::ControlNode::childrenCount
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: size_t
    signature: size_t ControlNode::childrenCount() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::resetChildren
      Src: /src/behaviortreecpp/src/control_node.cpp:34,1
    - Dst: resetStatus
      Src: /src/behaviortreecpp/src/control_node.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionName: BT::ControlNode::halt
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::resetChildren
    - resetStatus
    linkageType: ''
    returnType: void
    signature: void ControlNode::halt()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: status
      Src: /src/behaviortreecpp/src/control_node.cpp:42,1
    - Dst: haltNode
      Src: /src/behaviortreecpp/src/control_node.cpp:44,1
    - Dst: resetStatus
      Src: /src/behaviortreecpp/src/control_node.cpp:46,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 48
    functionName: BT::ControlNode::resetChildren
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 2
    functionsReached:
    - haltNode
    - status
    - resetStatus
    linkageType: ''
    returnType: void
    signature: void ControlNode::resetChildren()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 53
    functionName: '& ControlNode::children() const'
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<TreeNode*>
    signature: std::vector<TreeNode*> & ControlNode::children() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: auto*::status
      Src: /src/behaviortreecpp/src/control_node.cpp:58,1
    - Dst: auto*::haltNode
      Src: /src/behaviortreecpp/src/control_node.cpp:60,1
    - Dst: auto*::resetStatus
      Src: /src/behaviortreecpp/src/control_node.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 63
    functionName: BT::ControlNode::haltChild
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 2
    functionsReached:
    - auto*::status
    - auto*::resetStatus
    - auto*::haltNode
    linkageType: ''
    returnType: void
    signature: void ControlNode::haltChild(size_t i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/control_node.cpp:67,1
    - Dst: BT::ControlNode::haltChild
      Src: /src/behaviortreecpp/src/control_node.cpp:69,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 71
    functionName: BT::ControlNode::haltChildren
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::haltChild
    - size
    linkageType: ''
    returnType: void
    signature: void ControlNode::haltChildren()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/control_node.cpp:75,1
    - Dst: BT::ControlNode::haltChild
      Src: /src/behaviortreecpp/src/control_node.cpp:77,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - first
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 73
    functionDepth: 1
    functionLinenumber: 73
    functionLinenumberEnd: 79
    functionName: BT::ControlNode::haltChildren
    functionSourceFile: /src/behaviortreecpp/src/control_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::haltChild
    - size
    linkageType: ''
    returnType: void
    signature: void ControlNode::haltChildren(size_t first)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:22,1
    - Dst: visitor
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:25,1
    - Dst: dynamic_cast<const BT::ControlNode*>
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:27,1
    - Dst: auto::children
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:29,1
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:31,1
    - Dst: static_cast<const TreeNode*>
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:31,1
    - Dst: dynamic_cast<const BT::DecoratorNode*>
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:34,1
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:36,1
    - Dst: auto::child
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:36,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - node
    - ' visitor'
    argTypes:
    - TreeNode*
    - std::function<void(const TreeNode*)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 17
    functionDepth: 1
    functionLinenumber: 17
    functionLinenumberEnd: 38
    functionName: BT::applyRecursiveVisitor
    functionSourceFile: /src/behaviortreecpp/src/behavior_tree.cpp
    functionUses: 1
    functionsReached:
    - visitor
    - dynamic_cast<const BT::ControlNode*>
    - auto::children
    - auto::child
    - LogicError
    - BT::applyRecursiveVisitor
    - static_cast<const TreeNode*>
    - dynamic_cast<const BT::DecoratorNode*>
    linkageType: ''
    returnType: void
    signature: "void applyRecursiveVisitor(const TreeNode* node,\n                           const
      std::function<void(const TreeNode*)>& visitor)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:44,1
    - Dst: visitor
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:47,1
    - Dst: dynamic_cast<BT::ControlNode*>
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:49,1
    - Dst: auto::children
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:51,1
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:53,1
    - Dst: dynamic_cast<BT::DecoratorNode*>
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:56,1
    - Dst: auto::child
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:58,1
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:60,1
    - Dst: auto::child
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:60,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - node
    - ' visitor'
    argTypes:
    - TreeNode*
    - std::function<void(TreeNode*)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 63
    functionName: BT::applyRecursiveVisitor
    functionSourceFile: /src/behaviortreecpp/src/behavior_tree.cpp
    functionUses: 2
    functionsReached:
    - visitor
    - dynamic_cast<BT::DecoratorNode*>
    - auto::children
    - auto::child
    - LogicError
    - BT::applyRecursiveVisitor
    - dynamic_cast<BT::ControlNode*>
    linkageType: ''
    returnType: void
    signature: void applyRecursiveVisitor(TreeNode* node, const std::function<void(TreeNode*)>&
      visitor)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: name
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:79,1
    - Dst: dynamic_cast<const BT::ControlNode*>
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:82,1
    - Dst: auto::children
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:84,1
    - Dst: recursivePrint
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:86,1
    - Dst: dynamic_cast<const BT::DecoratorNode*>
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:89,1
    - Dst: recursivePrint
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:91,1
    - Dst: auto::child
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:91,1
    - Dst: recursivePrint
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:96,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - root_node
    - ' stream'
    argTypes:
    - TreeNode*
    - std::ostream
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 98
    functionName: BT::printTreeRecursively
    functionSourceFile: /src/behaviortreecpp/src/behavior_tree.cpp
    functionUses: 1
    functionsReached:
    - recursivePrint
    - dynamic_cast<const BT::ControlNode*>
    - auto::children
    - auto::child
    - name
    - dynamic_cast<const BT::DecoratorNode*>
    linkageType: ''
    returnType: void
    signature: void printTreeRecursively(const TreeNode* root_node, std::ostream&
      stream)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::clear
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:103,1
    - Dst: push_back
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:106,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:107,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:107,1
    - Dst: static_cast<uint8_t>
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:107,1
    - Dst: status
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:107,1
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - root_node
    - ' serialized_buffer'
    argTypes:
    - TreeNode*
    - SerializedTreeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 100
    functionDepth: 2
    functionLinenumber: 100
    functionLinenumberEnd: 111
    functionName: BT::buildSerializedStatusSnapshot
    functionSourceFile: /src/behaviortreecpp/src/behavior_tree.cpp
    functionUses: 0
    functionsReached:
    - UID
    - std::make_pair
    - status
    - BT::clear
    - push_back
    - BT::applyRecursiveVisitor
    - static_cast<uint8_t>
    linkageType: ''
    returnType: void
    signature: "void buildSerializedStatusSnapshot(const TreeNode* root_node,\n                                   SerializedTreeStatus&
      serialized_buffer)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:118,1
    - Dst: std::stoi
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:119,1
    - Dst: string
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:119,1
    - Dst: std::stoi
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:120,1
    - Dst: string
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:120,1
    - Dst: std::stoi
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:120,1
    - Dst: string
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 113
    functionDepth: 2
    functionLinenumber: 113
    functionLinenumberEnd: 123
    functionName: BT::LibraryVersionNumber
    functionSourceFile: /src/behaviortreecpp/src/behavior_tree.cpp
    functionUses: 0
    functionsReached:
    - string
    - std::stoi
    - BT::splitString
    linkageType: ''
    returnType: int
    signature: int LibraryVersionNumber()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: BT::LibraryVersionString
    functionSourceFile: /src/behaviortreecpp/src/behavior_tree.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * LibraryVersionString()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:22,1
    - Dst: visitor
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:25,1
    - Dst: dynamic_cast<const BT::ControlNode*>
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:27,1
    - Dst: auto::children
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:29,1
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:31,1
    - Dst: static_cast<const TreeNode*>
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:31,1
    - Dst: dynamic_cast<const BT::DecoratorNode*>
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:34,1
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:36,1
    - Dst: auto::child
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:36,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 2
    argNames:
    - node
    - ' visitor'
    argTypes:
    - TreeNode*
    - std::function<void(const TreeNode*)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 17
    functionDepth: 1
    functionLinenumber: 17
    functionLinenumberEnd: 38
    functionName: BT::applyRecursiveVisitor
    functionSourceFile: /src/behaviortreecpp/src/behavior_tree.cpp
    functionUses: 4
    functionsReached:
    - visitor
    - dynamic_cast<const BT::ControlNode*>
    - auto::children
    - auto::child
    - LogicError
    - BT::applyRecursiveVisitor
    - static_cast<const TreeNode*>
    - dynamic_cast<const BT::DecoratorNode*>
    linkageType: ''
    returnType: void
    signature: "void applyRecursiveVisitor(const TreeNode* node,\n                           const
      std::function<void(const TreeNode*)>& visitor)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:44,1
    - Dst: visitor
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:47,1
    - Dst: dynamic_cast<BT::ControlNode*>
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:49,1
    - Dst: auto::children
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:51,1
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:53,1
    - Dst: dynamic_cast<BT::DecoratorNode*>
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:56,1
    - Dst: auto::child
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:58,1
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:60,1
    - Dst: auto::child
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:60,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 2
    argNames:
    - node
    - ' visitor'
    argTypes:
    - TreeNode*
    - std::function<void(TreeNode*)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 63
    functionName: BT::applyRecursiveVisitor
    functionSourceFile: /src/behaviortreecpp/src/behavior_tree.cpp
    functionUses: 5
    functionsReached:
    - visitor
    - dynamic_cast<BT::DecoratorNode*>
    - auto::children
    - auto::child
    - LogicError
    - BT::applyRecursiveVisitor
    - dynamic_cast<BT::ControlNode*>
    linkageType: ''
    returnType: void
    signature: void applyRecursiveVisitor(TreeNode* node, const std::function<void(TreeNode*)>&
      visitor)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: name
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:79,1
    - Dst: dynamic_cast<const BT::ControlNode*>
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:82,1
    - Dst: auto::children
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:84,1
    - Dst: recursivePrint
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:86,1
    - Dst: dynamic_cast<const BT::DecoratorNode*>
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:89,1
    - Dst: recursivePrint
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:91,1
    - Dst: auto::child
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:91,1
    - Dst: recursivePrint
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:96,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - root_node
    - ' stream'
    argTypes:
    - TreeNode*
    - std::ostream
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 98
    functionName: BT::printTreeRecursively
    functionSourceFile: /src/behaviortreecpp/src/behavior_tree.cpp
    functionUses: 1
    functionsReached:
    - recursivePrint
    - dynamic_cast<const BT::ControlNode*>
    - auto::children
    - auto::child
    - name
    - dynamic_cast<const BT::DecoratorNode*>
    linkageType: ''
    returnType: void
    signature: void printTreeRecursively(const TreeNode* root_node, std::ostream&
      stream)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::clear
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:103,1
    - Dst: push_back
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:106,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:107,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:107,1
    - Dst: static_cast<uint8_t>
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:107,1
    - Dst: status
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:107,1
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:110,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - root_node
    - ' serialized_buffer'
    argTypes:
    - TreeNode*
    - SerializedTreeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 100
    functionDepth: 2
    functionLinenumber: 100
    functionLinenumberEnd: 111
    functionName: BT::buildSerializedStatusSnapshot
    functionSourceFile: /src/behaviortreecpp/src/behavior_tree.cpp
    functionUses: 0
    functionsReached:
    - UID
    - std::make_pair
    - status
    - BT::clear
    - push_back
    - BT::applyRecursiveVisitor
    - static_cast<uint8_t>
    linkageType: ''
    returnType: void
    signature: "void buildSerializedStatusSnapshot(const TreeNode* root_node,\n                                   SerializedTreeStatus&
      serialized_buffer)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:118,1
    - Dst: std::stoi
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:119,1
    - Dst: string
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:119,1
    - Dst: std::stoi
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:120,1
    - Dst: string
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:120,1
    - Dst: std::stoi
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:120,1
    - Dst: string
      Src: /src/behaviortreecpp/src/behavior_tree.cpp:120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 113
    functionDepth: 2
    functionLinenumber: 113
    functionLinenumberEnd: 123
    functionName: BT::LibraryVersionNumber
    functionSourceFile: /src/behaviortreecpp/src/behavior_tree.cpp
    functionUses: 0
    functionsReached:
    - string
    - std::stoi
    - BT::splitString
    linkageType: ''
    returnType: int
    signature: int LibraryVersionNumber()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 128
    functionName: BT::LibraryVersionString
    functionSourceFile: /src/behaviortreecpp/src/behavior_tree.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * LibraryVersionString()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 20
    functionName: BT::ConditionNode::ConditionNode
    functionSourceFile: /src/behaviortreecpp/src/condition_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ConditionNode::ConditionNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/condition_node.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - tick_functor
    - ' config'
    argTypes:
    - std::string
    - TickFunctor
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 26
    functionName: BT::SimpleConditionNode::SimpleConditionNode
    functionSourceFile: /src/behaviortreecpp/src/condition_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SimpleConditionNode::SimpleConditionNode(const std::string& name,\n
      \                                        TickFunctor tick_functor,\n                                         const
      NodeConfig& config)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tick_functor_
      Src: /src/behaviortreecpp/src/condition_node.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: BT::SimpleConditionNode::tick
    functionSourceFile: /src/behaviortreecpp/src/condition_node.cpp
    functionUses: 0
    functionsReached:
    - tick_functor_
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus SimpleConditionNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 20
    functionName: BT::ConditionNode::ConditionNode
    functionSourceFile: /src/behaviortreecpp/src/condition_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ConditionNode::ConditionNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/condition_node.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - tick_functor
    - ' config'
    argTypes:
    - std::string
    - TickFunctor
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 26
    functionName: BT::SimpleConditionNode::SimpleConditionNode
    functionSourceFile: /src/behaviortreecpp/src/condition_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SimpleConditionNode::SimpleConditionNode(const std::string& name,\n
      \                                        TickFunctor tick_functor,\n                                         const
      NodeConfig& config)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tick_functor_
      Src: /src/behaviortreecpp/src/condition_node.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 31
    functionName: BT::SimpleConditionNode::tick
    functionSourceFile: /src/behaviortreecpp/src/condition_node.cpp
    functionUses: 0
    functionsReached:
    - tick_functor_
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus SimpleConditionNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14
      start: 11
    functionDepth: 0
    functionLinenumber: 11
    functionLinenumberEnd: 14
    functionName: BT::SharedLibrary::SharedLibrary
    functionSourceFile: /src/behaviortreecpp/src/shared_library_WIN.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SharedLibrary::SharedLibrary()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: LoadLibrary
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:20,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:20,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:23,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 16
    functionDepth: 0
    functionLinenumber: 16
    functionLinenumberEnd: 26
    functionName: BT::SharedLibrary::load
    functionSourceFile: /src/behaviortreecpp/src/shared_library_WIN.cpp
    functionUses: 0
    functionsReached:
    - LoadLibrary
    - RuntimeError
    - c_str
    linkageType: ''
    returnType: void
    signature: void SharedLibrary::load(const std::string& path, int)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FreeLibrary
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:34,1
    - Dst: clear
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 38
    functionName: BT::SharedLibrary::unload
    functionSourceFile: /src/behaviortreecpp/src/shared_library_WIN.cpp
    functionUses: 0
    functionsReached:
    - FreeLibrary
    - clear
    linkageType: ''
    returnType: void
    signature: void SharedLibrary::unload()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: BT::SharedLibrary::isLoaded
    functionSourceFile: /src/behaviortreecpp/src/shared_library_WIN.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool SharedLibrary::isLoaded() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: UnicodeConverter::toUTF16
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:53,1
    - Dst: GetProcAddressW
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:54,1
    - Dst: std::wstring::c_str
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:54,1
    - Dst: GetProcAddress
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:56,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 61
    functionName: BT::SharedLibrary::findSymbol
    functionSourceFile: /src/behaviortreecpp/src/shared_library_WIN.cpp
    functionUses: 0
    functionsReached:
    - GetProcAddressW
    - std::wstring::c_str
    - GetProcAddress
    - UnicodeConverter::toUTF16
    - c_str
    linkageType: ''
    returnType: void
    signature: void * SharedLibrary::findSymbol(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: '& SharedLibrary::getPath() const'
    functionSourceFile: /src/behaviortreecpp/src/shared_library_WIN.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & SharedLibrary::getPath() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: BT::SharedLibrary::prefix
    functionSourceFile: /src/behaviortreecpp/src/shared_library_WIN.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string SharedLibrary::prefix()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 80
    functionName: BT::SharedLibrary::suffix
    functionSourceFile: /src/behaviortreecpp/src/shared_library_WIN.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string SharedLibrary::suffix()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14
      start: 11
    functionDepth: 0
    functionLinenumber: 11
    functionLinenumberEnd: 14
    functionName: BT::SharedLibrary::SharedLibrary
    functionSourceFile: /src/behaviortreecpp/src/shared_library_WIN.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SharedLibrary::SharedLibrary()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: LoadLibrary
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:20,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:20,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:23,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 16
    functionDepth: 0
    functionLinenumber: 16
    functionLinenumberEnd: 26
    functionName: BT::SharedLibrary::load
    functionSourceFile: /src/behaviortreecpp/src/shared_library_WIN.cpp
    functionUses: 0
    functionsReached:
    - LoadLibrary
    - RuntimeError
    - c_str
    linkageType: ''
    returnType: void
    signature: void SharedLibrary::load(const std::string& path, int)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FreeLibrary
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:34,1
    - Dst: clear
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 38
    functionName: BT::SharedLibrary::unload
    functionSourceFile: /src/behaviortreecpp/src/shared_library_WIN.cpp
    functionUses: 0
    functionsReached:
    - FreeLibrary
    - clear
    linkageType: ''
    returnType: void
    signature: void SharedLibrary::unload()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: BT::SharedLibrary::isLoaded
    functionSourceFile: /src/behaviortreecpp/src/shared_library_WIN.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool SharedLibrary::isLoaded() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: UnicodeConverter::toUTF16
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:53,1
    - Dst: GetProcAddressW
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:54,1
    - Dst: std::wstring::c_str
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:54,1
    - Dst: GetProcAddress
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:56,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/shared_library_WIN.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 61
    functionName: BT::SharedLibrary::findSymbol
    functionSourceFile: /src/behaviortreecpp/src/shared_library_WIN.cpp
    functionUses: 0
    functionsReached:
    - GetProcAddressW
    - std::wstring::c_str
    - GetProcAddress
    - UnicodeConverter::toUTF16
    - c_str
    linkageType: ''
    returnType: void
    signature: void * SharedLibrary::findSymbol(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: '& SharedLibrary::getPath() const'
    functionSourceFile: /src/behaviortreecpp/src/shared_library_WIN.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & SharedLibrary::getPath() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: BT::SharedLibrary::prefix
    functionSourceFile: /src/behaviortreecpp/src/shared_library_WIN.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string SharedLibrary::prefix()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 80
    functionName: BT::SharedLibrary::suffix
    functionSourceFile: /src/behaviortreecpp/src/shared_library_WIN.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string SharedLibrary::suffix()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:27,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - name
    - config
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionName: BT::PImpl
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void PImpl(std::string name, NodeConfig config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:57,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:57,1
    - Dst: PImpl::PImpl
      Src: /src/behaviortreecpp/src/tree_node.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - name
    - config
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: BT::TreeNode::TreeNode
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - PImpl::PImpl
    - std::move
    linkageType: ''
    returnType: void
    signature: void TreeNode::TreeNode(std::string name, NodeConfig config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 61
    functionName: BT::TreeNode::TreeNode
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void TreeNode::TreeNode(TreeNode&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:65,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 67
    functionName: '& TreeNode::operator=(TreeNode&& other) noexcept'
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: TreeNode
    signature: TreeNode & TreeNode::operator=(TreeNode&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: TreeNode::~TreeNode()
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TreeNode::~TreeNode()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: BT::TreeNode::checkPreConditions
      Src: /src/behaviortreecpp/src/tree_node.cpp:86,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/tree_node.cpp:88,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/tree_node.cpp:94,1
    - Dst: pre_tick
      Src: /src/behaviortreecpp/src/tree_node.cpp:96,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/tree_node.cpp:97,1
    - Dst: steady_clock::now
      Src: /src/behaviortreecpp/src/tree_node.cpp:111,1
    - Dst: std::atomic_thread_fence
      Src: /src/behaviortreecpp/src/tree_node.cpp:112,1
    - Dst: tick
      Src: /src/behaviortreecpp/src/tree_node.cpp:115,1
    - Dst: NodeExecutionError
      Src: /src/behaviortreecpp/src/tree_node.cpp:125,1
    - Dst: name
      Src: /src/behaviortreecpp/src/tree_node.cpp:125,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/src/tree_node.cpp:125,1
    - Dst: registrationName
      Src: /src/behaviortreecpp/src/tree_node.cpp:125,1
    - Dst: what
      Src: /src/behaviortreecpp/src/tree_node.cpp:125,1
    - Dst: std::atomic_thread_fence
      Src: /src/behaviortreecpp/src/tree_node.cpp:127,1
    - Dst: steady_clock::now
      Src: /src/behaviortreecpp/src/tree_node.cpp:128,1
    - Dst: monitor_tick
      Src: /src/behaviortreecpp/src/tree_node.cpp:131,1
    - Dst: duration_cast<microseconds>
      Src: /src/behaviortreecpp/src/tree_node.cpp:131,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/tree_node.cpp:137,1
    - Dst: BT::TreeNode::checkPostConditions
      Src: /src/behaviortreecpp/src/tree_node.cpp:139,1
    - Dst: post_tick
      Src: /src/behaviortreecpp/src/tree_node.cpp:144,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/tree_node.cpp:145,1
    - Dst: BT::TreeNode::setStatus
      Src: /src/behaviortreecpp/src/tree_node.cpp:154,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 157
    functionName: BT::TreeNode::executeTick
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 1
    functionsReached:
    - tick
    - registrationName
    - BT::TreeNode::checkPostConditions
    - BT::TreeNode::setStatus
    - steady_clock::now
    - auto::value
    - isStatusCompleted
    - post_tick
    - name
    - pre_tick
    - NodeExecutionError
    - fullPath
    - what
    - monitor_tick
    - std::atomic_thread_fence
    - duration_cast<microseconds>
    - BT::TreeNode::checkPreConditions
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus TreeNode::executeTick()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: halt
      Src: /src/behaviortreecpp/src/tree_node.cpp:161,1
    - Dst: config
      Src: /src/behaviortreecpp/src/tree_node.cpp:166,1
    - Dst: config
      Src: /src/behaviortreecpp/src/tree_node.cpp:166,1
    - Dst: parse_executor
      Src: /src/behaviortreecpp/src/tree_node.cpp:167,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 169
    functionName: BT::TreeNode::haltNode
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - halt
    - config
    - parse_executor
    linkageType: ''
    returnType: void
    signature: void TreeNode::haltNode()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/tree_node.cpp:175,1
    - Dst: name
      Src: /src/behaviortreecpp/src/tree_node.cpp:175,1
    - Dst: state_condition_variable::notify_all
      Src: /src/behaviortreecpp/src/tree_node.cpp:188,1
    - Dst: state_change_signal::notify
      Src: /src/behaviortreecpp/src/tree_node.cpp:189,1
    - Dst: std::chrono::high_resolution_clock::now
      Src: /src/behaviortreecpp/src/tree_node.cpp:189,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - new_status
    argTypes:
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 192
    functionName: BT::TreeNode::setStatus
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 1
    functionsReached:
    - std::chrono::high_resolution_clock::now
    - name
    - state_change_signal::notify
    - state_condition_variable::notify_all
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void TreeNode::setStatus(NodeStatus new_status)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: '& TreeNode::preConditionsScripts()'
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TreeNode::PreScripts
    signature: TreeNode::PreScripts & TreeNode::preConditionsScripts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionName: '& TreeNode::postConditionsScripts()'
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TreeNode::PostScripts
    signature: TreeNode::PostScripts & TreeNode::postConditionsScripts()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/src/tree_node.cpp:206,1
    - Dst: config
      Src: /src/behaviortreecpp/src/tree_node.cpp:206,1
    - Dst: static_cast<PreCond>
      Src: /src/behaviortreecpp/src/tree_node.cpp:219,1
    - Dst: parse_executor
      Src: /src/behaviortreecpp/src/tree_node.cpp:226,1
    - Dst: parse_executor
      Src: /src/behaviortreecpp/src/tree_node.cpp:251,1
    - Dst: BT::TreeNode::haltNode
      Src: /src/behaviortreecpp/src/tree_node.cpp:253,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/tree_node.cpp:258,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 204
    functionDepth: 1
    functionLinenumber: 204
    functionLinenumberEnd: 259
    functionName: BT::TreeNode::checkPreConditions
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 1
    functionsReached:
    - config
    - nonstd::make_unexpected
    - parse_executor
    - static_cast<PreCond>
    - BT::TreeNode::haltNode
    linkageType: ''
    returnType: Expected<NodeStatus>
    signature: Expected<NodeStatus> TreeNode::checkPreConditions()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/src/tree_node.cpp:267,1
    - Dst: config
      Src: /src/behaviortreecpp/src/tree_node.cpp:267,1
    - Dst: parse_executor
      Src: /src/behaviortreecpp/src/tree_node.cpp:268,1
    - Dst: ExecuteScript
      Src: /src/behaviortreecpp/src/tree_node.cpp:274,1
    - Dst: ExecuteScript
      Src: /src/behaviortreecpp/src/tree_node.cpp:278,1
    - Dst: ExecuteScript
      Src: /src/behaviortreecpp/src/tree_node.cpp:280,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - status
    argTypes:
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 281
    functionName: BT::TreeNode::checkPostConditions
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 1
    functionsReached:
    - config
    - ExecuteScript
    - parse_executor
    linkageType: ''
    returnType: void
    signature: void TreeNode::checkPostConditions(NodeStatus status)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: state_condition_variable::notify_all
      Src: /src/behaviortreecpp/src/tree_node.cpp:294,1
    - Dst: state_change_signal::notify
      Src: /src/behaviortreecpp/src/tree_node.cpp:295,1
    - Dst: std::chrono::high_resolution_clock::now
      Src: /src/behaviortreecpp/src/tree_node.cpp:295,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 298
    functionName: BT::TreeNode::resetStatus
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - state_condition_variable::notify_all
    - std::chrono::high_resolution_clock::now
    - state_change_signal::notify
    linkageType: ''
    returnType: void
    signature: void TreeNode::resetStatus()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 300
    functionDepth: 0
    functionLinenumber: 300
    functionLinenumberEnd: 304
    functionName: BT::TreeNode::status
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus TreeNode::status() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::TreeNode::isHalted
      Src: /src/behaviortreecpp/src/tree_node.cpp:310,1
    - Dst: state_condition_variable::wait
      Src: /src/behaviortreecpp/src/tree_node.cpp:312,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 306
    functionDepth: 1
    functionLinenumber: 306
    functionLinenumberEnd: 315
    functionName: BT::TreeNode::waitValidStatus
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - BT::TreeNode::isHalted
    - state_condition_variable::wait
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus TreeNode::waitValidStatus()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 320
    functionName: '& TreeNode::name() const'
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & TreeNode::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 325
    functionName: BT::TreeNode::isHalted
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool TreeNode::isHalted() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: state_change_signal::subscribe
      Src: /src/behaviortreecpp/src/tree_node.cpp:330,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - callback
    argTypes:
    - TreeNode::StatusChangeCallback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 331
    functionName: BT::TreeNode::subscribeToStatusChange
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - state_change_signal::subscribe
    - std::move
    linkageType: ''
    returnType: TreeNode::StatusChangeSubscriber
    signature: TreeNode::StatusChangeSubscriber TreeNode::subscribeToStatusChange(TreeNode::StatusChangeCallback
      callback)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - callback
    argTypes:
    - PreTickCallback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 337
    functionName: BT::TreeNode::setPreTickFunction
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void TreeNode::setPreTickFunction(PreTickCallback callback)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - callback
    argTypes:
    - PostTickCallback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 339
    functionDepth: 0
    functionLinenumber: 339
    functionLinenumberEnd: 343
    functionName: BT::TreeNode::setPostTickFunction
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void TreeNode::setPostTickFunction(PostTickCallback callback)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - callback
    argTypes:
    - TickMonitorCallback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 349
    functionName: BT::TreeNode::setTickMonitorCallback
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void TreeNode::setTickMonitorCallback(TickMonitorCallback callback)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 354
    functionName: BT::TreeNode::UID
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint16_t
    signature: uint16_t TreeNode::UID() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 359
    functionName: '& TreeNode::fullPath() const'
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & TreeNode::fullPath() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 364
    functionName: '& TreeNode::registrationName() const'
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & TreeNode::registrationName() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 366
    functionDepth: 0
    functionLinenumber: 366
    functionLinenumberEnd: 369
    functionName: '& TreeNode::config() const'
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeConfig
    signature: NodeConfig & TreeNode::config() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 374
    functionName: '& TreeNode::config()'
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeConfig
    signature: NodeConfig & TreeNode::config()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: config::input_ports::find
      Src: /src/behaviortreecpp/src/tree_node.cpp:378,1
    - Dst: config::input_ports::end
      Src: /src/behaviortreecpp/src/tree_node.cpp:379,1
    - Dst: config::output_ports::find
      Src: /src/behaviortreecpp/src/tree_node.cpp:381,1
    - Dst: config::output_ports::end
      Src: /src/behaviortreecpp/src/tree_node.cpp:382,1
    - Dst: std::logic_error
      Src: /src/behaviortreecpp/src/tree_node.cpp:384,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/tree_node.cpp:384,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 376
    functionDepth: 1
    functionLinenumber: 376
    functionLinenumberEnd: 388
    functionName: BT::TreeNode::getRawPortValue
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - config::input_ports::end
    - config::input_ports::find
    - std::logic_error
    - StrCat
    - config::output_ports::end
    - config::output_ports::find
    linkageType: ''
    returnType: StringView
    signature: StringView TreeNode::getRawPortValue(const std::string& key) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/tree_node.cpp:392,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/tree_node.cpp:398,1
    - Dst: StringView
      Src: /src/behaviortreecpp/src/tree_node.cpp:411,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 14
    argCount: 2
    argNames:
    - str
    - stripped_pointer
    argTypes:
    - StringView
    - StringView*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 390
    functionDepth: 1
    functionLinenumber: 390
    functionLinenumberEnd: 414
    functionName: BT::TreeNode::isBlackboardPointer
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 1
    functionsReached:
    - StringView::size
    - StringView
    linkageType: ''
    returnType: bool
    signature: bool TreeNode::isBlackboardPointer(StringView str, StringView* stripped_pointer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::TreeNode::isBlackboardPointer
      Src: /src/behaviortreecpp/src/tree_node.cpp:419,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 416
    functionDepth: 2
    functionLinenumber: 416
    functionLinenumberEnd: 424
    functionName: BT::TreeNode::stripBlackboardPointer
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - BT::TreeNode::isBlackboardPointer
    linkageType: ''
    returnType: StringView
    signature: StringView TreeNode::stripBlackboardPointer(StringView str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::TreeNode::isBlackboardPointer
      Src: /src/behaviortreecpp/src/tree_node.cpp:434,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/tree_node.cpp:438,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - port_name
    - remapped_port
    argTypes:
    - StringView
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 426
    functionDepth: 2
    functionLinenumber: 426
    functionLinenumberEnd: 439
    functionName: BT::TreeNode::getRemappedKey
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - BT::TreeNode::isBlackboardPointer
    - nonstd::make_unexpected
    linkageType: ''
    returnType: Expected<StringView>
    signature: "Expected<StringView> TreeNode::getRemappedKey(StringView port_name,\n
      \                                             StringView remapped_port)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: wake_up::emitSignal
      Src: /src/behaviortreecpp/src/tree_node.cpp:445,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 441
    functionDepth: 0
    functionLinenumber: 441
    functionLinenumberEnd: 447
    functionName: BT::TreeNode::emitWakeUpSignal
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - wake_up::emitSignal
    linkageType: ''
    returnType: void
    signature: void TreeNode::emitWakeUpSignal()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 452
    functionName: BT::TreeNode::requiresWakeUp
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool TreeNode::requiresWakeUp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registration_ID::assign
      Src: /src/behaviortreecpp/src/tree_node.cpp:456,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/tree_node.cpp:456,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/tree_node.cpp:456,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ID
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 454
    functionDepth: 1
    functionLinenumber: 454
    functionLinenumberEnd: 457
    functionName: BT::TreeNode::setRegistrationID
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - registration_ID::assign
    - StringView::data
    - StringView::size
    linkageType: ''
    returnType: void
    signature: void TreeNode::setRegistrationID(StringView ID)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - instance
    argTypes:
    - std::shared_ptr<WakeUpSignal>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 459
    functionDepth: 0
    functionLinenumber: 459
    functionLinenumberEnd: 462
    functionName: BT::TreeNode::setWakeUpInstance
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TreeNode::setWakeUpInstance(std::shared_ptr<WakeUpSignal> instance)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: config::input_ports::find
      Src: /src/behaviortreecpp/src/tree_node.cpp:468,1
    - Dst: config::input_ports::end
      Src: /src/behaviortreecpp/src/tree_node.cpp:469,1
    - Dst: config::output_ports::find
      Src: /src/behaviortreecpp/src/tree_node.cpp:473,1
    - Dst: config::output_ports::end
      Src: /src/behaviortreecpp/src/tree_node.cpp:474,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' new_remapping'
    argTypes:
    - PortsRemapping
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 464
    functionDepth: 1
    functionLinenumber: 464
    functionLinenumberEnd: 479
    functionName: BT::TreeNode::modifyPortsRemapping
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - config::input_ports::find
    - config::output_ports::find
    - config::output_ports::end
    - config::input_ports::end
    linkageType: ''
    returnType: void
    signature: void TreeNode::modifyPortsRemapping(const PortsRemapping& new_remapping)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/src/tree_node.cpp:486,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' cond'
    argTypes:
    - PreCond
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 482
    functionDepth: 0
    functionLinenumber: 482
    functionLinenumberEnd: 489
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 2
    functionsReached:
    - static_cast<size_t>
    linkageType: ''
    returnType: std::string
    signature: std::string toStr<PreCond>(const PreCond& cond)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/src/tree_node.cpp:496,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' cond'
    argTypes:
    - PostCond
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 499
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 2
    functionsReached:
    - static_cast<size_t>
    linkageType: ''
    returnType: std::string
    signature: std::string toStr<PostCond>(const PostCond& cond)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getRemappedKey
      Src: /src/behaviortreecpp/src/tree_node.cpp:503,1
    - Dst: getRawPortValue
      Src: /src/behaviortreecpp/src/tree_node.cpp:503,1
    - Dst: string
      Src: /src/behaviortreecpp/src/tree_node.cpp:505,1
    - Dst: config::blackboard::getAnyLocked
      Src: /src/behaviortreecpp/src/tree_node.cpp:506,1
    - Dst: config::manifest::ports::find
      Src: /src/behaviortreecpp/src/tree_node.cpp:512,1
    - Dst: config::manifest::ports::end
      Src: /src/behaviortreecpp/src/tree_node.cpp:513,1
    - Dst: config::blackboard::createEntry
      Src: /src/behaviortreecpp/src/tree_node.cpp:515,1
    - Dst: config::blackboard::getAnyLocked
      Src: /src/behaviortreecpp/src/tree_node.cpp:516,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 501
    functionDepth: 1
    functionLinenumber: 501
    functionLinenumberEnd: 522
    functionName: BT::TreeNode::getLockedPortContent(const std::string& key)
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - config::manifest::ports::end
    - string
    - getRawPortValue
    - config::blackboard::createEntry
    - getRemappedKey
    - config::blackboard::getAnyLocked
    - config::manifest::ports::find
    linkageType: ''
    returnType: AnyPtrLocked
    signature: AnyPtrLocked BT::TreeNode::getLockedPortContent(const std::string&
      key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:27,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - name
    - config
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 28
    functionName: BT::PImpl
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void PImpl(std::string name, NodeConfig config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:57,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:57,1
    - Dst: PImpl::PImpl
      Src: /src/behaviortreecpp/src/tree_node.cpp:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - name
    - config
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: BT::TreeNode::TreeNode
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - PImpl::PImpl
    - std::move
    linkageType: ''
    returnType: void
    signature: void TreeNode::TreeNode(std::string name, NodeConfig config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 61
    functionName: BT::TreeNode::TreeNode
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void TreeNode::TreeNode(TreeNode&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:65,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 67
    functionName: '& TreeNode::operator=(TreeNode&& other) noexcept'
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: TreeNode
    signature: TreeNode & TreeNode::operator=(TreeNode&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 69
    functionName: TreeNode::~TreeNode()
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TreeNode::~TreeNode()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: BT::TreeNode::checkPreConditions
      Src: /src/behaviortreecpp/src/tree_node.cpp:86,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/tree_node.cpp:88,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/tree_node.cpp:94,1
    - Dst: pre_tick
      Src: /src/behaviortreecpp/src/tree_node.cpp:96,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/tree_node.cpp:97,1
    - Dst: steady_clock::now
      Src: /src/behaviortreecpp/src/tree_node.cpp:111,1
    - Dst: std::atomic_thread_fence
      Src: /src/behaviortreecpp/src/tree_node.cpp:112,1
    - Dst: tick
      Src: /src/behaviortreecpp/src/tree_node.cpp:115,1
    - Dst: NodeExecutionError
      Src: /src/behaviortreecpp/src/tree_node.cpp:125,1
    - Dst: name
      Src: /src/behaviortreecpp/src/tree_node.cpp:125,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/src/tree_node.cpp:125,1
    - Dst: registrationName
      Src: /src/behaviortreecpp/src/tree_node.cpp:125,1
    - Dst: what
      Src: /src/behaviortreecpp/src/tree_node.cpp:125,1
    - Dst: std::atomic_thread_fence
      Src: /src/behaviortreecpp/src/tree_node.cpp:127,1
    - Dst: steady_clock::now
      Src: /src/behaviortreecpp/src/tree_node.cpp:128,1
    - Dst: monitor_tick
      Src: /src/behaviortreecpp/src/tree_node.cpp:131,1
    - Dst: duration_cast<microseconds>
      Src: /src/behaviortreecpp/src/tree_node.cpp:131,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/tree_node.cpp:137,1
    - Dst: BT::TreeNode::checkPostConditions
      Src: /src/behaviortreecpp/src/tree_node.cpp:139,1
    - Dst: post_tick
      Src: /src/behaviortreecpp/src/tree_node.cpp:144,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/tree_node.cpp:145,1
    - Dst: BT::TreeNode::setStatus
      Src: /src/behaviortreecpp/src/tree_node.cpp:154,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 71
    functionDepth: 2
    functionLinenumber: 71
    functionLinenumberEnd: 157
    functionName: BT::TreeNode::executeTick
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 1
    functionsReached:
    - tick
    - registrationName
    - BT::TreeNode::checkPostConditions
    - BT::TreeNode::setStatus
    - steady_clock::now
    - auto::value
    - isStatusCompleted
    - post_tick
    - name
    - pre_tick
    - NodeExecutionError
    - fullPath
    - what
    - monitor_tick
    - std::atomic_thread_fence
    - duration_cast<microseconds>
    - BT::TreeNode::checkPreConditions
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus TreeNode::executeTick()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: halt
      Src: /src/behaviortreecpp/src/tree_node.cpp:161,1
    - Dst: config
      Src: /src/behaviortreecpp/src/tree_node.cpp:166,1
    - Dst: config
      Src: /src/behaviortreecpp/src/tree_node.cpp:166,1
    - Dst: parse_executor
      Src: /src/behaviortreecpp/src/tree_node.cpp:167,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 169
    functionName: BT::TreeNode::haltNode
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 1
    functionsReached:
    - halt
    - config
    - parse_executor
    linkageType: ''
    returnType: void
    signature: void TreeNode::haltNode()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/tree_node.cpp:175,1
    - Dst: name
      Src: /src/behaviortreecpp/src/tree_node.cpp:175,1
    - Dst: state_condition_variable::notify_all
      Src: /src/behaviortreecpp/src/tree_node.cpp:188,1
    - Dst: state_change_signal::notify
      Src: /src/behaviortreecpp/src/tree_node.cpp:189,1
    - Dst: std::chrono::high_resolution_clock::now
      Src: /src/behaviortreecpp/src/tree_node.cpp:189,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - new_status
    argTypes:
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 192
    functionName: BT::TreeNode::setStatus
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 2
    functionsReached:
    - std::chrono::high_resolution_clock::now
    - name
    - state_change_signal::notify
    - state_condition_variable::notify_all
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void TreeNode::setStatus(NodeStatus new_status)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 197
    functionName: '& TreeNode::preConditionsScripts()'
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TreeNode::PreScripts
    signature: TreeNode::PreScripts & TreeNode::preConditionsScripts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionName: '& TreeNode::postConditionsScripts()'
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TreeNode::PostScripts
    signature: TreeNode::PostScripts & TreeNode::postConditionsScripts()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/src/tree_node.cpp:206,1
    - Dst: config
      Src: /src/behaviortreecpp/src/tree_node.cpp:206,1
    - Dst: static_cast<PreCond>
      Src: /src/behaviortreecpp/src/tree_node.cpp:219,1
    - Dst: parse_executor
      Src: /src/behaviortreecpp/src/tree_node.cpp:226,1
    - Dst: parse_executor
      Src: /src/behaviortreecpp/src/tree_node.cpp:251,1
    - Dst: BT::TreeNode::haltNode
      Src: /src/behaviortreecpp/src/tree_node.cpp:253,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/tree_node.cpp:258,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 204
    functionDepth: 1
    functionLinenumber: 204
    functionLinenumberEnd: 259
    functionName: BT::TreeNode::checkPreConditions
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 2
    functionsReached:
    - config
    - nonstd::make_unexpected
    - parse_executor
    - static_cast<PreCond>
    - BT::TreeNode::haltNode
    linkageType: ''
    returnType: Expected<NodeStatus>
    signature: Expected<NodeStatus> TreeNode::checkPreConditions()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/src/tree_node.cpp:267,1
    - Dst: config
      Src: /src/behaviortreecpp/src/tree_node.cpp:267,1
    - Dst: parse_executor
      Src: /src/behaviortreecpp/src/tree_node.cpp:268,1
    - Dst: ExecuteScript
      Src: /src/behaviortreecpp/src/tree_node.cpp:274,1
    - Dst: ExecuteScript
      Src: /src/behaviortreecpp/src/tree_node.cpp:278,1
    - Dst: ExecuteScript
      Src: /src/behaviortreecpp/src/tree_node.cpp:280,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - status
    argTypes:
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 281
    functionName: BT::TreeNode::checkPostConditions
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 2
    functionsReached:
    - config
    - ExecuteScript
    - parse_executor
    linkageType: ''
    returnType: void
    signature: void TreeNode::checkPostConditions(NodeStatus status)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: state_condition_variable::notify_all
      Src: /src/behaviortreecpp/src/tree_node.cpp:294,1
    - Dst: state_change_signal::notify
      Src: /src/behaviortreecpp/src/tree_node.cpp:295,1
    - Dst: std::chrono::high_resolution_clock::now
      Src: /src/behaviortreecpp/src/tree_node.cpp:295,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 283
    functionDepth: 0
    functionLinenumber: 283
    functionLinenumberEnd: 298
    functionName: BT::TreeNode::resetStatus
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - state_condition_variable::notify_all
    - std::chrono::high_resolution_clock::now
    - state_change_signal::notify
    linkageType: ''
    returnType: void
    signature: void TreeNode::resetStatus()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 300
    functionDepth: 0
    functionLinenumber: 300
    functionLinenumberEnd: 304
    functionName: BT::TreeNode::status
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus TreeNode::status() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::TreeNode::isHalted
      Src: /src/behaviortreecpp/src/tree_node.cpp:310,1
    - Dst: state_condition_variable::wait
      Src: /src/behaviortreecpp/src/tree_node.cpp:312,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 306
    functionDepth: 1
    functionLinenumber: 306
    functionLinenumberEnd: 315
    functionName: BT::TreeNode::waitValidStatus
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - BT::TreeNode::isHalted
    - state_condition_variable::wait
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus TreeNode::waitValidStatus()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 317
    functionDepth: 0
    functionLinenumber: 317
    functionLinenumberEnd: 320
    functionName: '& TreeNode::name() const'
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & TreeNode::name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 325
      start: 322
    functionDepth: 0
    functionLinenumber: 322
    functionLinenumberEnd: 325
    functionName: BT::TreeNode::isHalted
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool TreeNode::isHalted() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: state_change_signal::subscribe
      Src: /src/behaviortreecpp/src/tree_node.cpp:330,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - callback
    argTypes:
    - TreeNode::StatusChangeCallback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 331
      start: 327
    functionDepth: 0
    functionLinenumber: 327
    functionLinenumberEnd: 331
    functionName: BT::TreeNode::subscribeToStatusChange
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - state_change_signal::subscribe
    - std::move
    linkageType: ''
    returnType: TreeNode::StatusChangeSubscriber
    signature: TreeNode::StatusChangeSubscriber TreeNode::subscribeToStatusChange(TreeNode::StatusChangeCallback
      callback)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - callback
    argTypes:
    - PreTickCallback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 337
      start: 333
    functionDepth: 0
    functionLinenumber: 333
    functionLinenumberEnd: 337
    functionName: BT::TreeNode::setPreTickFunction
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void TreeNode::setPreTickFunction(PreTickCallback callback)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:342,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - callback
    argTypes:
    - PostTickCallback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 339
    functionDepth: 0
    functionLinenumber: 339
    functionLinenumberEnd: 343
    functionName: BT::TreeNode::setPostTickFunction
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void TreeNode::setPostTickFunction(PostTickCallback callback)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/tree_node.cpp:348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - callback
    argTypes:
    - TickMonitorCallback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 345
    functionDepth: 0
    functionLinenumber: 345
    functionLinenumberEnd: 349
    functionName: BT::TreeNode::setTickMonitorCallback
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void TreeNode::setTickMonitorCallback(TickMonitorCallback callback)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 354
    functionName: BT::TreeNode::UID
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint16_t
    signature: uint16_t TreeNode::UID() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 359
    functionName: '& TreeNode::fullPath() const'
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & TreeNode::fullPath() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 361
    functionDepth: 0
    functionLinenumber: 361
    functionLinenumberEnd: 364
    functionName: '& TreeNode::registrationName() const'
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & TreeNode::registrationName() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 366
    functionDepth: 0
    functionLinenumber: 366
    functionLinenumberEnd: 369
    functionName: '& TreeNode::config() const'
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeConfig
    signature: NodeConfig & TreeNode::config() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 374
    functionName: '& TreeNode::config()'
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeConfig
    signature: NodeConfig & TreeNode::config()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: config::input_ports::find
      Src: /src/behaviortreecpp/src/tree_node.cpp:378,1
    - Dst: config::input_ports::end
      Src: /src/behaviortreecpp/src/tree_node.cpp:379,1
    - Dst: config::output_ports::find
      Src: /src/behaviortreecpp/src/tree_node.cpp:381,1
    - Dst: config::output_ports::end
      Src: /src/behaviortreecpp/src/tree_node.cpp:382,1
    - Dst: std::logic_error
      Src: /src/behaviortreecpp/src/tree_node.cpp:384,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/tree_node.cpp:384,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 376
    functionDepth: 1
    functionLinenumber: 376
    functionLinenumberEnd: 388
    functionName: BT::TreeNode::getRawPortValue
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - config::input_ports::end
    - config::input_ports::find
    - std::logic_error
    - StrCat
    - config::output_ports::end
    - config::output_ports::find
    linkageType: ''
    returnType: StringView
    signature: StringView TreeNode::getRawPortValue(const std::string& key) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/tree_node.cpp:392,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/tree_node.cpp:398,1
    - Dst: StringView
      Src: /src/behaviortreecpp/src/tree_node.cpp:411,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 14
    argCount: 2
    argNames:
    - str
    - stripped_pointer
    argTypes:
    - StringView
    - StringView*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 390
    functionDepth: 1
    functionLinenumber: 390
    functionLinenumberEnd: 414
    functionName: BT::TreeNode::isBlackboardPointer
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 3
    functionsReached:
    - StringView::size
    - StringView
    linkageType: ''
    returnType: bool
    signature: bool TreeNode::isBlackboardPointer(StringView str, StringView* stripped_pointer)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::TreeNode::isBlackboardPointer
      Src: /src/behaviortreecpp/src/tree_node.cpp:419,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 416
    functionDepth: 2
    functionLinenumber: 416
    functionLinenumberEnd: 424
    functionName: BT::TreeNode::stripBlackboardPointer
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - BT::TreeNode::isBlackboardPointer
    linkageType: ''
    returnType: StringView
    signature: StringView TreeNode::stripBlackboardPointer(StringView str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::TreeNode::isBlackboardPointer
      Src: /src/behaviortreecpp/src/tree_node.cpp:434,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/tree_node.cpp:438,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - port_name
    - remapped_port
    argTypes:
    - StringView
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 439
      start: 426
    functionDepth: 2
    functionLinenumber: 426
    functionLinenumberEnd: 439
    functionName: BT::TreeNode::getRemappedKey
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - BT::TreeNode::isBlackboardPointer
    - nonstd::make_unexpected
    linkageType: ''
    returnType: Expected<StringView>
    signature: "Expected<StringView> TreeNode::getRemappedKey(StringView port_name,\n
      \                                             StringView remapped_port)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: wake_up::emitSignal
      Src: /src/behaviortreecpp/src/tree_node.cpp:445,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 447
      start: 441
    functionDepth: 0
    functionLinenumber: 441
    functionLinenumberEnd: 447
    functionName: BT::TreeNode::emitWakeUpSignal
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - wake_up::emitSignal
    linkageType: ''
    returnType: void
    signature: void TreeNode::emitWakeUpSignal()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 452
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 452
    functionName: BT::TreeNode::requiresWakeUp
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool TreeNode::requiresWakeUp() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registration_ID::assign
      Src: /src/behaviortreecpp/src/tree_node.cpp:456,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/tree_node.cpp:456,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/tree_node.cpp:456,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ID
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 457
      start: 454
    functionDepth: 1
    functionLinenumber: 454
    functionLinenumberEnd: 457
    functionName: BT::TreeNode::setRegistrationID
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - registration_ID::assign
    - StringView::data
    - StringView::size
    linkageType: ''
    returnType: void
    signature: void TreeNode::setRegistrationID(StringView ID)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - instance
    argTypes:
    - std::shared_ptr<WakeUpSignal>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 459
    functionDepth: 0
    functionLinenumber: 459
    functionLinenumberEnd: 462
    functionName: BT::TreeNode::setWakeUpInstance
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TreeNode::setWakeUpInstance(std::shared_ptr<WakeUpSignal> instance)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: config::input_ports::find
      Src: /src/behaviortreecpp/src/tree_node.cpp:468,1
    - Dst: config::input_ports::end
      Src: /src/behaviortreecpp/src/tree_node.cpp:469,1
    - Dst: config::output_ports::find
      Src: /src/behaviortreecpp/src/tree_node.cpp:473,1
    - Dst: config::output_ports::end
      Src: /src/behaviortreecpp/src/tree_node.cpp:474,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' new_remapping'
    argTypes:
    - PortsRemapping
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 479
      start: 464
    functionDepth: 1
    functionLinenumber: 464
    functionLinenumberEnd: 479
    functionName: BT::TreeNode::modifyPortsRemapping
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - config::input_ports::find
    - config::output_ports::find
    - config::output_ports::end
    - config::input_ports::end
    linkageType: ''
    returnType: void
    signature: void TreeNode::modifyPortsRemapping(const PortsRemapping& new_remapping)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/src/tree_node.cpp:486,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' cond'
    argTypes:
    - PreCond
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 482
    functionDepth: 0
    functionLinenumber: 482
    functionLinenumberEnd: 489
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 2
    functionsReached:
    - static_cast<size_t>
    linkageType: ''
    returnType: std::string
    signature: std::string toStr<PreCond>(const PreCond& cond)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/src/tree_node.cpp:496,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' cond'
    argTypes:
    - PostCond
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 499
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 2
    functionsReached:
    - static_cast<size_t>
    linkageType: ''
    returnType: std::string
    signature: std::string toStr<PostCond>(const PostCond& cond)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getRemappedKey
      Src: /src/behaviortreecpp/src/tree_node.cpp:503,1
    - Dst: getRawPortValue
      Src: /src/behaviortreecpp/src/tree_node.cpp:503,1
    - Dst: string
      Src: /src/behaviortreecpp/src/tree_node.cpp:505,1
    - Dst: config::blackboard::getAnyLocked
      Src: /src/behaviortreecpp/src/tree_node.cpp:506,1
    - Dst: config::manifest::ports::find
      Src: /src/behaviortreecpp/src/tree_node.cpp:512,1
    - Dst: config::manifest::ports::end
      Src: /src/behaviortreecpp/src/tree_node.cpp:513,1
    - Dst: config::blackboard::createEntry
      Src: /src/behaviortreecpp/src/tree_node.cpp:515,1
    - Dst: config::blackboard::getAnyLocked
      Src: /src/behaviortreecpp/src/tree_node.cpp:516,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 522
      start: 501
    functionDepth: 1
    functionLinenumber: 501
    functionLinenumberEnd: 522
    functionName: BT::TreeNode::getLockedPortContent(const std::string& key)
    functionSourceFile: /src/behaviortreecpp/src/tree_node.cpp
    functionUses: 0
    functionsReached:
    - config::manifest::ports::end
    - string
    - getRawPortValue
    - config::blackboard::createEntry
    - getRemappedKey
    - config::blackboard::getAnyLocked
    - config::manifest::ports::find
    linkageType: ''
    returnType: AnyPtrLocked
    signature: AnyPtrLocked BT::TreeNode::getLockedPortContent(const std::string&
      key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: load
      Src: /src/behaviortreecpp/src/shared_library.cpp:7,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' path'
    - flags
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8
      start: 5
    functionDepth: 0
    functionLinenumber: 5
    functionLinenumberEnd: 8
    functionName: BT::SharedLibrary::SharedLibrary(const std::string& path, int flags)
    functionSourceFile: /src/behaviortreecpp/src/shared_library.cpp
    functionUses: 0
    functionsReached:
    - load
    linkageType: ''
    returnType: void
    signature: void BT::SharedLibrary::SharedLibrary(const std::string& path, int
      flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: findSymbol
      Src: /src/behaviortreecpp/src/shared_library.cpp:12,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/shared_library.cpp:17,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18
      start: 10
    functionDepth: 0
    functionLinenumber: 10
    functionLinenumberEnd: 18
    functionName: '* BT::SharedLibrary::getSymbol(const std::string& name)'
    functionSourceFile: /src/behaviortreecpp/src/shared_library.cpp
    functionUses: 0
    functionsReached:
    - findSymbol
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void * BT::SharedLibrary::getSymbol(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: findSymbol
      Src: /src/behaviortreecpp/src/shared_library.cpp:22,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 23
    functionName: BT::SharedLibrary::hasSymbol(const std::string& name)
    functionSourceFile: /src/behaviortreecpp/src/shared_library.cpp
    functionUses: 0
    functionsReached:
    - findSymbol
    linkageType: ''
    returnType: bool
    signature: bool BT::SharedLibrary::hasSymbol(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: prefix
      Src: /src/behaviortreecpp/src/shared_library.cpp:27,1
    - Dst: suffix
      Src: /src/behaviortreecpp/src/shared_library.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: BT::SharedLibrary::getOSName(const std::string& name)
    functionSourceFile: /src/behaviortreecpp/src/shared_library.cpp
    functionUses: 0
    functionsReached:
    - prefix
    - suffix
    linkageType: ''
    returnType: std::string
    signature: std::string BT::SharedLibrary::getOSName(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11
      start: 11
    functionDepth: 0
    functionLinenumber: 11
    functionLinenumberEnd: 11
    functionName: BT::SharedLibrary::SharedLibrary
    functionSourceFile: /src/behaviortreecpp/src/shared_library_UNIX.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SharedLibrary::SharedLibrary()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:19,1
    - Dst: dlopen
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:22,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:22,1
    - Dst: dlerror
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:25,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:26,1
    - Dst: string
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:27,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 13
    functionDepth: 1
    functionLinenumber: 13
    functionLinenumberEnd: 30
    functionName: BT::SharedLibrary::load
    functionSourceFile: /src/behaviortreecpp/src/shared_library_UNIX.cpp
    functionUses: 0
    functionsReached:
    - string
    - dlerror
    - RuntimeError
    - c_str
    - dlopen
    linkageType: ''
    returnType: void
    signature: void SharedLibrary::load(const std::string& path, int)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dlclose
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 41
    functionName: BT::SharedLibrary::unload
    functionSourceFile: /src/behaviortreecpp/src/shared_library_UNIX.cpp
    functionUses: 0
    functionsReached:
    - dlclose
    linkageType: ''
    returnType: void
    signature: void SharedLibrary::unload()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: BT::SharedLibrary::isLoaded
    functionSourceFile: /src/behaviortreecpp/src/shared_library_UNIX.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool SharedLibrary::isLoaded() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dlsym
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:55,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 58
    functionName: BT::SharedLibrary::findSymbol
    functionSourceFile: /src/behaviortreecpp/src/shared_library_UNIX.cpp
    functionUses: 0
    functionsReached:
    - dlsym
    - c_str
    linkageType: ''
    returnType: void
    signature: void * SharedLibrary::findSymbol(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: '& SharedLibrary::getPath() const'
    functionSourceFile: /src/behaviortreecpp/src/shared_library_UNIX.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & SharedLibrary::getPath() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 72
    functionName: BT::SharedLibrary::prefix
    functionSourceFile: /src/behaviortreecpp/src/shared_library_UNIX.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string SharedLibrary::prefix()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 101
    functionName: BT::SharedLibrary::suffix
    functionSourceFile: /src/behaviortreecpp/src/shared_library_UNIX.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string SharedLibrary::suffix()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11
      start: 11
    functionDepth: 0
    functionLinenumber: 11
    functionLinenumberEnd: 11
    functionName: BT::SharedLibrary::SharedLibrary
    functionSourceFile: /src/behaviortreecpp/src/shared_library_UNIX.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SharedLibrary::SharedLibrary()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:19,1
    - Dst: dlopen
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:22,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:22,1
    - Dst: dlerror
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:25,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:26,1
    - Dst: string
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:27,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 13
    functionDepth: 1
    functionLinenumber: 13
    functionLinenumberEnd: 30
    functionName: BT::SharedLibrary::load
    functionSourceFile: /src/behaviortreecpp/src/shared_library_UNIX.cpp
    functionUses: 0
    functionsReached:
    - string
    - dlerror
    - RuntimeError
    - c_str
    - dlopen
    linkageType: ''
    returnType: void
    signature: void SharedLibrary::load(const std::string& path, int)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dlclose
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:38,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 41
    functionName: BT::SharedLibrary::unload
    functionSourceFile: /src/behaviortreecpp/src/shared_library_UNIX.cpp
    functionUses: 0
    functionsReached:
    - dlclose
    linkageType: ''
    returnType: void
    signature: void SharedLibrary::unload()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: BT::SharedLibrary::isLoaded
    functionSourceFile: /src/behaviortreecpp/src/shared_library_UNIX.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool SharedLibrary::isLoaded() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: dlsym
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:55,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/shared_library_UNIX.cpp:55,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 58
    functionName: BT::SharedLibrary::findSymbol
    functionSourceFile: /src/behaviortreecpp/src/shared_library_UNIX.cpp
    functionUses: 0
    functionsReached:
    - dlsym
    - c_str
    linkageType: ''
    returnType: void
    signature: void * SharedLibrary::findSymbol(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: '& SharedLibrary::getPath() const'
    functionSourceFile: /src/behaviortreecpp/src/shared_library_UNIX.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & SharedLibrary::getPath() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 72
    functionName: BT::SharedLibrary::prefix
    functionSourceFile: /src/behaviortreecpp/src/shared_library_UNIX.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string SharedLibrary::prefix()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 101
    functionName: BT::SharedLibrary::suffix
    functionSourceFile: /src/behaviortreecpp/src/shared_library_UNIX.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string SharedLibrary::suffix()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - tokens
    argTypes:
    - std::vector<Token>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 29
    functionName: BT::Scripting::ScriptParser::ScriptParser
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ScriptParser(std::vector<Token> tokens)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::ScriptParser::atEnd
      Src: /src/behaviortreecpp/src/script_parser.cpp:34,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_parser.cpp:36,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:36,1
    - Dst: BT::Scripting::ScriptParser::check
      Src: /src/behaviortreecpp/src/script_parser.cpp:38,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 44
    functionName: BT::Scripting::ScriptParser::parseAll
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - advance
    - BT::Scripting::ScriptParser::parseExpr
    - BT::Scripting::ScriptParser::check
    - BT::Scripting::ScriptParser::atEnd
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Ast::expr_ptr>
    signature: std::vector<Ast::expr_ptr> parseAll()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: '& peek() const'
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Token
    signature: Token & peek() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: atEnd
      Src: /src/behaviortreecpp/src/script_parser.cpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 70
    functionName: '& advance()'
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - atEnd
    linkageType: ''
    returnType: Token
    signature: Token & advance()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: BT::Scripting::ScriptParser::atEnd
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 1
    functionsReached:
    - peek
    linkageType: ''
    returnType: bool
    signature: bool atEnd() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: BT::Scripting::ScriptParser::check
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 1
    functionsReached:
    - peek
    linkageType: ''
    returnType: bool
    signature: bool check(TokenType type) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: check
      Src: /src/behaviortreecpp/src/script_parser.cpp:84,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:86,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/script_parser.cpp:86,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/script_parser.cpp:86,1
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:86,1
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:87,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:89,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - type
    - msg
    argTypes:
    - TokenType
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 90
    functionName: '& expect(TokenType type, const char* msg)'
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - check
    - advance
    - peek
    - to_string
    - StrCat
    - RuntimeError
    linkageType: ''
    returnType: Token
    signature: Token & expect(TokenType type, const char* msg)
  - BBCount: 25
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 144
    functionName: BT::Scripting::ScriptParser::leftBP
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int leftBP(TokenType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 151
    functionName: BT::Scripting::ScriptParser::isComparison
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isComparison(TokenType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 158
    functionName: BT::Scripting::ScriptParser::isAssignment
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isAssignment(TokenType type)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:165,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:170,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:171,1
    - Dst: std::make_shared<Ast::ExprUnaryArithmetic>
      Src: /src/behaviortreecpp/src/script_parser.cpp:172,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:173,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:178,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:179,1
    - Dst: std::make_shared<Ast::ExprUnaryArithmetic>
      Src: /src/behaviortreecpp/src/script_parser.cpp:180,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:181,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:186,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:187,1
    - Dst: std::make_shared<Ast::ExprUnaryArithmetic>
      Src: /src/behaviortreecpp/src/script_parser.cpp:188,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:189,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:194,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:195,1
    - Dst: expect
      Src: /src/behaviortreecpp/src/script_parser.cpp:196,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:202,1
    - Dst: std::make_shared<Ast::ExprLiteral>
      Src: /src/behaviortreecpp/src/script_parser.cpp:204,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/script_parser.cpp:204,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:209,1
    - Dst: text::data
      Src: /src/behaviortreecpp/src/script_parser.cpp:211,1
    - Dst: text::size
      Src: /src/behaviortreecpp/src/script_parser.cpp:212,1
    - Dst: text::size
      Src: /src/behaviortreecpp/src/script_parser.cpp:213,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/script_parser.cpp:216,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/script_parser.cpp:220,1
    - Dst: std::make_shared<Ast::ExprLiteral>
      Src: /src/behaviortreecpp/src/script_parser.cpp:222,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/script_parser.cpp:222,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:227,1
    - Dst: convertFromString<double>
      Src: /src/behaviortreecpp/src/script_parser.cpp:228,1
    - Dst: std::make_shared<Ast::ExprLiteral>
      Src: /src/behaviortreecpp/src/script_parser.cpp:229,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/script_parser.cpp:229,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:234,1
    - Dst: std::make_shared<Ast::ExprLiteral>
      Src: /src/behaviortreecpp/src/script_parser.cpp:235,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/script_parser.cpp:235,1
    - Dst: string
      Src: /src/behaviortreecpp/src/script_parser.cpp:235,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:240,1
    - Dst: std::make_shared<Ast::ExprName>
      Src: /src/behaviortreecpp/src/script_parser.cpp:241,1
    - Dst: string
      Src: /src/behaviortreecpp/src/script_parser.cpp:241,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:246,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/script_parser.cpp:247,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/script_parser.cpp:247,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:250,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/script_parser.cpp:250,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/script_parser.cpp:250,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 163
    functionDepth: 1
    functionLinenumber: 163
    functionLinenumberEnd: 252
    functionName: BT::Scripting::ScriptParser::parsePrefix
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - std::from_chars
    - std::make_shared<Ast::ExprLiteral>
    - advance
    - std::make_shared<Ast::ExprName>
    - std::move
    - string
    - peek
    - BT::Scripting::ScriptParser::parseExpr
    - Any
    - to_string
    - expect
    - text::size
    - StrCat
    - convertFromString<double>
    - RuntimeError
    - std::make_shared<Ast::ExprUnaryArithmetic>
    - text::data
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parsePrefix()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::ScriptParser::parsePrefix
      Src: /src/behaviortreecpp/src/script_parser.cpp:257,1
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:261,1
    - Dst: BT::Scripting::ScriptParser::leftBP
      Src: /src/behaviortreecpp/src/script_parser.cpp:262,1
    - Dst: BT::Scripting::ScriptParser::isAssignment
      Src: /src/behaviortreecpp/src/script_parser.cpp:269,1
    - Dst: BT::Scripting::ScriptParser::parseAssignment
      Src: /src/behaviortreecpp/src/script_parser.cpp:271,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:271,1
    - Dst: BT::Scripting::ScriptParser::parseTernary
      Src: /src/behaviortreecpp/src/script_parser.cpp:278,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:278,1
    - Dst: BT::Scripting::ScriptParser::isComparison
      Src: /src/behaviortreecpp/src/script_parser.cpp:283,1
    - Dst: BT::Scripting::ScriptParser::parseChainedComparison
      Src: /src/behaviortreecpp/src/script_parser.cpp:285,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:285,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:290,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:292,1
    - Dst: BT::Scripting::ScriptParser::makeBinary
      Src: /src/behaviortreecpp/src/script_parser.cpp:293,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:293,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:293,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 1
    argNames:
    - minBP
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 255
    functionDepth: 2
    functionLinenumber: 255
    functionLinenumberEnd: 297
    functionName: BT::Scripting::ScriptParser::parseExpr
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 3
    functionsReached:
    - advance
    - std::move
    - peek
    - BT::Scripting::ScriptParser::parsePrefix
    - BT::Scripting::ScriptParser::parseExpr
    - BT::Scripting::ScriptParser::parseAssignment
    - BT::Scripting::ScriptParser::isComparison
    - BT::Scripting::ScriptParser::parseChainedComparison
    - BT::Scripting::ScriptParser::isAssignment
    - BT::Scripting::ScriptParser::parseTernary
    - BT::Scripting::ScriptParser::makeBinary
    - BT::Scripting::ScriptParser::leftBP
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parseExpr(int minBP)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:301,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:324,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:327,1
    - Dst: std::make_shared<Ast::ExprAssignment>
      Src: /src/behaviortreecpp/src/script_parser.cpp:328,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:328,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:328,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - left
    argTypes:
    - Ast::expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 299
    functionDepth: 3
    functionLinenumber: 299
    functionLinenumberEnd: 329
    functionName: BT::Scripting::ScriptParser::parseAssignment
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 1
    functionsReached:
    - advance
    - std::move
    - BT::Scripting::ScriptParser::parseExpr
    - RuntimeError
    - std::make_shared<Ast::ExprAssignment>
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parseAssignment(Ast::expr_ptr left)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:333,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:334,1
    - Dst: expect
      Src: /src/behaviortreecpp/src/script_parser.cpp:335,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:336,1
    - Dst: std::make_shared<Ast::ExprIf>
      Src: /src/behaviortreecpp/src/script_parser.cpp:337,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:337,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:337,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:338,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - condition
    argTypes:
    - Ast::expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 331
    functionDepth: 3
    functionLinenumber: 331
    functionLinenumberEnd: 339
    functionName: BT::Scripting::ScriptParser::parseTernary
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 1
    functionsReached:
    - advance
    - std::move
    - BT::Scripting::ScriptParser::parseExpr
    - std::make_shared<Ast::ExprIf>
    - expect
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parseTernary(Ast::expr_ptr condition)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<Ast::ExprComparison>
      Src: /src/behaviortreecpp/src/script_parser.cpp:343,1
    - Dst: auto::operands::push_back
      Src: /src/behaviortreecpp/src/script_parser.cpp:344,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:344,1
    - Dst: BT::Scripting::ScriptParser::isComparison
      Src: /src/behaviortreecpp/src/script_parser.cpp:346,1
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:346,1
    - Dst: auto::ops::push_back
      Src: /src/behaviortreecpp/src/script_parser.cpp:348,1
    - Dst: BT::Scripting::ScriptParser::mapComparisonOp
      Src: /src/behaviortreecpp/src/script_parser.cpp:348,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:348,1
    - Dst: auto::operands::push_back
      Src: /src/behaviortreecpp/src/script_parser.cpp:351,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:351,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - first
    argTypes:
    - Ast::expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 341
    functionDepth: 3
    functionLinenumber: 341
    functionLinenumberEnd: 354
    functionName: BT::Scripting::ScriptParser::parseChainedComparison
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 1
    functionsReached:
    - advance
    - std::move
    - peek
    - std::make_shared<Ast::ExprComparison>
    - auto::operands::push_back
    - BT::Scripting::ScriptParser::parseExpr
    - auto::ops::push_back
    - BT::Scripting::ScriptParser::mapComparisonOp
    - BT::Scripting::ScriptParser::isComparison
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parseChainedComparison(Ast::expr_ptr first)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:373,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 375
    functionName: BT::Scripting::ScriptParser::mapComparisonOp
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 1
    functionsReached:
    - RuntimeError
    linkageType: ''
    returnType: Ast::ExprComparison::op_t
    signature: Ast::ExprComparison::op_t mapComparisonOp(TokenType type)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:414,1
    - Dst: std::make_shared<Ast::ExprBinaryArithmetic>
      Src: /src/behaviortreecpp/src/script_parser.cpp:416,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:416,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:417,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 3
    argNames:
    - left
    - opType
    - right
    argTypes:
    - Ast::expr_ptr
    - TokenType
    - Ast::expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 418
    functionName: BT::Scripting::ScriptParser::makeBinary
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 1
    functionsReached:
    - std::make_shared<Ast::ExprBinaryArithmetic>
    - RuntimeError
    - std::move
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: "Ast::expr_ptr makeBinary(Ast::expr_ptr left, TokenType opType,\n                                  Ast::expr_ptr
      right)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::tokenize
      Src: /src/behaviortreecpp/src/script_parser.cpp:423,1
    - Dst: ScriptParser::parseAll
      Src: /src/behaviortreecpp/src/script_parser.cpp:425,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' script'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 421
    functionDepth: 4
    functionLinenumber: 421
    functionLinenumberEnd: 426
    functionName: BT::Scripting::parseStatements
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 2
    functionsReached:
    - BT::Scripting::tokenize
    - ScriptParser::parseAll
    linkageType: ''
    returnType: std::vector<Ast::expr_ptr>
    signature: std::vector<Ast::expr_ptr> parseStatements(const std::string& script)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - tokens
    argTypes:
    - std::vector<Token>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 29
    functionName: BT::Scripting::ScriptParser::ScriptParser
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ScriptParser(std::vector<Token> tokens)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::ScriptParser::atEnd
      Src: /src/behaviortreecpp/src/script_parser.cpp:34,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_parser.cpp:36,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:36,1
    - Dst: BT::Scripting::ScriptParser::check
      Src: /src/behaviortreecpp/src/script_parser.cpp:38,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 31
    functionDepth: 3
    functionLinenumber: 31
    functionLinenumberEnd: 44
    functionName: BT::Scripting::ScriptParser::parseAll
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - advance
    - BT::Scripting::ScriptParser::parseExpr
    - BT::Scripting::ScriptParser::check
    - BT::Scripting::ScriptParser::atEnd
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Ast::expr_ptr>
    signature: std::vector<Ast::expr_ptr> parseAll()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: '& peek() const'
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Token
    signature: Token & peek() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: atEnd
      Src: /src/behaviortreecpp/src/script_parser.cpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 70
    functionName: '& advance()'
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - atEnd
    linkageType: ''
    returnType: Token
    signature: Token & advance()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: BT::Scripting::ScriptParser::atEnd
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 2
    functionsReached:
    - peek
    linkageType: ''
    returnType: bool
    signature: bool atEnd() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: BT::Scripting::ScriptParser::check
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 2
    functionsReached:
    - peek
    linkageType: ''
    returnType: bool
    signature: bool check(TokenType type) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: check
      Src: /src/behaviortreecpp/src/script_parser.cpp:84,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:86,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/script_parser.cpp:86,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/script_parser.cpp:86,1
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:86,1
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:87,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:89,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - type
    - msg
    argTypes:
    - TokenType
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 90
    functionName: '& expect(TokenType type, const char* msg)'
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - check
    - advance
    - peek
    - BT::StrCat
    - to_string
    - RuntimeError
    linkageType: ''
    returnType: Token
    signature: Token & expect(TokenType type, const char* msg)
  - BBCount: 25
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 144
    functionName: BT::Scripting::ScriptParser::leftBP
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int leftBP(TokenType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 151
    functionName: BT::Scripting::ScriptParser::isComparison
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isComparison(TokenType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 158
    functionName: BT::Scripting::ScriptParser::isAssignment
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isAssignment(TokenType type)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:165,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:170,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:171,1
    - Dst: std::make_shared<Ast::ExprUnaryArithmetic>
      Src: /src/behaviortreecpp/src/script_parser.cpp:172,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:173,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:178,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:179,1
    - Dst: std::make_shared<Ast::ExprUnaryArithmetic>
      Src: /src/behaviortreecpp/src/script_parser.cpp:180,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:181,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:186,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:187,1
    - Dst: std::make_shared<Ast::ExprUnaryArithmetic>
      Src: /src/behaviortreecpp/src/script_parser.cpp:188,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:189,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:194,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:195,1
    - Dst: expect
      Src: /src/behaviortreecpp/src/script_parser.cpp:196,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:202,1
    - Dst: std::make_shared<Ast::ExprLiteral>
      Src: /src/behaviortreecpp/src/script_parser.cpp:204,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/script_parser.cpp:204,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:209,1
    - Dst: text::data
      Src: /src/behaviortreecpp/src/script_parser.cpp:211,1
    - Dst: text::size
      Src: /src/behaviortreecpp/src/script_parser.cpp:212,1
    - Dst: text::size
      Src: /src/behaviortreecpp/src/script_parser.cpp:213,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/script_parser.cpp:216,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/script_parser.cpp:220,1
    - Dst: std::make_shared<Ast::ExprLiteral>
      Src: /src/behaviortreecpp/src/script_parser.cpp:222,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/script_parser.cpp:222,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:227,1
    - Dst: convertFromString<double>
      Src: /src/behaviortreecpp/src/script_parser.cpp:228,1
    - Dst: std::make_shared<Ast::ExprLiteral>
      Src: /src/behaviortreecpp/src/script_parser.cpp:229,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/script_parser.cpp:229,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:234,1
    - Dst: std::make_shared<Ast::ExprLiteral>
      Src: /src/behaviortreecpp/src/script_parser.cpp:235,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/script_parser.cpp:235,1
    - Dst: string
      Src: /src/behaviortreecpp/src/script_parser.cpp:235,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:240,1
    - Dst: std::make_shared<Ast::ExprName>
      Src: /src/behaviortreecpp/src/script_parser.cpp:241,1
    - Dst: string
      Src: /src/behaviortreecpp/src/script_parser.cpp:241,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:246,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/script_parser.cpp:247,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/script_parser.cpp:247,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:250,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/script_parser.cpp:250,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/script_parser.cpp:250,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 163
    functionDepth: 3
    functionLinenumber: 163
    functionLinenumberEnd: 252
    functionName: BT::Scripting::ScriptParser::parsePrefix
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 1
    functionsReached:
    - std::from_chars
    - std::make_shared<Ast::ExprLiteral>
    - advance
    - std::make_shared<Ast::ExprName>
    - std::move
    - string
    - peek
    - BT::Scripting::ScriptParser::parseExpr
    - Any
    - to_string
    - expect
    - text::size
    - StrCat
    - convertFromString<double>
    - RuntimeError
    - std::make_shared<Ast::ExprUnaryArithmetic>
    - text::data
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parsePrefix()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::ScriptParser::parsePrefix
      Src: /src/behaviortreecpp/src/script_parser.cpp:257,1
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:261,1
    - Dst: BT::Scripting::ScriptParser::leftBP
      Src: /src/behaviortreecpp/src/script_parser.cpp:262,1
    - Dst: BT::Scripting::ScriptParser::isAssignment
      Src: /src/behaviortreecpp/src/script_parser.cpp:269,1
    - Dst: BT::Scripting::ScriptParser::parseAssignment
      Src: /src/behaviortreecpp/src/script_parser.cpp:271,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:271,1
    - Dst: BT::Scripting::ScriptParser::parseTernary
      Src: /src/behaviortreecpp/src/script_parser.cpp:278,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:278,1
    - Dst: BT::Scripting::ScriptParser::isComparison
      Src: /src/behaviortreecpp/src/script_parser.cpp:283,1
    - Dst: BT::Scripting::ScriptParser::parseChainedComparison
      Src: /src/behaviortreecpp/src/script_parser.cpp:285,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:285,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:290,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:292,1
    - Dst: BT::Scripting::ScriptParser::makeBinary
      Src: /src/behaviortreecpp/src/script_parser.cpp:293,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:293,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:293,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 1
    argNames:
    - minBP
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 255
    functionDepth: 4
    functionLinenumber: 255
    functionLinenumberEnd: 297
    functionName: BT::Scripting::ScriptParser::parseExpr
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 9
    functionsReached:
    - advance
    - std::move
    - peek
    - BT::Scripting::ScriptParser::parsePrefix
    - BT::Scripting::ScriptParser::parseExpr
    - BT::Scripting::ScriptParser::parseAssignment
    - BT::Scripting::ScriptParser::isComparison
    - BT::Scripting::ScriptParser::parseChainedComparison
    - BT::Scripting::ScriptParser::isAssignment
    - BT::Scripting::ScriptParser::parseTernary
    - BT::Scripting::ScriptParser::makeBinary
    - BT::Scripting::ScriptParser::leftBP
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parseExpr(int minBP)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:301,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:324,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:327,1
    - Dst: std::make_shared<Ast::ExprAssignment>
      Src: /src/behaviortreecpp/src/script_parser.cpp:328,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:328,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:328,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - left
    argTypes:
    - Ast::expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 299
    functionDepth: 3
    functionLinenumber: 299
    functionLinenumberEnd: 329
    functionName: BT::Scripting::ScriptParser::parseAssignment
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 2
    functionsReached:
    - advance
    - std::move
    - BT::Scripting::ScriptParser::parseExpr
    - RuntimeError
    - std::make_shared<Ast::ExprAssignment>
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parseAssignment(Ast::expr_ptr left)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:333,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:334,1
    - Dst: expect
      Src: /src/behaviortreecpp/src/script_parser.cpp:335,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:336,1
    - Dst: std::make_shared<Ast::ExprIf>
      Src: /src/behaviortreecpp/src/script_parser.cpp:337,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:337,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:337,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:338,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - condition
    argTypes:
    - Ast::expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 331
    functionDepth: 3
    functionLinenumber: 331
    functionLinenumberEnd: 339
    functionName: BT::Scripting::ScriptParser::parseTernary
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 2
    functionsReached:
    - advance
    - std::move
    - BT::Scripting::ScriptParser::parseExpr
    - std::make_shared<Ast::ExprIf>
    - expect
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parseTernary(Ast::expr_ptr condition)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<Ast::ExprComparison>
      Src: /src/behaviortreecpp/src/script_parser.cpp:343,1
    - Dst: auto::operands::push_back
      Src: /src/behaviortreecpp/src/script_parser.cpp:344,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:344,1
    - Dst: BT::Scripting::ScriptParser::isComparison
      Src: /src/behaviortreecpp/src/script_parser.cpp:346,1
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:346,1
    - Dst: auto::ops::push_back
      Src: /src/behaviortreecpp/src/script_parser.cpp:348,1
    - Dst: BT::Scripting::ScriptParser::mapComparisonOp
      Src: /src/behaviortreecpp/src/script_parser.cpp:348,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:348,1
    - Dst: auto::operands::push_back
      Src: /src/behaviortreecpp/src/script_parser.cpp:351,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:351,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - first
    argTypes:
    - Ast::expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 341
    functionDepth: 3
    functionLinenumber: 341
    functionLinenumberEnd: 354
    functionName: BT::Scripting::ScriptParser::parseChainedComparison
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 2
    functionsReached:
    - advance
    - std::move
    - peek
    - std::make_shared<Ast::ExprComparison>
    - auto::operands::push_back
    - BT::Scripting::ScriptParser::parseExpr
    - auto::ops::push_back
    - BT::Scripting::ScriptParser::mapComparisonOp
    - BT::Scripting::ScriptParser::isComparison
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parseChainedComparison(Ast::expr_ptr first)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:373,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 375
    functionName: BT::Scripting::ScriptParser::mapComparisonOp
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 2
    functionsReached:
    - RuntimeError
    linkageType: ''
    returnType: Ast::ExprComparison::op_t
    signature: Ast::ExprComparison::op_t mapComparisonOp(TokenType type)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:414,1
    - Dst: std::make_shared<Ast::ExprBinaryArithmetic>
      Src: /src/behaviortreecpp/src/script_parser.cpp:416,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:416,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:417,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 3
    argNames:
    - left
    - opType
    - right
    argTypes:
    - Ast::expr_ptr
    - TokenType
    - Ast::expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 418
    functionName: BT::Scripting::ScriptParser::makeBinary
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 2
    functionsReached:
    - std::make_shared<Ast::ExprBinaryArithmetic>
    - RuntimeError
    - std::move
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: "Ast::expr_ptr makeBinary(Ast::expr_ptr left, TokenType opType,\n                                  Ast::expr_ptr
      right)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::tokenize
      Src: /src/behaviortreecpp/src/script_parser.cpp:423,1
    - Dst: ScriptParser::parseAll
      Src: /src/behaviortreecpp/src/script_parser.cpp:425,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' script'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 421
    functionDepth: 4
    functionLinenumber: 421
    functionLinenumberEnd: 426
    functionName: BT::Scripting::parseStatements
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 2
    functionsReached:
    - BT::Scripting::tokenize
    - ScriptParser::parseAll
    linkageType: ''
    returnType: std::vector<Ast::expr_ptr>
    signature: std::vector<Ast::expr_ptr> parseStatements(const std::string& script)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::parseStatements
      Src: /src/behaviortreecpp/src/script_parser.cpp:436,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/src/script_parser.cpp:437,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/script_parser.cpp:439,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:441,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/src/script_parser.cpp:444,1
    - Dst: evaluate
      Src: /src/behaviortreecpp/src/script_parser.cpp:446,1
    - Dst: auto::back
      Src: /src/behaviortreecpp/src/script_parser.cpp:448,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:452,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/script_parser.cpp:452,1
    - Dst: what
      Src: /src/behaviortreecpp/src/script_parser.cpp:452,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/script_parser.cpp:458,1
    - Dst: what
      Src: /src/behaviortreecpp/src/script_parser.cpp:458,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - ' script'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 432
    functionDepth: 5
    functionLinenumber: 432
    functionLinenumberEnd: 460
    functionName: BT::ParseScript
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - auto::back
    - nonstd::make_unexpected
    - BT::StrCat
    - evaluate
    - auto::empty
    - RuntimeError
    - what
    - BT::Scripting::parseStatements
    - auto::size
    linkageType: ''
    returnType: Expected<ScriptFunction>
    signature: Expected<ScriptFunction> ParseScript(const std::string& script)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::ParseScript
      Src: /src/behaviortreecpp/src/script_parser.cpp:464,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/script_parser.cpp:469,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/script_parser.cpp:473,1
    - Dst: what
      Src: /src/behaviortreecpp/src/script_parser.cpp:473,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/script_parser.cpp:476,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/src/script_parser.cpp:476,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ' env'
    - ' script'
    argTypes:
    - Ast::Environment
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 462
    functionDepth: 6
    functionLinenumber: 462
    functionLinenumberEnd: 477
    functionName: BT::ParseScriptAndExecute
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 8
    functionsReached:
    - BT::ParseScript
    - auto::value
    - auto::error
    - nonstd::make_unexpected
    - what
    linkageType: ''
    returnType: Expected<Any>
    signature: Expected<Any> ParseScriptAndExecute(Ast::Environment& env, const std::string&
      script)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::parseStatements
      Src: /src/behaviortreecpp/src/script_parser.cpp:483,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/src/script_parser.cpp:484,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/script_parser.cpp:486,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/script_parser.cpp:492,1
    - Dst: what
      Src: /src/behaviortreecpp/src/script_parser.cpp:492,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' script'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 479
    functionDepth: 5
    functionLinenumber: 479
    functionLinenumberEnd: 494
    functionName: BT::ValidateScript
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 4
    functionsReached:
    - BT::Scripting::parseStatements
    - nonstd::make_unexpected
    - auto::empty
    - what
    linkageType: ''
    returnType: Result
    signature: Result ValidateScript(const std::string& script)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - tokens
    argTypes:
    - std::vector<Token>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 29
    functionName: BT::Scripting::ScriptParser::ScriptParser
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ScriptParser(std::vector<Token> tokens)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::ScriptParser::atEnd
      Src: /src/behaviortreecpp/src/script_parser.cpp:34,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_parser.cpp:36,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:36,1
    - Dst: BT::Scripting::ScriptParser::check
      Src: /src/behaviortreecpp/src/script_parser.cpp:38,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 31
    functionDepth: 3
    functionLinenumber: 31
    functionLinenumberEnd: 44
    functionName: BT::Scripting::ScriptParser::parseAll
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - advance
    - BT::Scripting::ScriptParser::parseExpr
    - BT::Scripting::ScriptParser::check
    - BT::Scripting::ScriptParser::atEnd
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Ast::expr_ptr>
    signature: std::vector<Ast::expr_ptr> parseAll()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: '& peek() const'
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Token
    signature: Token & peek() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: atEnd
      Src: /src/behaviortreecpp/src/script_parser.cpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 70
    functionName: '& advance()'
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - atEnd
    linkageType: ''
    returnType: Token
    signature: Token & advance()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: BT::Scripting::ScriptParser::atEnd
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 3
    functionsReached:
    - peek
    linkageType: ''
    returnType: bool
    signature: bool atEnd() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: BT::Scripting::ScriptParser::check
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 3
    functionsReached:
    - peek
    linkageType: ''
    returnType: bool
    signature: bool check(TokenType type) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: check
      Src: /src/behaviortreecpp/src/script_parser.cpp:84,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:86,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/script_parser.cpp:86,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/script_parser.cpp:86,1
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:86,1
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:87,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:89,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - type
    - msg
    argTypes:
    - TokenType
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 90
    functionName: '& expect(TokenType type, const char* msg)'
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - check
    - advance
    - peek
    - to_string
    - StrCat
    - RuntimeError
    linkageType: ''
    returnType: Token
    signature: Token & expect(TokenType type, const char* msg)
  - BBCount: 25
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 144
    functionName: BT::Scripting::ScriptParser::leftBP
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int leftBP(TokenType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 151
    functionName: BT::Scripting::ScriptParser::isComparison
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isComparison(TokenType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 158
    functionName: BT::Scripting::ScriptParser::isAssignment
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isAssignment(TokenType type)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:165,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:170,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:171,1
    - Dst: std::make_shared<Ast::ExprUnaryArithmetic>
      Src: /src/behaviortreecpp/src/script_parser.cpp:172,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:173,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:178,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:179,1
    - Dst: std::make_shared<Ast::ExprUnaryArithmetic>
      Src: /src/behaviortreecpp/src/script_parser.cpp:180,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:181,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:186,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:187,1
    - Dst: std::make_shared<Ast::ExprUnaryArithmetic>
      Src: /src/behaviortreecpp/src/script_parser.cpp:188,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:189,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:194,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:195,1
    - Dst: expect
      Src: /src/behaviortreecpp/src/script_parser.cpp:196,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:202,1
    - Dst: std::make_shared<Ast::ExprLiteral>
      Src: /src/behaviortreecpp/src/script_parser.cpp:204,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/script_parser.cpp:204,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:209,1
    - Dst: text::data
      Src: /src/behaviortreecpp/src/script_parser.cpp:211,1
    - Dst: text::size
      Src: /src/behaviortreecpp/src/script_parser.cpp:212,1
    - Dst: text::size
      Src: /src/behaviortreecpp/src/script_parser.cpp:213,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/script_parser.cpp:216,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/script_parser.cpp:220,1
    - Dst: std::make_shared<Ast::ExprLiteral>
      Src: /src/behaviortreecpp/src/script_parser.cpp:222,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/script_parser.cpp:222,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:227,1
    - Dst: convertFromString<double>
      Src: /src/behaviortreecpp/src/script_parser.cpp:228,1
    - Dst: std::make_shared<Ast::ExprLiteral>
      Src: /src/behaviortreecpp/src/script_parser.cpp:229,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/script_parser.cpp:229,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:234,1
    - Dst: std::make_shared<Ast::ExprLiteral>
      Src: /src/behaviortreecpp/src/script_parser.cpp:235,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/script_parser.cpp:235,1
    - Dst: string
      Src: /src/behaviortreecpp/src/script_parser.cpp:235,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:240,1
    - Dst: std::make_shared<Ast::ExprName>
      Src: /src/behaviortreecpp/src/script_parser.cpp:241,1
    - Dst: string
      Src: /src/behaviortreecpp/src/script_parser.cpp:241,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:246,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/script_parser.cpp:247,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/script_parser.cpp:247,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:250,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/script_parser.cpp:250,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/script_parser.cpp:250,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 163
    functionDepth: 3
    functionLinenumber: 163
    functionLinenumberEnd: 252
    functionName: BT::Scripting::ScriptParser::parsePrefix
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 2
    functionsReached:
    - std::from_chars
    - std::make_shared<Ast::ExprLiteral>
    - advance
    - std::make_shared<Ast::ExprName>
    - std::move
    - string
    - peek
    - BT::Scripting::ScriptParser::parseExpr
    - Any
    - to_string
    - expect
    - text::size
    - StrCat
    - convertFromString<double>
    - RuntimeError
    - std::make_shared<Ast::ExprUnaryArithmetic>
    - text::data
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parsePrefix()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::ScriptParser::parsePrefix
      Src: /src/behaviortreecpp/src/script_parser.cpp:257,1
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:261,1
    - Dst: BT::Scripting::ScriptParser::leftBP
      Src: /src/behaviortreecpp/src/script_parser.cpp:262,1
    - Dst: BT::Scripting::ScriptParser::isAssignment
      Src: /src/behaviortreecpp/src/script_parser.cpp:269,1
    - Dst: BT::Scripting::ScriptParser::parseAssignment
      Src: /src/behaviortreecpp/src/script_parser.cpp:271,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:271,1
    - Dst: BT::Scripting::ScriptParser::parseTernary
      Src: /src/behaviortreecpp/src/script_parser.cpp:278,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:278,1
    - Dst: BT::Scripting::ScriptParser::isComparison
      Src: /src/behaviortreecpp/src/script_parser.cpp:283,1
    - Dst: BT::Scripting::ScriptParser::parseChainedComparison
      Src: /src/behaviortreecpp/src/script_parser.cpp:285,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:285,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:290,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:292,1
    - Dst: BT::Scripting::ScriptParser::makeBinary
      Src: /src/behaviortreecpp/src/script_parser.cpp:293,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:293,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:293,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 1
    argNames:
    - minBP
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 255
    functionDepth: 4
    functionLinenumber: 255
    functionLinenumberEnd: 297
    functionName: BT::Scripting::ScriptParser::parseExpr
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 15
    functionsReached:
    - advance
    - std::move
    - peek
    - BT::Scripting::ScriptParser::parsePrefix
    - BT::Scripting::ScriptParser::parseExpr
    - BT::Scripting::ScriptParser::parseAssignment
    - BT::Scripting::ScriptParser::isComparison
    - BT::Scripting::ScriptParser::parseChainedComparison
    - BT::Scripting::ScriptParser::isAssignment
    - BT::Scripting::ScriptParser::parseTernary
    - BT::Scripting::ScriptParser::makeBinary
    - BT::Scripting::ScriptParser::leftBP
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parseExpr(int minBP)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:301,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:324,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:327,1
    - Dst: std::make_shared<Ast::ExprAssignment>
      Src: /src/behaviortreecpp/src/script_parser.cpp:328,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:328,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:328,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - left
    argTypes:
    - Ast::expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 299
    functionDepth: 3
    functionLinenumber: 299
    functionLinenumberEnd: 329
    functionName: BT::Scripting::ScriptParser::parseAssignment
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 3
    functionsReached:
    - advance
    - std::move
    - BT::Scripting::ScriptParser::parseExpr
    - RuntimeError
    - std::make_shared<Ast::ExprAssignment>
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parseAssignment(Ast::expr_ptr left)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:333,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:334,1
    - Dst: expect
      Src: /src/behaviortreecpp/src/script_parser.cpp:335,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:336,1
    - Dst: std::make_shared<Ast::ExprIf>
      Src: /src/behaviortreecpp/src/script_parser.cpp:337,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:337,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:337,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:338,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - condition
    argTypes:
    - Ast::expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 331
    functionDepth: 3
    functionLinenumber: 331
    functionLinenumberEnd: 339
    functionName: BT::Scripting::ScriptParser::parseTernary
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 3
    functionsReached:
    - advance
    - std::move
    - BT::Scripting::ScriptParser::parseExpr
    - std::make_shared<Ast::ExprIf>
    - expect
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parseTernary(Ast::expr_ptr condition)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<Ast::ExprComparison>
      Src: /src/behaviortreecpp/src/script_parser.cpp:343,1
    - Dst: auto::operands::push_back
      Src: /src/behaviortreecpp/src/script_parser.cpp:344,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:344,1
    - Dst: BT::Scripting::ScriptParser::isComparison
      Src: /src/behaviortreecpp/src/script_parser.cpp:346,1
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:346,1
    - Dst: auto::ops::push_back
      Src: /src/behaviortreecpp/src/script_parser.cpp:348,1
    - Dst: BT::Scripting::ScriptParser::mapComparisonOp
      Src: /src/behaviortreecpp/src/script_parser.cpp:348,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:348,1
    - Dst: auto::operands::push_back
      Src: /src/behaviortreecpp/src/script_parser.cpp:351,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:351,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - first
    argTypes:
    - Ast::expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 341
    functionDepth: 3
    functionLinenumber: 341
    functionLinenumberEnd: 354
    functionName: BT::Scripting::ScriptParser::parseChainedComparison
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 3
    functionsReached:
    - advance
    - std::move
    - peek
    - std::make_shared<Ast::ExprComparison>
    - auto::operands::push_back
    - BT::Scripting::ScriptParser::parseExpr
    - auto::ops::push_back
    - BT::Scripting::ScriptParser::mapComparisonOp
    - BT::Scripting::ScriptParser::isComparison
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parseChainedComparison(Ast::expr_ptr first)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:373,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 375
    functionName: BT::Scripting::ScriptParser::mapComparisonOp
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 3
    functionsReached:
    - RuntimeError
    linkageType: ''
    returnType: Ast::ExprComparison::op_t
    signature: Ast::ExprComparison::op_t mapComparisonOp(TokenType type)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:414,1
    - Dst: std::make_shared<Ast::ExprBinaryArithmetic>
      Src: /src/behaviortreecpp/src/script_parser.cpp:416,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:416,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:417,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 3
    argNames:
    - left
    - opType
    - right
    argTypes:
    - Ast::expr_ptr
    - TokenType
    - Ast::expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 418
    functionName: BT::Scripting::ScriptParser::makeBinary
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 3
    functionsReached:
    - std::make_shared<Ast::ExprBinaryArithmetic>
    - RuntimeError
    - std::move
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: "Ast::expr_ptr makeBinary(Ast::expr_ptr left, TokenType opType,\n                                  Ast::expr_ptr
      right)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::tokenize
      Src: /src/behaviortreecpp/src/script_parser.cpp:423,1
    - Dst: ScriptParser::parseAll
      Src: /src/behaviortreecpp/src/script_parser.cpp:425,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' script'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 421
    functionDepth: 4
    functionLinenumber: 421
    functionLinenumberEnd: 426
    functionName: BT::Scripting::parseStatements
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 4
    functionsReached:
    - BT::Scripting::tokenize
    - ScriptParser::parseAll
    linkageType: ''
    returnType: std::vector<Ast::expr_ptr>
    signature: std::vector<Ast::expr_ptr> parseStatements(const std::string& script)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - tokens
    argTypes:
    - std::vector<Token>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 29
    functionName: BT::Scripting::ScriptParser::ScriptParser
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ScriptParser(std::vector<Token> tokens)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::ScriptParser::atEnd
      Src: /src/behaviortreecpp/src/script_parser.cpp:34,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/script_parser.cpp:36,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:36,1
    - Dst: BT::Scripting::ScriptParser::check
      Src: /src/behaviortreecpp/src/script_parser.cpp:38,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 31
    functionDepth: 3
    functionLinenumber: 31
    functionLinenumberEnd: 44
    functionName: BT::Scripting::ScriptParser::parseAll
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - advance
    - BT::Scripting::ScriptParser::parseExpr
    - BT::Scripting::ScriptParser::check
    - BT::Scripting::ScriptParser::atEnd
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Ast::expr_ptr>
    signature: std::vector<Ast::expr_ptr> parseAll()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: '& peek() const'
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Token
    signature: Token & peek() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: atEnd
      Src: /src/behaviortreecpp/src/script_parser.cpp:67,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 70
    functionName: '& advance()'
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - atEnd
    linkageType: ''
    returnType: Token
    signature: Token & advance()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: BT::Scripting::ScriptParser::atEnd
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 4
    functionsReached:
    - peek
    linkageType: ''
    returnType: bool
    signature: bool atEnd() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: BT::Scripting::ScriptParser::check
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 4
    functionsReached:
    - peek
    linkageType: ''
    returnType: bool
    signature: bool check(TokenType type) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: check
      Src: /src/behaviortreecpp/src/script_parser.cpp:84,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:86,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/script_parser.cpp:86,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/script_parser.cpp:86,1
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:86,1
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:87,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:89,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - type
    - msg
    argTypes:
    - TokenType
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 82
    functionDepth: 1
    functionLinenumber: 82
    functionLinenumberEnd: 90
    functionName: '& expect(TokenType type, const char* msg)'
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 0
    functionsReached:
    - check
    - advance
    - peek
    - to_string
    - StrCat
    - RuntimeError
    linkageType: ''
    returnType: Token
    signature: Token & expect(TokenType type, const char* msg)
  - BBCount: 25
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 144
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 144
    functionName: BT::Scripting::ScriptParser::leftBP
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int leftBP(TokenType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 151
    functionName: BT::Scripting::ScriptParser::isComparison
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isComparison(TokenType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 153
    functionDepth: 0
    functionLinenumber: 153
    functionLinenumberEnd: 158
    functionName: BT::Scripting::ScriptParser::isAssignment
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isAssignment(TokenType type)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:165,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:170,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:171,1
    - Dst: std::make_shared<Ast::ExprUnaryArithmetic>
      Src: /src/behaviortreecpp/src/script_parser.cpp:172,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:173,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:178,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:179,1
    - Dst: std::make_shared<Ast::ExprUnaryArithmetic>
      Src: /src/behaviortreecpp/src/script_parser.cpp:180,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:181,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:186,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:187,1
    - Dst: std::make_shared<Ast::ExprUnaryArithmetic>
      Src: /src/behaviortreecpp/src/script_parser.cpp:188,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:189,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:194,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:195,1
    - Dst: expect
      Src: /src/behaviortreecpp/src/script_parser.cpp:196,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:202,1
    - Dst: std::make_shared<Ast::ExprLiteral>
      Src: /src/behaviortreecpp/src/script_parser.cpp:204,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/script_parser.cpp:204,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:209,1
    - Dst: text::data
      Src: /src/behaviortreecpp/src/script_parser.cpp:211,1
    - Dst: text::size
      Src: /src/behaviortreecpp/src/script_parser.cpp:212,1
    - Dst: text::size
      Src: /src/behaviortreecpp/src/script_parser.cpp:213,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/script_parser.cpp:216,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/script_parser.cpp:220,1
    - Dst: std::make_shared<Ast::ExprLiteral>
      Src: /src/behaviortreecpp/src/script_parser.cpp:222,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/script_parser.cpp:222,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:227,1
    - Dst: convertFromString<double>
      Src: /src/behaviortreecpp/src/script_parser.cpp:228,1
    - Dst: std::make_shared<Ast::ExprLiteral>
      Src: /src/behaviortreecpp/src/script_parser.cpp:229,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/script_parser.cpp:229,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:234,1
    - Dst: std::make_shared<Ast::ExprLiteral>
      Src: /src/behaviortreecpp/src/script_parser.cpp:235,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/script_parser.cpp:235,1
    - Dst: string
      Src: /src/behaviortreecpp/src/script_parser.cpp:235,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:240,1
    - Dst: std::make_shared<Ast::ExprName>
      Src: /src/behaviortreecpp/src/script_parser.cpp:241,1
    - Dst: string
      Src: /src/behaviortreecpp/src/script_parser.cpp:241,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:246,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/script_parser.cpp:247,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/script_parser.cpp:247,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:250,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/script_parser.cpp:250,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/script_parser.cpp:250,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 252
      start: 163
    functionDepth: 3
    functionLinenumber: 163
    functionLinenumberEnd: 252
    functionName: BT::Scripting::ScriptParser::parsePrefix
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 3
    functionsReached:
    - std::from_chars
    - std::make_shared<Ast::ExprLiteral>
    - advance
    - std::make_shared<Ast::ExprName>
    - std::move
    - string
    - peek
    - BT::Scripting::ScriptParser::parseExpr
    - Any
    - to_string
    - expect
    - text::size
    - StrCat
    - convertFromString<double>
    - RuntimeError
    - std::make_shared<Ast::ExprUnaryArithmetic>
    - text::data
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parsePrefix()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::ScriptParser::parsePrefix
      Src: /src/behaviortreecpp/src/script_parser.cpp:257,1
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:261,1
    - Dst: BT::Scripting::ScriptParser::leftBP
      Src: /src/behaviortreecpp/src/script_parser.cpp:262,1
    - Dst: BT::Scripting::ScriptParser::isAssignment
      Src: /src/behaviortreecpp/src/script_parser.cpp:269,1
    - Dst: BT::Scripting::ScriptParser::parseAssignment
      Src: /src/behaviortreecpp/src/script_parser.cpp:271,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:271,1
    - Dst: BT::Scripting::ScriptParser::parseTernary
      Src: /src/behaviortreecpp/src/script_parser.cpp:278,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:278,1
    - Dst: BT::Scripting::ScriptParser::isComparison
      Src: /src/behaviortreecpp/src/script_parser.cpp:283,1
    - Dst: BT::Scripting::ScriptParser::parseChainedComparison
      Src: /src/behaviortreecpp/src/script_parser.cpp:285,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:285,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:290,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:292,1
    - Dst: BT::Scripting::ScriptParser::makeBinary
      Src: /src/behaviortreecpp/src/script_parser.cpp:293,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:293,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:293,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 20
    argCount: 1
    argNames:
    - minBP
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 255
    functionDepth: 4
    functionLinenumber: 255
    functionLinenumberEnd: 297
    functionName: BT::Scripting::ScriptParser::parseExpr
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 21
    functionsReached:
    - advance
    - std::move
    - peek
    - BT::Scripting::ScriptParser::parsePrefix
    - BT::Scripting::ScriptParser::parseExpr
    - BT::Scripting::ScriptParser::parseAssignment
    - BT::Scripting::ScriptParser::isComparison
    - BT::Scripting::ScriptParser::parseChainedComparison
    - BT::Scripting::ScriptParser::isAssignment
    - BT::Scripting::ScriptParser::parseTernary
    - BT::Scripting::ScriptParser::makeBinary
    - BT::Scripting::ScriptParser::leftBP
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parseExpr(int minBP)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:301,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:324,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:327,1
    - Dst: std::make_shared<Ast::ExprAssignment>
      Src: /src/behaviortreecpp/src/script_parser.cpp:328,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:328,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:328,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 1
    argNames:
    - left
    argTypes:
    - Ast::expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 299
    functionDepth: 3
    functionLinenumber: 299
    functionLinenumberEnd: 329
    functionName: BT::Scripting::ScriptParser::parseAssignment
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 4
    functionsReached:
    - advance
    - std::move
    - BT::Scripting::ScriptParser::parseExpr
    - RuntimeError
    - std::make_shared<Ast::ExprAssignment>
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parseAssignment(Ast::expr_ptr left)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:333,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:334,1
    - Dst: expect
      Src: /src/behaviortreecpp/src/script_parser.cpp:335,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:336,1
    - Dst: std::make_shared<Ast::ExprIf>
      Src: /src/behaviortreecpp/src/script_parser.cpp:337,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:337,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:337,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:338,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - condition
    argTypes:
    - Ast::expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 339
      start: 331
    functionDepth: 3
    functionLinenumber: 331
    functionLinenumberEnd: 339
    functionName: BT::Scripting::ScriptParser::parseTernary
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 4
    functionsReached:
    - advance
    - std::move
    - BT::Scripting::ScriptParser::parseExpr
    - std::make_shared<Ast::ExprIf>
    - expect
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parseTernary(Ast::expr_ptr condition)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<Ast::ExprComparison>
      Src: /src/behaviortreecpp/src/script_parser.cpp:343,1
    - Dst: auto::operands::push_back
      Src: /src/behaviortreecpp/src/script_parser.cpp:344,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:344,1
    - Dst: BT::Scripting::ScriptParser::isComparison
      Src: /src/behaviortreecpp/src/script_parser.cpp:346,1
    - Dst: peek
      Src: /src/behaviortreecpp/src/script_parser.cpp:346,1
    - Dst: auto::ops::push_back
      Src: /src/behaviortreecpp/src/script_parser.cpp:348,1
    - Dst: BT::Scripting::ScriptParser::mapComparisonOp
      Src: /src/behaviortreecpp/src/script_parser.cpp:348,1
    - Dst: advance
      Src: /src/behaviortreecpp/src/script_parser.cpp:348,1
    - Dst: auto::operands::push_back
      Src: /src/behaviortreecpp/src/script_parser.cpp:351,1
    - Dst: BT::Scripting::ScriptParser::parseExpr
      Src: /src/behaviortreecpp/src/script_parser.cpp:351,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - first
    argTypes:
    - Ast::expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 341
    functionDepth: 3
    functionLinenumber: 341
    functionLinenumberEnd: 354
    functionName: BT::Scripting::ScriptParser::parseChainedComparison
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 4
    functionsReached:
    - advance
    - std::move
    - peek
    - std::make_shared<Ast::ExprComparison>
    - auto::operands::push_back
    - BT::Scripting::ScriptParser::parseExpr
    - auto::ops::push_back
    - BT::Scripting::ScriptParser::mapComparisonOp
    - BT::Scripting::ScriptParser::isComparison
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: Ast::expr_ptr parseChainedComparison(Ast::expr_ptr first)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:373,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 17
    argCount: 1
    argNames:
    - type
    argTypes:
    - TokenType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 356
    functionDepth: 0
    functionLinenumber: 356
    functionLinenumberEnd: 375
    functionName: BT::Scripting::ScriptParser::mapComparisonOp
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 4
    functionsReached:
    - RuntimeError
    linkageType: ''
    returnType: Ast::ExprComparison::op_t
    signature: Ast::ExprComparison::op_t mapComparisonOp(TokenType type)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:414,1
    - Dst: std::make_shared<Ast::ExprBinaryArithmetic>
      Src: /src/behaviortreecpp/src/script_parser.cpp:416,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:416,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:417,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 36
    argCount: 3
    argNames:
    - left
    - opType
    - right
    argTypes:
    - Ast::expr_ptr
    - TokenType
    - Ast::expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 418
    functionName: BT::Scripting::ScriptParser::makeBinary
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 4
    functionsReached:
    - std::make_shared<Ast::ExprBinaryArithmetic>
    - RuntimeError
    - std::move
    linkageType: ''
    returnType: Ast::expr_ptr
    signature: "Ast::expr_ptr makeBinary(Ast::expr_ptr left, TokenType opType,\n                                  Ast::expr_ptr
      right)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::tokenize
      Src: /src/behaviortreecpp/src/script_parser.cpp:423,1
    - Dst: ScriptParser::parseAll
      Src: /src/behaviortreecpp/src/script_parser.cpp:425,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' script'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 421
    functionDepth: 4
    functionLinenumber: 421
    functionLinenumberEnd: 426
    functionName: BT::Scripting::parseStatements
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 4
    functionsReached:
    - BT::Scripting::tokenize
    - ScriptParser::parseAll
    linkageType: ''
    returnType: std::vector<Ast::expr_ptr>
    signature: std::vector<Ast::expr_ptr> parseStatements(const std::string& script)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::parseStatements
      Src: /src/behaviortreecpp/src/script_parser.cpp:436,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/src/script_parser.cpp:437,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/script_parser.cpp:439,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/script_parser.cpp:441,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/src/script_parser.cpp:444,1
    - Dst: evaluate
      Src: /src/behaviortreecpp/src/script_parser.cpp:446,1
    - Dst: auto::back
      Src: /src/behaviortreecpp/src/script_parser.cpp:448,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/script_parser.cpp:452,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/src/script_parser.cpp:452,1
    - Dst: what
      Src: /src/behaviortreecpp/src/script_parser.cpp:452,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/script_parser.cpp:458,1
    - Dst: what
      Src: /src/behaviortreecpp/src/script_parser.cpp:458,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - ' script'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 432
    functionDepth: 5
    functionLinenumber: 432
    functionLinenumberEnd: 460
    functionName: BT::ParseScript
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 1
    functionsReached:
    - std::move
    - auto::back
    - nonstd::make_unexpected
    - BT::StrCat
    - evaluate
    - auto::empty
    - RuntimeError
    - what
    - BT::Scripting::parseStatements
    - auto::size
    linkageType: ''
    returnType: Expected<ScriptFunction>
    signature: Expected<ScriptFunction> ParseScript(const std::string& script)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::ParseScript
      Src: /src/behaviortreecpp/src/script_parser.cpp:464,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/script_parser.cpp:469,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/script_parser.cpp:473,1
    - Dst: what
      Src: /src/behaviortreecpp/src/script_parser.cpp:473,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/script_parser.cpp:476,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/src/script_parser.cpp:476,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - ' env'
    - ' script'
    argTypes:
    - Ast::Environment
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 477
      start: 462
    functionDepth: 6
    functionLinenumber: 462
    functionLinenumberEnd: 477
    functionName: BT::ParseScriptAndExecute
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 8
    functionsReached:
    - BT::ParseScript
    - auto::value
    - auto::error
    - nonstd::make_unexpected
    - what
    linkageType: ''
    returnType: Expected<Any>
    signature: Expected<Any> ParseScriptAndExecute(Ast::Environment& env, const std::string&
      script)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Scripting::parseStatements
      Src: /src/behaviortreecpp/src/script_parser.cpp:483,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/src/script_parser.cpp:484,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/script_parser.cpp:486,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/script_parser.cpp:492,1
    - Dst: what
      Src: /src/behaviortreecpp/src/script_parser.cpp:492,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - ' script'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 479
    functionDepth: 5
    functionLinenumber: 479
    functionLinenumberEnd: 494
    functionName: BT::ValidateScript
    functionSourceFile: /src/behaviortreecpp/src/script_parser.cpp
    functionUses: 4
    functionsReached:
    - BT::Scripting::parseStatements
    - nonstd::make_unexpected
    - auto::empty
    - what
    linkageType: ''
    returnType: Result
    signature: Result ValidateScript(const std::string& script)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 20
    functionName: BT::DecoratorNode::DecoratorNode
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DecoratorNode::DecoratorNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeException
      Src: /src/behaviortreecpp/src/decorator_node.cpp:26,1
    - Dst: name
      Src: /src/behaviortreecpp/src/decorator_node.cpp:26,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - child
    argTypes:
    - TreeNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 30
    functionName: BT::DecoratorNode::setChild
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 0
    functionsReached:
    - name
    - BehaviorTreeException
    linkageType: ''
    returnType: void
    signature: void DecoratorNode::setChild(TreeNode* child)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::DecoratorNode::resetChild
      Src: /src/behaviortreecpp/src/decorator_node.cpp:34,1
    - Dst: resetStatus
      Src: /src/behaviortreecpp/src/decorator_node.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionName: BT::DecoratorNode::halt
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 0
    functionsReached:
    - BT::DecoratorNode::resetChild
    - resetStatus
    linkageType: ''
    returnType: void
    signature: void DecoratorNode::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: BT::DecoratorNode::child
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TreeNode
    signature: TreeNode * DecoratorNode::child() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: BT::DecoratorNode::child
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TreeNode
    signature: TreeNode * DecoratorNode::child()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::DecoratorNode::resetChild
      Src: /src/behaviortreecpp/src/decorator_node.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: BT::DecoratorNode::haltChild
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 0
    functionsReached:
    - BT::DecoratorNode::resetChild
    linkageType: ''
    returnType: void
    signature: void DecoratorNode::haltChild()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: status
      Src: /src/behaviortreecpp/src/decorator_node.cpp:59,1
    - Dst: haltNode
      Src: /src/behaviortreecpp/src/decorator_node.cpp:61,1
    - Dst: resetStatus
      Src: /src/behaviortreecpp/src/decorator_node.cpp:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 64
    functionName: BT::DecoratorNode::resetChild
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 2
    functionsReached:
    - haltNode
    - status
    - resetStatus
    linkageType: ''
    returnType: void
    signature: void DecoratorNode::resetChild()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/decorator_node.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - tick_functor
    - ' config'
    argTypes:
    - std::string
    - TickFunctor
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 70
    functionName: BT::SimpleDecoratorNode::SimpleDecoratorNode
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SimpleDecoratorNode::SimpleDecoratorNode(const std::string& name,\n
      \                                        TickFunctor tick_functor,\n                                         const
      NodeConfig& config)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tick_functor_
      Src: /src/behaviortreecpp/src/decorator_node.cpp:74,1
    - Dst: child
      Src: /src/behaviortreecpp/src/decorator_node.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: BT::SimpleDecoratorNode::tick
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 0
    functionsReached:
    - child
    - tick_functor_
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus SimpleDecoratorNode::tick()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::TreeNode::executeTick
      Src: /src/behaviortreecpp/src/decorator_node.cpp:79,1
    - Dst: BT::DecoratorNode::child
      Src: /src/behaviortreecpp/src/decorator_node.cpp:80,1
    - Dst: BT::DecoratorNode::child
      Src: /src/behaviortreecpp/src/decorator_node.cpp:83,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 86
    functionName: BT::DecoratorNode::executeTick
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 0
    functionsReached:
    - BT::TreeNode::executeTick
    - BT::DecoratorNode::child
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus DecoratorNode::executeTick()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 20
    functionName: BT::DecoratorNode::DecoratorNode
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DecoratorNode::DecoratorNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeException
      Src: /src/behaviortreecpp/src/decorator_node.cpp:26,1
    - Dst: name
      Src: /src/behaviortreecpp/src/decorator_node.cpp:26,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - child
    argTypes:
    - TreeNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 30
    functionName: BT::DecoratorNode::setChild
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 0
    functionsReached:
    - name
    - BehaviorTreeException
    linkageType: ''
    returnType: void
    signature: void DecoratorNode::setChild(TreeNode* child)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::DecoratorNode::resetChild
      Src: /src/behaviortreecpp/src/decorator_node.cpp:34,1
    - Dst: resetStatus
      Src: /src/behaviortreecpp/src/decorator_node.cpp:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 36
    functionName: BT::DecoratorNode::halt
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 0
    functionsReached:
    - BT::DecoratorNode::resetChild
    - resetStatus
    linkageType: ''
    returnType: void
    signature: void DecoratorNode::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: BT::DecoratorNode::child
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: TreeNode
    signature: TreeNode * DecoratorNode::child() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: BT::DecoratorNode::child
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: TreeNode
    signature: TreeNode * DecoratorNode::child()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::DecoratorNode::resetChild
      Src: /src/behaviortreecpp/src/decorator_node.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: BT::DecoratorNode::haltChild
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 0
    functionsReached:
    - BT::DecoratorNode::resetChild
    linkageType: ''
    returnType: void
    signature: void DecoratorNode::haltChild()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: status
      Src: /src/behaviortreecpp/src/decorator_node.cpp:59,1
    - Dst: haltNode
      Src: /src/behaviortreecpp/src/decorator_node.cpp:61,1
    - Dst: resetStatus
      Src: /src/behaviortreecpp/src/decorator_node.cpp:63,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 64
    functionName: BT::DecoratorNode::resetChild
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 4
    functionsReached:
    - haltNode
    - status
    - resetStatus
    linkageType: ''
    returnType: void
    signature: void DecoratorNode::resetChild()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/decorator_node.cpp:69,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - tick_functor
    - ' config'
    argTypes:
    - std::string
    - TickFunctor
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 70
    functionName: BT::SimpleDecoratorNode::SimpleDecoratorNode
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void SimpleDecoratorNode::SimpleDecoratorNode(const std::string& name,\n
      \                                        TickFunctor tick_functor,\n                                         const
      NodeConfig& config)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tick_functor_
      Src: /src/behaviortreecpp/src/decorator_node.cpp:74,1
    - Dst: child
      Src: /src/behaviortreecpp/src/decorator_node.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: BT::SimpleDecoratorNode::tick
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 0
    functionsReached:
    - child
    - tick_functor_
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus SimpleDecoratorNode::tick()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::TreeNode::executeTick
      Src: /src/behaviortreecpp/src/decorator_node.cpp:79,1
    - Dst: BT::DecoratorNode::child
      Src: /src/behaviortreecpp/src/decorator_node.cpp:80,1
    - Dst: BT::DecoratorNode::child
      Src: /src/behaviortreecpp/src/decorator_node.cpp:83,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 77
    functionDepth: 2
    functionLinenumber: 77
    functionLinenumberEnd: 86
    functionName: BT::DecoratorNode::executeTick
    functionSourceFile: /src/behaviortreecpp/src/decorator_node.cpp
    functionUses: 0
    functionsReached:
    - BT::TreeNode::executeTick
    - BT::DecoratorNode::child
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus DecoratorNode::executeTick()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10
      start: 6
    functionDepth: 0
    functionLinenumber: 6
    functionLinenumberEnd: 10
    functionName: '& JsonExporter::get()'
    functionSourceFile: /src/behaviortreecpp/src/json_export.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JsonExporter
    signature: JsonExporter & JsonExporter::get()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: castedType
      Src: /src/behaviortreecpp/src/json_export.cpp:14,1
    - Dst: isString
      Src: /src/behaviortreecpp/src/json_export.cpp:16,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/json_export.cpp:18,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/json_export.cpp:20,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/json_export.cpp:22,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/json_export.cpp:24,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/json_export.cpp:26,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/json_export.cpp:28,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/json_export.cpp:30,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/json_export.cpp:32,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/json_export.cpp:34,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/json_export.cpp:36,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/json_export.cpp:38,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/json_export.cpp:40,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/json_export.cpp:42,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/json_export.cpp:44,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/json_export.cpp:46,1
    - Dst: find
      Src: /src/behaviortreecpp/src/json_export.cpp:50,1
    - Dst: end
      Src: /src/behaviortreecpp/src/json_export.cpp:51,1
    - Dst: auto::second
      Src: /src/behaviortreecpp/src/json_export.cpp:53,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 2
    argNames:
    - ' any'
    - ' dst'
    argTypes:
    - Any
    - nlohmann::json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 12
    functionDepth: 1
    functionLinenumber: 12
    functionLinenumberEnd: 61
    functionName: BT::JsonExporter::toJson
    functionSourceFile: /src/behaviortreecpp/src/json_export.cpp
    functionUses: 0
    functionsReached:
    - cast
    - find
    - typeid
    - castedType
    - end
    - isString
    - auto::second
    linkageType: ''
    returnType: bool
    signature: bool JsonExporter::toJson(const Any& any, nlohmann::json& dst) const
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: is_null
      Src: /src/behaviortreecpp/src/json_export.cpp:65,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:67,1
    - Dst: BT::TypeInfo::Create<std::nullptr_t>
      Src: /src/behaviortreecpp/src/json_export.cpp:67,1
    - Dst: is_string
      Src: /src/behaviortreecpp/src/json_export.cpp:70,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:72,1
    - Dst: get
      Src: /src/behaviortreecpp/src/json_export.cpp:72,1
    - Dst: BT::TypeInfo::Create<std::string>
      Src: /src/behaviortreecpp/src/json_export.cpp:73,1
    - Dst: is_number_integer
      Src: /src/behaviortreecpp/src/json_export.cpp:75,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:77,1
    - Dst: get
      Src: /src/behaviortreecpp/src/json_export.cpp:77,1
    - Dst: BT::TypeInfo::Create<int>
      Src: /src/behaviortreecpp/src/json_export.cpp:77,1
    - Dst: is_number_float
      Src: /src/behaviortreecpp/src/json_export.cpp:79,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:81,1
    - Dst: get
      Src: /src/behaviortreecpp/src/json_export.cpp:81,1
    - Dst: BT::TypeInfo::Create<double>
      Src: /src/behaviortreecpp/src/json_export.cpp:81,1
    - Dst: is_boolean
      Src: /src/behaviortreecpp/src/json_export.cpp:83,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:85,1
    - Dst: get
      Src: /src/behaviortreecpp/src/json_export.cpp:85,1
    - Dst: BT::TypeInfo::Create<bool>
      Src: /src/behaviortreecpp/src/json_export.cpp:85,1
    - Dst: is_array
      Src: /src/behaviortreecpp/src/json_export.cpp:89,1
    - Dst: size
      Src: /src/behaviortreecpp/src/json_export.cpp:89,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/json_export.cpp:89,1
    - Dst: auto::is_string
      Src: /src/behaviortreecpp/src/json_export.cpp:92,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:94,1
    - Dst: get
      Src: /src/behaviortreecpp/src/json_export.cpp:94,1
    - Dst: BT::TypeInfo::Create<std::vector<std::string>>
      Src: /src/behaviortreecpp/src/json_export.cpp:95,1
    - Dst: auto::is_number_integer
      Src: /src/behaviortreecpp/src/json_export.cpp:97,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:99,1
    - Dst: get
      Src: /src/behaviortreecpp/src/json_export.cpp:99,1
    - Dst: BT::TypeInfo::Create<std::vector<int>>
      Src: /src/behaviortreecpp/src/json_export.cpp:100,1
    - Dst: auto::is_number_float
      Src: /src/behaviortreecpp/src/json_export.cpp:102,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:104,1
    - Dst: get
      Src: /src/behaviortreecpp/src/json_export.cpp:104,1
    - Dst: BT::TypeInfo::Create<std::vector<double>>
      Src: /src/behaviortreecpp/src/json_export.cpp:105,1
    - Dst: auto::is_boolean
      Src: /src/behaviortreecpp/src/json_export.cpp:107,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:109,1
    - Dst: get
      Src: /src/behaviortreecpp/src/json_export.cpp:109,1
    - Dst: BT::TypeInfo::Create<std::vector<bool>>
      Src: /src/behaviortreecpp/src/json_export.cpp:110,1
    - Dst: is_array
      Src: /src/behaviortreecpp/src/json_export.cpp:114,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/json_export.cpp:116,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/json_export.cpp:117,1
    - Dst: is_object
      Src: /src/behaviortreecpp/src/json_export.cpp:119,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/json_export.cpp:119,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/json_export.cpp:120,1
    - Dst: is_string
      Src: /src/behaviortreecpp/src/json_export.cpp:121,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/json_export.cpp:122,1
    - Dst: is_object
      Src: /src/behaviortreecpp/src/json_export.cpp:126,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/json_export.cpp:126,1
    - Dst: is_string
      Src: /src/behaviortreecpp/src/json_export.cpp:126,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/json_export.cpp:127,1
    - Dst: is_array
      Src: /src/behaviortreecpp/src/json_export.cpp:131,1
    - Dst: is_array
      Src: /src/behaviortreecpp/src/json_export.cpp:132,1
    - Dst: find
      Src: /src/behaviortreecpp/src/json_export.cpp:134,1
    - Dst: end
      Src: /src/behaviortreecpp/src/json_export.cpp:135,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/json_export.cpp:137,1
    - Dst: find
      Src: /src/behaviortreecpp/src/json_export.cpp:139,1
    - Dst: auto::second::type
      Src: /src/behaviortreecpp/src/json_export.cpp:139,1
    - Dst: end
      Src: /src/behaviortreecpp/src/json_export.cpp:140,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/json_export.cpp:142,1
    - Dst: auto::second
      Src: /src/behaviortreecpp/src/json_export.cpp:144,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 48
    argCount: 1
    argNames:
    - ' source'
    argTypes:
    - nlohmann::json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 145
    functionName: BT::JsonExporter::fromJson
    functionSourceFile: /src/behaviortreecpp/src/json_export.cpp
    functionUses: 0
    functionsReached:
    - get
    - find
    - is_boolean
    - nonstd::make_unexpected
    - size
    - auto::is_string
    - BT::TypeInfo::Create<std::vector<std::string>>
    - BT::TypeInfo::Create<std::vector<bool>>
    - auto::is_boolean
    - empty
    - BT::TypeInfo::Create<bool>
    - auto::second
    - auto::is_number_float
    - BT::TypeInfo::Create<std::nullptr_t>
    - BT::TypeInfo::Create<int>
    - is_string
    - is_array
    - is_number_float
    - is_null
    - end
    - contains
    - is_number_integer
    - BT::TypeInfo::Create<std::string>
    - BT::TypeInfo::Create<std::vector<double>>
    - auto::second::type
    - is_object
    - BT::TypeInfo::Create<double>
    - auto::is_number_integer
    - BT::Blackboard::getAny
    - BT::TypeInfo::Create<std::vector<int>>
    linkageType: ''
    returnType: JsonExporter::ExpectedEntry
    signature: JsonExporter::ExpectedEntry JsonExporter::fromJson(const nlohmann::json&
      source) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/behaviortreecpp/src/json_export.cpp:150,1
    - Dst: end
      Src: /src/behaviortreecpp/src/json_export.cpp:151,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/json_export.cpp:153,1
    - Dst: auto::second
      Src: /src/behaviortreecpp/src/json_export.cpp:155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' source'
    - type
    argTypes:
    - nlohmann::json
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 156
    functionName: BT::JsonExporter::fromJson
    functionSourceFile: /src/behaviortreecpp/src/json_export.cpp
    functionUses: 0
    functionsReached:
    - nonstd::make_unexpected
    - find
    - end
    - auto::second
    linkageType: ''
    returnType: JsonExporter::ExpectedEntry
    signature: "JsonExporter::ExpectedEntry JsonExporter::fromJson(const nlohmann::json&
      source,\n                                                   std::type_index
      type) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10
      start: 6
    functionDepth: 0
    functionLinenumber: 6
    functionLinenumberEnd: 10
    functionName: '& JsonExporter::get()'
    functionSourceFile: /src/behaviortreecpp/src/json_export.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JsonExporter
    signature: JsonExporter & JsonExporter::get()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: castedType
      Src: /src/behaviortreecpp/src/json_export.cpp:14,1
    - Dst: isString
      Src: /src/behaviortreecpp/src/json_export.cpp:16,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/json_export.cpp:18,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/json_export.cpp:20,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/json_export.cpp:22,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/json_export.cpp:24,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/json_export.cpp:26,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/json_export.cpp:28,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/json_export.cpp:30,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/json_export.cpp:32,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/json_export.cpp:34,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/json_export.cpp:36,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/json_export.cpp:38,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/json_export.cpp:40,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/json_export.cpp:42,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/json_export.cpp:44,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/json_export.cpp:46,1
    - Dst: find
      Src: /src/behaviortreecpp/src/json_export.cpp:50,1
    - Dst: end
      Src: /src/behaviortreecpp/src/json_export.cpp:51,1
    - Dst: auto::second
      Src: /src/behaviortreecpp/src/json_export.cpp:53,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 32
    argCount: 2
    argNames:
    - ' any'
    - ' dst'
    argTypes:
    - Any
    - nlohmann::json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 12
    functionDepth: 1
    functionLinenumber: 12
    functionLinenumberEnd: 61
    functionName: BT::JsonExporter::toJson
    functionSourceFile: /src/behaviortreecpp/src/json_export.cpp
    functionUses: 0
    functionsReached:
    - cast
    - find
    - typeid
    - castedType
    - end
    - isString
    - auto::second
    linkageType: ''
    returnType: bool
    signature: bool JsonExporter::toJson(const Any& any, nlohmann::json& dst) const
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: is_null
      Src: /src/behaviortreecpp/src/json_export.cpp:65,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:67,1
    - Dst: BT::TypeInfo::Create<std::nullptr_t>
      Src: /src/behaviortreecpp/src/json_export.cpp:67,1
    - Dst: is_string
      Src: /src/behaviortreecpp/src/json_export.cpp:70,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:72,1
    - Dst: get
      Src: /src/behaviortreecpp/src/json_export.cpp:72,1
    - Dst: BT::TypeInfo::Create<std::string>
      Src: /src/behaviortreecpp/src/json_export.cpp:73,1
    - Dst: is_number_integer
      Src: /src/behaviortreecpp/src/json_export.cpp:75,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:77,1
    - Dst: get
      Src: /src/behaviortreecpp/src/json_export.cpp:77,1
    - Dst: BT::TypeInfo::Create<int>
      Src: /src/behaviortreecpp/src/json_export.cpp:77,1
    - Dst: is_number_float
      Src: /src/behaviortreecpp/src/json_export.cpp:79,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:81,1
    - Dst: get
      Src: /src/behaviortreecpp/src/json_export.cpp:81,1
    - Dst: BT::TypeInfo::Create<double>
      Src: /src/behaviortreecpp/src/json_export.cpp:81,1
    - Dst: is_boolean
      Src: /src/behaviortreecpp/src/json_export.cpp:83,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:85,1
    - Dst: get
      Src: /src/behaviortreecpp/src/json_export.cpp:85,1
    - Dst: BT::TypeInfo::Create<bool>
      Src: /src/behaviortreecpp/src/json_export.cpp:85,1
    - Dst: is_array
      Src: /src/behaviortreecpp/src/json_export.cpp:89,1
    - Dst: size
      Src: /src/behaviortreecpp/src/json_export.cpp:89,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/json_export.cpp:89,1
    - Dst: auto::is_string
      Src: /src/behaviortreecpp/src/json_export.cpp:92,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:94,1
    - Dst: get
      Src: /src/behaviortreecpp/src/json_export.cpp:94,1
    - Dst: BT::TypeInfo::Create<std::vector<std::string>>
      Src: /src/behaviortreecpp/src/json_export.cpp:95,1
    - Dst: auto::is_number_integer
      Src: /src/behaviortreecpp/src/json_export.cpp:97,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:99,1
    - Dst: get
      Src: /src/behaviortreecpp/src/json_export.cpp:99,1
    - Dst: BT::TypeInfo::Create<std::vector<int>>
      Src: /src/behaviortreecpp/src/json_export.cpp:100,1
    - Dst: auto::is_number_float
      Src: /src/behaviortreecpp/src/json_export.cpp:102,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:104,1
    - Dst: get
      Src: /src/behaviortreecpp/src/json_export.cpp:104,1
    - Dst: BT::TypeInfo::Create<std::vector<double>>
      Src: /src/behaviortreecpp/src/json_export.cpp:105,1
    - Dst: auto::is_boolean
      Src: /src/behaviortreecpp/src/json_export.cpp:107,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/src/json_export.cpp:109,1
    - Dst: get
      Src: /src/behaviortreecpp/src/json_export.cpp:109,1
    - Dst: BT::TypeInfo::Create<std::vector<bool>>
      Src: /src/behaviortreecpp/src/json_export.cpp:110,1
    - Dst: is_array
      Src: /src/behaviortreecpp/src/json_export.cpp:114,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/json_export.cpp:116,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/json_export.cpp:117,1
    - Dst: is_object
      Src: /src/behaviortreecpp/src/json_export.cpp:119,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/json_export.cpp:119,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/json_export.cpp:120,1
    - Dst: is_string
      Src: /src/behaviortreecpp/src/json_export.cpp:121,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/json_export.cpp:122,1
    - Dst: is_object
      Src: /src/behaviortreecpp/src/json_export.cpp:126,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/json_export.cpp:126,1
    - Dst: is_string
      Src: /src/behaviortreecpp/src/json_export.cpp:126,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/json_export.cpp:127,1
    - Dst: is_array
      Src: /src/behaviortreecpp/src/json_export.cpp:131,1
    - Dst: is_array
      Src: /src/behaviortreecpp/src/json_export.cpp:132,1
    - Dst: find
      Src: /src/behaviortreecpp/src/json_export.cpp:134,1
    - Dst: end
      Src: /src/behaviortreecpp/src/json_export.cpp:135,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/json_export.cpp:137,1
    - Dst: find
      Src: /src/behaviortreecpp/src/json_export.cpp:139,1
    - Dst: auto::second::type
      Src: /src/behaviortreecpp/src/json_export.cpp:139,1
    - Dst: end
      Src: /src/behaviortreecpp/src/json_export.cpp:140,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/json_export.cpp:142,1
    - Dst: auto::second
      Src: /src/behaviortreecpp/src/json_export.cpp:144,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 48
    argCount: 1
    argNames:
    - ' source'
    argTypes:
    - nlohmann::json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 145
    functionName: BT::JsonExporter::fromJson
    functionSourceFile: /src/behaviortreecpp/src/json_export.cpp
    functionUses: 0
    functionsReached:
    - get
    - find
    - is_boolean
    - nonstd::make_unexpected
    - size
    - auto::is_string
    - BT::TypeInfo::Create<std::vector<std::string>>
    - BT::TypeInfo::Create<std::vector<bool>>
    - auto::is_boolean
    - empty
    - BT::TypeInfo::Create<bool>
    - auto::second
    - auto::is_number_float
    - BT::TypeInfo::Create<std::nullptr_t>
    - BT::TypeInfo::Create<int>
    - is_string
    - is_array
    - is_number_float
    - is_null
    - end
    - contains
    - is_number_integer
    - BT::TypeInfo::Create<std::string>
    - BT::TypeInfo::Create<std::vector<double>>
    - auto::second::type
    - is_object
    - BT::TypeInfo::Create<double>
    - auto::is_number_integer
    - BT::Blackboard::getAny
    - BT::TypeInfo::Create<std::vector<int>>
    linkageType: ''
    returnType: JsonExporter::ExpectedEntry
    signature: JsonExporter::ExpectedEntry JsonExporter::fromJson(const nlohmann::json&
      source) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/behaviortreecpp/src/json_export.cpp:150,1
    - Dst: end
      Src: /src/behaviortreecpp/src/json_export.cpp:151,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/json_export.cpp:153,1
    - Dst: auto::second
      Src: /src/behaviortreecpp/src/json_export.cpp:155,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' source'
    - type
    argTypes:
    - nlohmann::json
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 156
    functionName: BT::JsonExporter::fromJson
    functionSourceFile: /src/behaviortreecpp/src/json_export.cpp
    functionUses: 0
    functionsReached:
    - nonstd::make_unexpected
    - find
    - end
    - auto::second
    linkageType: ''
    returnType: JsonExporter::ExpectedEntry
    signature: "JsonExporter::ExpectedEntry JsonExporter::fromJson(const nlohmann::json&
      source,\n                                                   std::type_index
      type) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/blackboard.cpp:15,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/blackboard.cpp:15,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16
      start: 13
    functionDepth: 1
    functionLinenumber: 13
    functionLinenumberEnd: 16
    functionName: BT::IsPrivateKey
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - StringView::size
    - StringView::data
    linkageType: ''
    returnType: bool
    signature: bool IsPrivateKey(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/blackboard.cpp:15,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/blackboard.cpp:15,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16
      start: 13
    functionDepth: 1
    functionLinenumber: 13
    functionLinenumberEnd: 16
    functionName: BT::IsPrivateKey
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - StringView::size
    - StringView::data
    linkageType: ''
    returnType: bool
    signature: bool IsPrivateKey(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - remapping
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 22
    functionName: BT::Blackboard::enableAutoRemapping
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Blackboard::enableAutoRemapping(bool remapping)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::getEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:26,1
    - Dst: AnyPtrLocked
      Src: /src/behaviortreecpp/src/blackboard.cpp:28,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 31
    functionName: BT::Blackboard::getAnyLocked
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - AnyPtrLocked
    - BT::Blackboard::getEntry
    linkageType: ''
    returnType: AnyPtrLocked
    signature: AnyPtrLocked Blackboard::getAnyLocked(const std::string& key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::getEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:35,1
    - Dst: AnyPtrLocked
      Src: /src/behaviortreecpp/src/blackboard.cpp:37,1
    - Dst: const_cast<std::mutex*>
      Src: /src/behaviortreecpp/src/blackboard.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 33
    functionDepth: 1
    functionLinenumber: 33
    functionLinenumberEnd: 40
    functionName: BT::Blackboard::getAnyLocked
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - AnyPtrLocked
    - const_cast<std::mutex*>
    - BT::Blackboard::getEntry
    linkageType: ''
    returnType: AnyPtrLocked
    signature: AnyPtrLocked Blackboard::getAnyLocked(const std::string& key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::getAnyLocked
      Src: /src/behaviortreecpp/src/blackboard.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: BT::Blackboard::getAny
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 11
    functionsReached:
    - BT::Blackboard::getAnyLocked
    linkageType: ''
    returnType: Any
    signature: Any * Blackboard::getAny(const std::string& key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_cast<Any*>
      Src: /src/behaviortreecpp/src/blackboard.cpp:50,1
    - Dst: BT::Blackboard::getAnyLocked
      Src: /src/behaviortreecpp/src/blackboard.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: BT::Blackboard::getAny
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 11
    functionsReached:
    - const_cast<Any*>
    - BT::Blackboard::getAnyLocked
    linkageType: ''
    returnType: Any
    signature: Any * Blackboard::getAny(const std::string& key)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: StartWith
      Src: /src/behaviortreecpp/src/blackboard.cpp:57,1
    - Dst: rootBlackboard
      Src: /src/behaviortreecpp/src/blackboard.cpp:59,1
    - Dst: substr
      Src: /src/behaviortreecpp/src/blackboard.cpp:59,1
    - Dst: size
      Src: /src/behaviortreecpp/src/blackboard.cpp:59,1
    - Dst: find
      Src: /src/behaviortreecpp/src/blackboard.cpp:64,1
    - Dst: end
      Src: /src/behaviortreecpp/src/blackboard.cpp:65,1
    - Dst: lock
      Src: /src/behaviortreecpp/src/blackboard.cpp:71,1
    - Dst: find
      Src: /src/behaviortreecpp/src/blackboard.cpp:73,1
    - Dst: cend
      Src: /src/behaviortreecpp/src/blackboard.cpp:74,1
    - Dst: auto::getEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:77,1
    - Dst: IsPrivateKey
      Src: /src/behaviortreecpp/src/blackboard.cpp:79,1
    - Dst: auto::getEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:81,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 85
    functionName: BT::Blackboard::getEntry
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 2
    functionsReached:
    - find
    - rootBlackboard
    - IsPrivateKey
    - substr
    - size
    - cend
    - auto::getEntry
    - lock
    - StartWith
    - end
    linkageType: ''
    returnType: std::shared_ptr<Blackboard::Entry>
    signature: std::shared_ptr<Blackboard::Entry> Blackboard::getEntry(const std::string&
      key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<const Blackboard&>
      Src: /src/behaviortreecpp/src/blackboard.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: BT::Blackboard::getEntry
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 2
    functionsReached:
    - static_cast<const Blackboard&>
    linkageType: ''
    returnType: std::shared_ptr<Blackboard::Entry>
    signature: std::shared_ptr<Blackboard::Entry> Blackboard::getEntry(const std::string&
      key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::getEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 2
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: BT::Blackboard::entryInfo
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::getEntry
    linkageType: ''
    returnType: TypeInfo
    signature: TypeInfo * Blackboard::entryInfo(const std::string& key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/behaviortreecpp/src/blackboard.cpp:100,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/src/blackboard.cpp:101,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/src/blackboard.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - internal
    - external
    argTypes:
    - StringView
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 102
    functionName: BT::Blackboard::addSubtreeRemapping
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - static_cast<std::string>
    - insert
    linkageType: ''
    returnType: void
    signature: void Blackboard::addSubtreeRemapping(StringView internal, StringView
      external)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: info::type
      Src: /src/behaviortreecpp/src/blackboard.cpp:111,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/blackboard.cpp:112,1
    - Dst: value::type
      Src: /src/behaviortreecpp/src/blackboard.cpp:114,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/src/blackboard.cpp:117,1
    - Dst: lock
      Src: /src/behaviortreecpp/src/blackboard.cpp:124,1
    - Dst: auto::getEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:126,1
    - Dst: auto::info::type
      Src: /src/behaviortreecpp/src/blackboard.cpp:128,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/blackboard.cpp:129,1
    - Dst: auto::value::type
      Src: /src/behaviortreecpp/src/blackboard.cpp:131,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/src/blackboard.cpp:133,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 138
    functionName: BT::Blackboard::debugMessage
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - BT::demangle
    - typeid
    - auto::value::type
    - value::type
    - auto::info::type
    - info::type
    - auto::getEntry
    - lock
    linkageType: ''
    returnType: void
    signature: void Blackboard::debugMessage() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/blackboard.cpp:145,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/blackboard.cpp:150,1
    - Dst: size
      Src: /src/behaviortreecpp/src/blackboard.cpp:150,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/blackboard.cpp:153,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 156
    functionName: BT::Blackboard::getKeys
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::vector::push_back
    - size
    - std::vector::reserve
    linkageType: ''
    returnType: std::vector<StringView>
    signature: std::vector<StringView> Blackboard::getKeys() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::clear
      Src: /src/behaviortreecpp/src/blackboard.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 162
    functionName: BT::Blackboard::clear
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 1
    functionsReached:
    - BT::Blackboard::clear
    linkageType: ''
    returnType: void
    signature: void Blackboard::clear()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StartWith
      Src: /src/behaviortreecpp/src/blackboard.cpp:166,1
    - Dst: find
      Src: /src/behaviortreecpp/src/blackboard.cpp:168,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/blackboard.cpp:170,1
    - Dst: rootBlackboard
      Src: /src/behaviortreecpp/src/blackboard.cpp:172,1
    - Dst: substr
      Src: /src/behaviortreecpp/src/blackboard.cpp:172,1
    - Dst: size
      Src: /src/behaviortreecpp/src/blackboard.cpp:172,1
    - Dst: BT::Blackboard::createEntryImpl
      Src: /src/behaviortreecpp/src/blackboard.cpp:176,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ' key'
    - ' info'
    argTypes:
    - std::string
    - TypeInfo
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 164
    functionDepth: 1
    functionLinenumber: 164
    functionLinenumberEnd: 178
    functionName: BT::Blackboard::createEntry
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - find
    - rootBlackboard
    - substr
    - LogicError
    - size
    - StartWith
    - BT::Blackboard::createEntryImpl
    linkageType: ''
    returnType: void
    signature: void Blackboard::createEntry(const std::string& key, const TypeInfo&
      info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::lock
      Src: /src/behaviortreecpp/src/blackboard.cpp:203,1
    - Dst: std::unordered_set::insert
      Src: /src/behaviortreecpp/src/blackboard.cpp:208,1
    - Dst: std::unordered_set::erase
      Src: /src/behaviortreecpp/src/blackboard.cpp:213,1
    - Dst: storage_::find
      Src: /src/behaviortreecpp/src/blackboard.cpp:214,1
    - Dst: storage_::end
      Src: /src/behaviortreecpp/src/blackboard.cpp:215,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/blackboard.cpp:217,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/blackboard.cpp:221,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/blackboard.cpp:227,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/src/blackboard.cpp:245,1
    - Dst: std::make_shared<Entry>
      Src: /src/behaviortreecpp/src/blackboard.cpp:251,1
    - Dst: std::vector::emplace_back
      Src: /src/behaviortreecpp/src/blackboard.cpp:254,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/blackboard.cpp:254,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/src/blackboard.cpp:259,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/src/blackboard.cpp:259,1
    - Dst: storage_::try_emplace
      Src: /src/behaviortreecpp/src/blackboard.cpp:264,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/blackboard.cpp:264,1
    - Dst: storage_::erase
      Src: /src/behaviortreecpp/src/blackboard.cpp:268,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 1
    argNames:
    - ' dst'
    argTypes:
    - Blackboard
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 271
    functionName: BT::Blackboard::cloneInto
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - std::lock
    - std::make_shared<Entry>
    - std::vector::emplace_back
    - std::move
    - std::vector::push_back
    - std::chrono::steady_clock::now
    - std::unordered_set::insert
    - storage_::erase
    - storage_::end
    - std::vector::empty
    - std::unordered_set::erase
    - storage_::try_emplace
    - storage_::find
    linkageType: ''
    returnType: void
    signature: void Blackboard::cloneInto(Blackboard& dst) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: lock
      Src: /src/behaviortreecpp/src/blackboard.cpp:275,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 280
    functionName: BT::Blackboard::parent
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - lock
    linkageType: ''
    returnType: Blackboard::Ptr
    signature: Blackboard::Ptr Blackboard::parent()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/behaviortreecpp/src/blackboard.cpp:290,1
    - Dst: end
      Src: /src/behaviortreecpp/src/blackboard.cpp:291,1
    - Dst: type
      Src: /src/behaviortreecpp/src/blackboard.cpp:294,1
    - Dst: type
      Src: /src/behaviortreecpp/src/blackboard.cpp:294,1
    - Dst: isStronglyTyped
      Src: /src/behaviortreecpp/src/blackboard.cpp:294,1
    - Dst: isStronglyTyped
      Src: /src/behaviortreecpp/src/blackboard.cpp:295,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/blackboard.cpp:297,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/src/blackboard.cpp:300,1
    - Dst: type
      Src: /src/behaviortreecpp/src/blackboard.cpp:300,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/src/blackboard.cpp:301,1
    - Dst: type
      Src: /src/behaviortreecpp/src/blackboard.cpp:301,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/blackboard.cpp:303,1
    - Dst: find
      Src: /src/behaviortreecpp/src/blackboard.cpp:309,1
    - Dst: end
      Src: /src/behaviortreecpp/src/blackboard.cpp:310,1
    - Dst: lock
      Src: /src/behaviortreecpp/src/blackboard.cpp:313,1
    - Dst: auto::createEntryImpl
      Src: /src/behaviortreecpp/src/blackboard.cpp:315,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/blackboard.cpp:317,1
    - Dst: IsPrivateKey
      Src: /src/behaviortreecpp/src/blackboard.cpp:320,1
    - Dst: lock
      Src: /src/behaviortreecpp/src/blackboard.cpp:322,1
    - Dst: auto::createEntryImpl
      Src: /src/behaviortreecpp/src/blackboard.cpp:324,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/blackboard.cpp:326,1
    - Dst: std::make_shared<Entry>
      Src: /src/behaviortreecpp/src/blackboard.cpp:330,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/blackboard.cpp:332,1
    - Dst: type
      Src: /src/behaviortreecpp/src/blackboard.cpp:332,1
    - Dst: insert
      Src: /src/behaviortreecpp/src/blackboard.cpp:333,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 22
    argCount: 2
    argNames:
    - ' key'
    - ' info'
    argTypes:
    - std::string
    - TypeInfo
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 335
    functionName: BT::Blackboard::createEntryImpl
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 1
    functionsReached:
    - std::make_shared<Entry>
    - isStronglyTyped
    - find
    - BT::demangle
    - IsPrivateKey
    - LogicError
    - auto::createEntryImpl
    - Any
    - StrCat
    - lock
    - RuntimeError
    - end
    - insert
    - type
    linkageType: ''
    returnType: std::shared_ptr<Blackboard::Entry>
    signature: "std::shared_ptr<Blackboard::Entry> Blackboard::createEntryImpl(const
      std::string& key,\n                                                               const
      TypeInfo& info)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getKeys
      Src: /src/behaviortreecpp/src/blackboard.cpp:340,1
    - Dst: getAnyLocked
      Src: /src/behaviortreecpp/src/blackboard.cpp:343,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/src/blackboard.cpp:345,1
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/src/blackboard.cpp:347,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ' blackboard'
    argTypes:
    - Blackboard
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 337
    functionDepth: 0
    functionLinenumber: 337
    functionLinenumberEnd: 352
    functionName: BT::ExportBlackboardToJSON
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - auto::get
    - BT::Blackboard::get
    - getAnyLocked
    - getKeys
    linkageType: ''
    returnType: nlohmann::json
    signature: nlohmann::json ExportBlackboardToJSON(const Blackboard& blackboard)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/src/blackboard.cpp:356,1
    - Dst: end
      Src: /src/behaviortreecpp/src/blackboard.cpp:356,1
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/src/blackboard.cpp:358,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/blackboard.cpp:358,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:360,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/src/blackboard.cpp:360,1
    - Dst: createEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:363,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/src/blackboard.cpp:363,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:364,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/src/blackboard.cpp:364,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' json'
    - ' blackboard'
    argTypes:
    - nlohmann::json
    - Blackboard
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 354
    functionDepth: 1
    functionLinenumber: 354
    functionLinenumberEnd: 371
    functionName: BT::ImportBlackboardFromJSON
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - createEntry
    - begin
    - auto::value
    - end
    - auto::key
    - getEntry
    - BT::Blackboard::get
    linkageType: ''
    returnType: void
    signature: void ImportBlackboardFromJSON(const nlohmann::json& json, Blackboard&
      blackboard)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<const Blackboard&>
      Src: /src/behaviortreecpp/src/blackboard.cpp:375,1
    - Dst: const_cast<Blackboard*>
      Src: /src/behaviortreecpp/src/blackboard.cpp:377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 373
    functionDepth: 0
    functionLinenumber: 373
    functionLinenumberEnd: 378
    functionName: '* BT::Blackboard::rootBlackboard()'
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - static_cast<const Blackboard&>
    - const_cast<Blackboard*>
    linkageType: ''
    returnType: Blackboard
    signature: Blackboard * BT::Blackboard::rootBlackboard()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lock
      Src: /src/behaviortreecpp/src/blackboard.cpp:383,1
    - Dst: Blackboard::Ptr::get
      Src: /src/behaviortreecpp/src/blackboard.cpp:386,1
    - Dst: Blackboard*::parent_bb_::lock
      Src: /src/behaviortreecpp/src/blackboard.cpp:387,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 380
    functionDepth: 0
    functionLinenumber: 380
    functionLinenumberEnd: 390
    functionName: '* BT::Blackboard::rootBlackboard() const'
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - lock
    - Blackboard*::parent_bb_::lock
    - Blackboard::Ptr::get
    linkageType: ''
    returnType: Blackboard
    signature: Blackboard * BT::Blackboard::rootBlackboard() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/blackboard.cpp:15,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/blackboard.cpp:15,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16
      start: 13
    functionDepth: 1
    functionLinenumber: 13
    functionLinenumberEnd: 16
    functionName: BT::IsPrivateKey
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - StringView::size
    - StringView::data
    linkageType: ''
    returnType: bool
    signature: bool IsPrivateKey(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/blackboard.cpp:15,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/blackboard.cpp:15,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16
      start: 13
    functionDepth: 1
    functionLinenumber: 13
    functionLinenumberEnd: 16
    functionName: BT::IsPrivateKey
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - StringView::size
    - StringView::data
    linkageType: ''
    returnType: bool
    signature: bool IsPrivateKey(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - remapping
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 22
    functionName: BT::Blackboard::enableAutoRemapping
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Blackboard::enableAutoRemapping(bool remapping)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::getEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:26,1
    - Dst: AnyPtrLocked
      Src: /src/behaviortreecpp/src/blackboard.cpp:28,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 24
    functionDepth: 2
    functionLinenumber: 24
    functionLinenumberEnd: 31
    functionName: BT::Blackboard::getAnyLocked
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 2
    functionsReached:
    - AnyPtrLocked
    - BT::Blackboard::getEntry
    linkageType: ''
    returnType: AnyPtrLocked
    signature: AnyPtrLocked Blackboard::getAnyLocked(const std::string& key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::getEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:35,1
    - Dst: AnyPtrLocked
      Src: /src/behaviortreecpp/src/blackboard.cpp:37,1
    - Dst: const_cast<std::mutex*>
      Src: /src/behaviortreecpp/src/blackboard.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 33
    functionDepth: 2
    functionLinenumber: 33
    functionLinenumberEnd: 40
    functionName: BT::Blackboard::getAnyLocked
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 2
    functionsReached:
    - AnyPtrLocked
    - const_cast<std::mutex*>
    - BT::Blackboard::getEntry
    linkageType: ''
    returnType: AnyPtrLocked
    signature: AnyPtrLocked Blackboard::getAnyLocked(const std::string& key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::getAnyLocked
      Src: /src/behaviortreecpp/src/blackboard.cpp:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: BT::Blackboard::getAny
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 11
    functionsReached:
    - BT::Blackboard::getAnyLocked
    linkageType: ''
    returnType: Any
    signature: Any * Blackboard::getAny(const std::string& key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_cast<Any*>
      Src: /src/behaviortreecpp/src/blackboard.cpp:50,1
    - Dst: BT::Blackboard::getAnyLocked
      Src: /src/behaviortreecpp/src/blackboard.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 2
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: BT::Blackboard::getAny
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 11
    functionsReached:
    - const_cast<Any*>
    - BT::Blackboard::getAnyLocked
    linkageType: ''
    returnType: Any
    signature: Any * Blackboard::getAny(const std::string& key)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: StartWith
      Src: /src/behaviortreecpp/src/blackboard.cpp:57,1
    - Dst: rootBlackboard
      Src: /src/behaviortreecpp/src/blackboard.cpp:59,1
    - Dst: substr
      Src: /src/behaviortreecpp/src/blackboard.cpp:59,1
    - Dst: size
      Src: /src/behaviortreecpp/src/blackboard.cpp:59,1
    - Dst: find
      Src: /src/behaviortreecpp/src/blackboard.cpp:64,1
    - Dst: end
      Src: /src/behaviortreecpp/src/blackboard.cpp:65,1
    - Dst: lock
      Src: /src/behaviortreecpp/src/blackboard.cpp:71,1
    - Dst: find
      Src: /src/behaviortreecpp/src/blackboard.cpp:73,1
    - Dst: cend
      Src: /src/behaviortreecpp/src/blackboard.cpp:74,1
    - Dst: auto::getEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:77,1
    - Dst: IsPrivateKey
      Src: /src/behaviortreecpp/src/blackboard.cpp:79,1
    - Dst: auto::getEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:81,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 53
    functionDepth: 1
    functionLinenumber: 53
    functionLinenumberEnd: 85
    functionName: BT::Blackboard::getEntry
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 5
    functionsReached:
    - find
    - rootBlackboard
    - IsPrivateKey
    - substr
    - size
    - cend
    - auto::getEntry
    - lock
    - StartWith
    - end
    linkageType: ''
    returnType: std::shared_ptr<Blackboard::Entry>
    signature: std::shared_ptr<Blackboard::Entry> Blackboard::getEntry(const std::string&
      key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<const Blackboard&>
      Src: /src/behaviortreecpp/src/blackboard.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 90
    functionName: BT::Blackboard::getEntry
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 5
    functionsReached:
    - static_cast<const Blackboard&>
    linkageType: ''
    returnType: std::shared_ptr<Blackboard::Entry>
    signature: std::shared_ptr<Blackboard::Entry> Blackboard::getEntry(const std::string&
      key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::getEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 92
    functionDepth: 2
    functionLinenumber: 92
    functionLinenumberEnd: 96
    functionName: BT::Blackboard::entryInfo
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::getEntry
    linkageType: ''
    returnType: TypeInfo
    signature: TypeInfo * Blackboard::entryInfo(const std::string& key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/behaviortreecpp/src/blackboard.cpp:100,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/src/blackboard.cpp:101,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/src/blackboard.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - internal
    - external
    argTypes:
    - StringView
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 102
    functionName: BT::Blackboard::addSubtreeRemapping
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - static_cast<std::string>
    - insert
    linkageType: ''
    returnType: void
    signature: void Blackboard::addSubtreeRemapping(StringView internal, StringView
      external)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: info::type
      Src: /src/behaviortreecpp/src/blackboard.cpp:111,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/blackboard.cpp:112,1
    - Dst: value::type
      Src: /src/behaviortreecpp/src/blackboard.cpp:114,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/src/blackboard.cpp:117,1
    - Dst: lock
      Src: /src/behaviortreecpp/src/blackboard.cpp:124,1
    - Dst: auto::getEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:126,1
    - Dst: auto::info::type
      Src: /src/behaviortreecpp/src/blackboard.cpp:128,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/blackboard.cpp:129,1
    - Dst: auto::value::type
      Src: /src/behaviortreecpp/src/blackboard.cpp:131,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/src/blackboard.cpp:133,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 138
      start: 104
    functionDepth: 1
    functionLinenumber: 104
    functionLinenumberEnd: 138
    functionName: BT::Blackboard::debugMessage
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - BT::demangle
    - typeid
    - auto::value::type
    - value::type
    - auto::info::type
    - info::type
    - auto::getEntry
    - lock
    linkageType: ''
    returnType: void
    signature: void Blackboard::debugMessage() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/blackboard.cpp:145,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/blackboard.cpp:150,1
    - Dst: size
      Src: /src/behaviortreecpp/src/blackboard.cpp:150,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/blackboard.cpp:153,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 156
    functionName: BT::Blackboard::getKeys
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - empty
    - std::vector::push_back
    - size
    - std::vector::reserve
    linkageType: ''
    returnType: std::vector<StringView>
    signature: std::vector<StringView> Blackboard::getKeys() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::clear
      Src: /src/behaviortreecpp/src/blackboard.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 162
    functionName: BT::Blackboard::clear
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 2
    functionsReached:
    - BT::Blackboard::clear
    linkageType: ''
    returnType: void
    signature: void Blackboard::clear()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: StartWith
      Src: /src/behaviortreecpp/src/blackboard.cpp:166,1
    - Dst: find
      Src: /src/behaviortreecpp/src/blackboard.cpp:168,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/blackboard.cpp:170,1
    - Dst: rootBlackboard
      Src: /src/behaviortreecpp/src/blackboard.cpp:172,1
    - Dst: substr
      Src: /src/behaviortreecpp/src/blackboard.cpp:172,1
    - Dst: size
      Src: /src/behaviortreecpp/src/blackboard.cpp:172,1
    - Dst: BT::Blackboard::createEntryImpl
      Src: /src/behaviortreecpp/src/blackboard.cpp:176,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 2
    argNames:
    - ' key'
    - ' info'
    argTypes:
    - std::string
    - TypeInfo
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 164
    functionDepth: 2
    functionLinenumber: 164
    functionLinenumberEnd: 178
    functionName: BT::Blackboard::createEntry
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - find
    - rootBlackboard
    - substr
    - LogicError
    - size
    - StartWith
    - BT::Blackboard::createEntryImpl
    linkageType: ''
    returnType: void
    signature: void Blackboard::createEntry(const std::string& key, const TypeInfo&
      info)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::lock
      Src: /src/behaviortreecpp/src/blackboard.cpp:203,1
    - Dst: std::unordered_set::insert
      Src: /src/behaviortreecpp/src/blackboard.cpp:208,1
    - Dst: std::unordered_set::erase
      Src: /src/behaviortreecpp/src/blackboard.cpp:213,1
    - Dst: storage_::find
      Src: /src/behaviortreecpp/src/blackboard.cpp:214,1
    - Dst: storage_::end
      Src: /src/behaviortreecpp/src/blackboard.cpp:215,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/blackboard.cpp:217,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/blackboard.cpp:221,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/blackboard.cpp:227,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/src/blackboard.cpp:245,1
    - Dst: std::make_shared<Entry>
      Src: /src/behaviortreecpp/src/blackboard.cpp:251,1
    - Dst: std::vector::emplace_back
      Src: /src/behaviortreecpp/src/blackboard.cpp:254,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/blackboard.cpp:254,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/src/blackboard.cpp:259,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/src/blackboard.cpp:259,1
    - Dst: storage_::try_emplace
      Src: /src/behaviortreecpp/src/blackboard.cpp:264,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/blackboard.cpp:264,1
    - Dst: storage_::erase
      Src: /src/behaviortreecpp/src/blackboard.cpp:268,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 1
    argNames:
    - ' dst'
    argTypes:
    - Blackboard
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 271
    functionName: BT::Blackboard::cloneInto
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - std::lock
    - std::make_shared<Entry>
    - std::vector::emplace_back
    - std::move
    - std::vector::push_back
    - std::chrono::steady_clock::now
    - std::unordered_set::insert
    - storage_::erase
    - storage_::end
    - std::vector::empty
    - std::unordered_set::erase
    - storage_::try_emplace
    - storage_::find
    linkageType: ''
    returnType: void
    signature: void Blackboard::cloneInto(Blackboard& dst) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: lock
      Src: /src/behaviortreecpp/src/blackboard.cpp:275,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 280
    functionName: BT::Blackboard::parent
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - lock
    linkageType: ''
    returnType: Blackboard::Ptr
    signature: Blackboard::Ptr Blackboard::parent()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/behaviortreecpp/src/blackboard.cpp:290,1
    - Dst: end
      Src: /src/behaviortreecpp/src/blackboard.cpp:291,1
    - Dst: type
      Src: /src/behaviortreecpp/src/blackboard.cpp:294,1
    - Dst: type
      Src: /src/behaviortreecpp/src/blackboard.cpp:294,1
    - Dst: isStronglyTyped
      Src: /src/behaviortreecpp/src/blackboard.cpp:294,1
    - Dst: isStronglyTyped
      Src: /src/behaviortreecpp/src/blackboard.cpp:295,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/blackboard.cpp:297,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/src/blackboard.cpp:300,1
    - Dst: type
      Src: /src/behaviortreecpp/src/blackboard.cpp:300,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/src/blackboard.cpp:301,1
    - Dst: type
      Src: /src/behaviortreecpp/src/blackboard.cpp:301,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/blackboard.cpp:303,1
    - Dst: find
      Src: /src/behaviortreecpp/src/blackboard.cpp:309,1
    - Dst: end
      Src: /src/behaviortreecpp/src/blackboard.cpp:310,1
    - Dst: lock
      Src: /src/behaviortreecpp/src/blackboard.cpp:313,1
    - Dst: auto::createEntryImpl
      Src: /src/behaviortreecpp/src/blackboard.cpp:315,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/blackboard.cpp:317,1
    - Dst: IsPrivateKey
      Src: /src/behaviortreecpp/src/blackboard.cpp:320,1
    - Dst: lock
      Src: /src/behaviortreecpp/src/blackboard.cpp:322,1
    - Dst: auto::createEntryImpl
      Src: /src/behaviortreecpp/src/blackboard.cpp:324,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/blackboard.cpp:326,1
    - Dst: std::make_shared<Entry>
      Src: /src/behaviortreecpp/src/blackboard.cpp:330,1
    - Dst: Any
      Src: /src/behaviortreecpp/src/blackboard.cpp:332,1
    - Dst: type
      Src: /src/behaviortreecpp/src/blackboard.cpp:332,1
    - Dst: insert
      Src: /src/behaviortreecpp/src/blackboard.cpp:333,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 22
    argCount: 2
    argNames:
    - ' key'
    - ' info'
    argTypes:
    - std::string
    - TypeInfo
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 335
      start: 282
    functionDepth: 1
    functionLinenumber: 282
    functionLinenumberEnd: 335
    functionName: BT::Blackboard::createEntryImpl
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 2
    functionsReached:
    - std::make_shared<Entry>
    - isStronglyTyped
    - find
    - BT::demangle
    - IsPrivateKey
    - LogicError
    - auto::createEntryImpl
    - Any
    - StrCat
    - lock
    - RuntimeError
    - end
    - insert
    - type
    linkageType: ''
    returnType: std::shared_ptr<Blackboard::Entry>
    signature: "std::shared_ptr<Blackboard::Entry> Blackboard::createEntryImpl(const
      std::string& key,\n                                                               const
      TypeInfo& info)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getKeys
      Src: /src/behaviortreecpp/src/blackboard.cpp:340,1
    - Dst: getAnyLocked
      Src: /src/behaviortreecpp/src/blackboard.cpp:343,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/src/blackboard.cpp:345,1
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/src/blackboard.cpp:347,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ' blackboard'
    argTypes:
    - Blackboard
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 337
    functionDepth: 0
    functionLinenumber: 337
    functionLinenumberEnd: 352
    functionName: BT::ExportBlackboardToJSON
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - auto::get
    - BT::Blackboard::get
    - getAnyLocked
    - getKeys
    linkageType: ''
    returnType: nlohmann::json
    signature: nlohmann::json ExportBlackboardToJSON(const Blackboard& blackboard)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/src/blackboard.cpp:356,1
    - Dst: end
      Src: /src/behaviortreecpp/src/blackboard.cpp:356,1
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/src/blackboard.cpp:358,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/blackboard.cpp:358,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:360,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/src/blackboard.cpp:360,1
    - Dst: createEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:363,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/src/blackboard.cpp:363,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/src/blackboard.cpp:364,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/src/blackboard.cpp:364,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' json'
    - ' blackboard'
    argTypes:
    - nlohmann::json
    - Blackboard
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 354
    functionDepth: 1
    functionLinenumber: 354
    functionLinenumberEnd: 371
    functionName: BT::ImportBlackboardFromJSON
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - createEntry
    - begin
    - auto::value
    - end
    - auto::key
    - getEntry
    - BT::Blackboard::get
    linkageType: ''
    returnType: void
    signature: void ImportBlackboardFromJSON(const nlohmann::json& json, Blackboard&
      blackboard)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<const Blackboard&>
      Src: /src/behaviortreecpp/src/blackboard.cpp:375,1
    - Dst: const_cast<Blackboard*>
      Src: /src/behaviortreecpp/src/blackboard.cpp:377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 373
    functionDepth: 0
    functionLinenumber: 373
    functionLinenumberEnd: 378
    functionName: '* BT::Blackboard::rootBlackboard()'
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - static_cast<const Blackboard&>
    - const_cast<Blackboard*>
    linkageType: ''
    returnType: Blackboard
    signature: Blackboard * BT::Blackboard::rootBlackboard()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lock
      Src: /src/behaviortreecpp/src/blackboard.cpp:383,1
    - Dst: Blackboard::Ptr::get
      Src: /src/behaviortreecpp/src/blackboard.cpp:386,1
    - Dst: Blackboard*::parent_bb_::lock
      Src: /src/behaviortreecpp/src/blackboard.cpp:387,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 390
      start: 380
    functionDepth: 0
    functionLinenumber: 380
    functionLinenumberEnd: 390
    functionName: '* BT::Blackboard::rootBlackboard() const'
    functionSourceFile: /src/behaviortreecpp/src/blackboard.cpp
    functionUses: 0
    functionsReached:
    - lock
    - Blackboard*::parent_bb_::lock
    - Blackboard::Ptr::get
    linkageType: ''
    returnType: Blackboard
    signature: Blackboard * BT::Blackboard::rootBlackboard() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement*::Attribute
      Src: /src/behaviortreecpp/src/bt_factory.cpp:34,1
    - Dst: tinyxml2::XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/bt_factory.cpp:40,1
    - Dst: auto*::NextSiblingElement
      Src: /src/behaviortreecpp/src/bt_factory.cpp:41,1
    - Dst: auto*::Attribute
      Src: /src/behaviortreecpp/src/bt_factory.cpp:44,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:49,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - xml_root
    argTypes:
    - tinyxml2::XMLElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 54
    functionName: BT::detectMainTreeId
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - auto*::NextSiblingElement
    - auto*::Attribute
    - tinyxml2::XMLElement*::Attribute
    - tinyxml2::XMLElement*::FirstChildElement
    - std::string::empty
    linkageType: ''
    returnType: std::string
    signature: std::string detectMainTreeId(const tinyxml2::XMLElement* xml_root)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:65,1
    - Dst: Parser*::registeredBehaviorTrees
      Src: /src/behaviortreecpp/src/bt_factory.cpp:67,1
    - Dst: std::set::insert
      Src: /src/behaviortreecpp/src/bt_factory.cpp:68,1
    - Dst: auto::begin
      Src: /src/behaviortreecpp/src/bt_factory.cpp:68,1
    - Dst: auto::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:68,1
    - Dst: load_func
      Src: /src/behaviortreecpp/src/bt_factory.cpp:71,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:74,1
    - Dst: Parser*::registeredBehaviorTrees
      Src: /src/behaviortreecpp/src/bt_factory.cpp:76,1
    - Dst: std::set::count
      Src: /src/behaviortreecpp/src/bt_factory.cpp:81,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - parser
    - ' main_tree_ID'
    - ' load_func'
    argTypes:
    - Parser*
    - std::string
    - std::function<void()>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 93
    functionName: BT::loadXmlAndResolveTreeId
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - load_func
    - auto::end
    - auto::begin
    - std::set::count
    - Parser*::registeredBehaviorTrees
    - std::set::insert
    - empty
    linkageType: ''
    returnType: std::string
    signature: "std::string loadXmlAndResolveTreeId(Parser* parser, const std::string&
      main_tree_ID,\n                                    const std::function<void()>&
      load_func)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement*::Attribute
      Src: /src/behaviortreecpp/src/bt_factory.cpp:34,1
    - Dst: tinyxml2::XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/bt_factory.cpp:40,1
    - Dst: auto*::NextSiblingElement
      Src: /src/behaviortreecpp/src/bt_factory.cpp:41,1
    - Dst: auto*::Attribute
      Src: /src/behaviortreecpp/src/bt_factory.cpp:44,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:49,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - xml_root
    argTypes:
    - tinyxml2::XMLElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 54
    functionName: BT::detectMainTreeId
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - auto*::NextSiblingElement
    - auto*::Attribute
    - tinyxml2::XMLElement*::Attribute
    - tinyxml2::XMLElement*::FirstChildElement
    - std::string::empty
    linkageType: ''
    returnType: std::string
    signature: std::string detectMainTreeId(const tinyxml2::XMLElement* xml_root)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:65,1
    - Dst: Parser*::registeredBehaviorTrees
      Src: /src/behaviortreecpp/src/bt_factory.cpp:67,1
    - Dst: std::set::insert
      Src: /src/behaviortreecpp/src/bt_factory.cpp:68,1
    - Dst: auto::begin
      Src: /src/behaviortreecpp/src/bt_factory.cpp:68,1
    - Dst: auto::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:68,1
    - Dst: load_func
      Src: /src/behaviortreecpp/src/bt_factory.cpp:71,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:74,1
    - Dst: Parser*::registeredBehaviorTrees
      Src: /src/behaviortreecpp/src/bt_factory.cpp:76,1
    - Dst: std::set::count
      Src: /src/behaviortreecpp/src/bt_factory.cpp:81,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - parser
    - ' main_tree_ID'
    - ' load_func'
    argTypes:
    - Parser*
    - std::string
    - std::function<void()>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 93
    functionName: BT::loadXmlAndResolveTreeId
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - load_func
    - auto::end
    - auto::begin
    - std::set::count
    - Parser*::registeredBehaviorTrees
    - std::set::insert
    - empty
    linkageType: ''
    returnType: std::string
    signature: "std::string loadXmlAndResolveTreeId(Parser* parser, const std::string&
      main_tree_ID,\n                                    const std::function<void()>&
      load_func)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: wildcards_match
      Src: /src/behaviortreecpp/src/bt_factory.cpp:99,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/bt_factory.cpp:99,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/bt_factory.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' str'
    - filter
    argTypes:
    - std::string
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: BT::WildcardMatch
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - StringView::size
    - StringView::data
    - wildcards_match
    linkageType: ''
    returnType: bool
    signature: bool WildcardMatch(std::string const& str, StringView filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PImpl::PImpl
      Src: /src/behaviortreecpp/src/bt_factory.cpp:114,1
    - Dst: std::make_shared<XMLParser>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:116,1
    - Dst: std::make_shared<PolymorphicCastRegistry>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:117,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:118,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:119,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:120,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:121,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:122,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:125,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:128,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:129,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:130,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:131,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:132,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:133,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:134,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:136,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:138,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:139,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:140,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:141,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:142,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:143,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:145,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:146,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:148,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:149,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:150,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:151,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:152,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:153,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:154,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:156,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:158,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:160,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:161,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:162,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:163,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:164,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:166,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:167,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:168,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:169,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:171,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:172,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:173,1
    - Dst: builtin_IDs::insert
      Src: /src/behaviortreecpp/src/bt_factory.cpp:177,1
    - Dst: std::make_shared<std::unordered_map<std::string, int>>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:180,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 181
    functionName: BT::BehaviorTreeFactory::BehaviorTreeFactory
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 66
    functionsReached:
    - std::make_shared<XMLParser>
    - std::make_shared<PolymorphicCastRegistry>
    - BT::BehaviorTreeFactory::registerNodeType
    - std::make_shared<std::unordered_map<std::string, int>>
    - builtin_IDs::insert
    - PImpl::PImpl
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::BehaviorTreeFactory()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 183
    functionName: BehaviorTreeFactory::~BehaviorTreeFactory()
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::~BehaviorTreeFactory()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - BehaviorTreeFactory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 185
    functionName: BT::BehaviorTreeFactory::BehaviorTreeFactory
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 66
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::BehaviorTreeFactory(BehaviorTreeFactory&&
      other) noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: builtinNodes
      Src: /src/behaviortreecpp/src/bt_factory.cpp:191,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:193,1
    - Dst: builders::find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:195,1
    - Dst: builders::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:196,1
    - Dst: builders::erase
      Src: /src/behaviortreecpp/src/bt_factory.cpp:200,1
    - Dst: manifests::erase
      Src: /src/behaviortreecpp/src/bt_factory.cpp:201,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ' ID'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 203
    functionName: BT::BehaviorTreeFactory::unregisterBuilder
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - builders::erase
    - builders::find
    - LogicError
    - manifests::erase
    - builtinNodes
    - builders::end
    linkageType: ''
    returnType: bool
    signature: bool BehaviorTreeFactory::unregisterBuilder(const std::string& ID)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: builders::find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:208,1
    - Dst: builders::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:209,1
    - Dst: BehaviorTreeException
      Src: /src/behaviortreecpp/src/bt_factory.cpp:211,1
    - Dst: builders::insert
      Src: /src/behaviortreecpp/src/bt_factory.cpp:214,1
    - Dst: manifests::insert
      Src: /src/behaviortreecpp/src/bt_factory.cpp:215,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ' manifest'
    - ' builder'
    argTypes:
    - TreeNodeManifest
    - NodeBuilder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 205
    functionDepth: 1
    functionLinenumber: 205
    functionLinenumberEnd: 216
    functionName: BT::BehaviorTreeFactory::registerBuilder
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 1
    functionsReached:
    - builders::find
    - builders::insert
    - manifests::insert
    - builders::end
    - BehaviorTreeException
    linkageType: ''
    returnType: void
    signature: "void BehaviorTreeFactory::registerBuilder(const TreeNodeManifest&
      manifest,\n                                          const NodeBuilder& builder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<SimpleConditionNode>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:224,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/bt_factory.cpp:227,1
    - Dst: BT::BehaviorTreeFactory::registerBuilder
      Src: /src/behaviortreecpp/src/bt_factory.cpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' ID'
    - ' tick_functor'
    - ports
    argTypes:
    - std::string
    - SimpleConditionNode::TickFunctor
    - PortsList
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 229
    functionName: BT::BehaviorTreeFactory::registerSimpleCondition
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 3
    functionsReached:
    - BT::BehaviorTreeFactory::registerBuilder
    - std::make_unique<SimpleConditionNode>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BehaviorTreeFactory::registerSimpleCondition(\n    const std::string&
      ID, const SimpleConditionNode::TickFunctor& tick_functor,\n    PortsList ports)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<SimpleActionNode>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:237,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/bt_factory.cpp:240,1
    - Dst: BT::BehaviorTreeFactory::registerBuilder
      Src: /src/behaviortreecpp/src/bt_factory.cpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' ID'
    - ' tick_functor'
    - ports
    argTypes:
    - std::string
    - SimpleActionNode::TickFunctor
    - PortsList
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 242
    functionName: BT::BehaviorTreeFactory::registerSimpleAction
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 7
    functionsReached:
    - std::make_unique<SimpleActionNode>
    - BT::BehaviorTreeFactory::registerBuilder
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BehaviorTreeFactory::registerSimpleAction(\n    const std::string&
      ID, const SimpleActionNode::TickFunctor& tick_functor,\n    PortsList ports)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<SimpleDecoratorNode>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:250,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/bt_factory.cpp:253,1
    - Dst: BT::BehaviorTreeFactory::registerBuilder
      Src: /src/behaviortreecpp/src/bt_factory.cpp:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' ID'
    - ' tick_functor'
    - ports
    argTypes:
    - std::string
    - SimpleDecoratorNode::TickFunctor
    - PortsList
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 255
    functionName: BT::BehaviorTreeFactory::registerSimpleDecorator
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<SimpleDecoratorNode>
    - BT::BehaviorTreeFactory::registerBuilder
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BehaviorTreeFactory::registerSimpleDecorator(\n    const std::string&
      ID, const SimpleDecoratorNode::TickFunctor& tick_functor,\n    PortsList ports)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::SharedLibrary::SharedLibrary
      Src: /src/behaviortreecpp/src/bt_factory.cpp:259,1
    - Dst: BT::SharedLibrary::load
      Src: /src/behaviortreecpp/src/bt_factory.cpp:260,1
    - Dst: BT::SharedLibrary::hasSymbol
      Src: /src/behaviortreecpp/src/bt_factory.cpp:263,1
    - Dst: reinterpret_cast<Func>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:266,1
    - Dst: BT::SharedLibrary::getSymbol
      Src: /src/behaviortreecpp/src/bt_factory.cpp:266,1
    - Dst: func
      Src: /src/behaviortreecpp/src/bt_factory.cpp:267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' file_path'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 274
    functionName: BT::BehaviorTreeFactory::registerFromPlugin
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 2
    functionsReached:
    - BT::SharedLibrary::hasSymbol
    - func
    - BT::SharedLibrary::getSymbol
    - reinterpret_cast<Func>
    - BT::SharedLibrary::load
    - BT::SharedLibrary::SharedLibrary
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::registerFromPlugin(const std::string& file_path)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:279,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 282
    functionName: BT::BehaviorTreeFactory::registerFromROSPlugins
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::registerFromROSPlugins()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parser::loadFromFile
      Src: /src/behaviortreecpp/src/bt_factory.cpp:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' filename'
    argTypes:
    - std::filesystem::path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 288
    functionName: BT::BehaviorTreeFactory::registerBehaviorTreeFromFile
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - parser::loadFromFile
    linkageType: ''
    returnType: void
    signature: "void BehaviorTreeFactory::registerBehaviorTreeFromFile(\n    const
      std::filesystem::path& filename)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parser::loadFromText
      Src: /src/behaviortreecpp/src/bt_factory.cpp:292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' xml_text'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 293
    functionName: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 14
    functionsReached:
    - parser::loadFromText
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::registerBehaviorTreeFromText(const std::string&
      xml_text)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parser::registeredBehaviorTrees
      Src: /src/behaviortreecpp/src/bt_factory.cpp:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 298
    functionName: BT::BehaviorTreeFactory::registeredBehaviorTrees
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - parser::registeredBehaviorTrees
    linkageType: ''
    returnType: std::vector<std::string>
    signature: std::vector<std::string> BehaviorTreeFactory::registeredBehaviorTrees()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parser::clearInternalState
      Src: /src/behaviortreecpp/src/bt_factory.cpp:302,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 300
    functionDepth: 0
    functionLinenumber: 300
    functionLinenumberEnd: 303
    functionName: BT::BehaviorTreeFactory::clearRegisteredBehaviorTrees
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - parser::clearInternalState
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::clearRegisteredBehaviorTrees()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:315,1
    - Dst: manifests::find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:318,1
    - Dst: manifests::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:319,1
    - Dst: idNotFound
      Src: /src/behaviortreecpp/src/bt_factory.cpp:321,1
    - Dst: wildcards_match
      Src: /src/behaviortreecpp/src/bt_factory.cpp:329,1
    - Dst: std::get_if<std::string>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:333,1
    - Dst: builders::find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:335,1
    - Dst: builders::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:336,1
    - Dst: builder
      Src: /src/behaviortreecpp/src/bt_factory.cpp:339,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:343,1
    - Dst: std::get_if<TestNodeConfig>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:349,1
    - Dst: std::make_unique<TestNode>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:351,1
    - Dst: std::make_shared<TestNodeConfig>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:352,1
    - Dst: std::get_if<std::shared_ptr<TestNodeConfig>>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:358,1
    - Dst: std::make_unique<TestNode>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:360,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:364,1
    - Dst: builders::find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:371,1
    - Dst: builders::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:372,1
    - Dst: idNotFound
      Src: /src/behaviortreecpp/src/bt_factory.cpp:374,1
    - Dst: builder
      Src: /src/behaviortreecpp/src/bt_factory.cpp:377,1
    - Dst: std::unique_ptr::setRegistrationID
      Src: /src/behaviortreecpp/src/bt_factory.cpp:380,1
    - Dst: std::unique_ptr::config
      Src: /src/behaviortreecpp/src/bt_factory.cpp:381,1
    - Dst: ParseScript
      Src: /src/behaviortreecpp/src/bt_factory.cpp:386,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/bt_factory.cpp:388,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:392,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/src/bt_factory.cpp:392,1
    - Dst: AssignConditions
      Src: /src/behaviortreecpp/src/bt_factory.cpp:396,1
    - Dst: std::unique_ptr::preConditionsScripts
      Src: /src/behaviortreecpp/src/bt_factory.cpp:396,1
    - Dst: AssignConditions
      Src: /src/behaviortreecpp/src/bt_factory.cpp:397,1
    - Dst: std::unique_ptr::postConditionsScripts
      Src: /src/behaviortreecpp/src/bt_factory.cpp:397,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 50
    argCount: 3
    argNames:
    - ' name'
    - ' ID'
    - ' config'
    argTypes:
    - std::string
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 306
    functionDepth: 1
    functionLinenumber: 306
    functionLinenumberEnd: 400
    functionName: BT::BehaviorTreeFactory::instantiateTreeNode
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr::setRegistrationID
    - wildcards_match
    - std::make_shared<TestNodeConfig>
    - manifests::end
    - std::get_if<std::string>
    - std::make_unique<TestNode>
    - AssignConditions
    - idNotFound
    - ParseScript
    - std::unique_ptr::preConditionsScripts
    - std::get_if<std::shared_ptr<TestNodeConfig>>
    - manifests::find
    - RuntimeError
    - builder
    - std::unique_ptr::config
    - std::get_if<TestNodeConfig>
    - auto::value
    - builders::find
    - auto::error
    - LogicError
    - std::unique_ptr::postConditionsScripts
    - builders::end
    linkageType: ''
    returnType: std::unique_ptr<TreeNode>
    signature: "std::unique_ptr<TreeNode> BehaviorTreeFactory::instantiateTreeNode(\n
      \   const std::string& name, const std::string& ID, const NodeConfig& config)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 405
    functionName: '& BehaviorTreeFactory::builders() const'
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::unordered_map<std::string, NodeBuilder>
    signature: std::unordered_map<std::string, NodeBuilder> & BehaviorTreeFactory::builders()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 407
    functionDepth: 0
    functionLinenumber: 407
    functionLinenumberEnd: 411
    functionName: '&

      BehaviorTreeFactory::manifests() const'
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::unordered_map<std::string, TreeNodeManifest>
    signature: 'std::unordered_map<std::string, TreeNodeManifest> &

      BehaviorTreeFactory::manifests() const'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 413
    functionDepth: 0
    functionLinenumber: 413
    functionLinenumberEnd: 416
    functionName: '& BehaviorTreeFactory::builtinNodes() const'
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::set<std::string>
    signature: std::set<std::string> & BehaviorTreeFactory::builtinNodes() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::XMLDocument
      Src: /src/behaviortreecpp/src/bt_factory.cpp:422,1
    - Dst: tinyxml2::XMLDocument::Parse
      Src: /src/behaviortreecpp/src/bt_factory.cpp:423,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/bt_factory.cpp:423,1
    - Dst: size
      Src: /src/behaviortreecpp/src/bt_factory.cpp:423,1
    - Dst: tinyxml2::XMLDocument::RootElement
      Src: /src/behaviortreecpp/src/bt_factory.cpp:425,1
    - Dst: detectMainTreeId
      Src: /src/behaviortreecpp/src/bt_factory.cpp:427,1
    - Dst: loadXmlAndResolveTreeId
      Src: /src/behaviortreecpp/src/bt_factory.cpp:430,1
    - Dst: parser::get
      Src: /src/behaviortreecpp/src/bt_factory.cpp:431,1
    - Dst: parser::loadFromText
      Src: /src/behaviortreecpp/src/bt_factory.cpp:431,1
    - Dst: Blackboard::Ptr::setPolymorphicCastRegistry
      Src: /src/behaviortreecpp/src/bt_factory.cpp:434,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:436,1
    - Dst: parser::instantiateTree
      Src: /src/behaviortreecpp/src/bt_factory.cpp:436,1
    - Dst: parser::instantiateTree
      Src: /src/behaviortreecpp/src/bt_factory.cpp:437,1
    - Dst: BT::BehaviorTreeFactory::manifests
      Src: /src/behaviortreecpp/src/bt_factory.cpp:438,1
    - Dst: Tree::remapManifestPointers
      Src: /src/behaviortreecpp/src/bt_factory.cpp:439,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' text'
    - blackboard
    argTypes:
    - std::string
    - Blackboard::Ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 418
    functionDepth: 1
    functionLinenumber: 418
    functionLinenumberEnd: 441
    functionName: BT::BehaviorTreeFactory::createTreeFromText
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 46
    functionsReached:
    - parser::get
    - std::string::empty
    - tinyxml2::XMLDocument::XMLDocument
    - Blackboard::Ptr::setPolymorphicCastRegistry
    - detectMainTreeId
    - tinyxml2::XMLDocument::RootElement
    - parser::loadFromText
    - tinyxml2::XMLDocument::Parse
    - size
    - parser::instantiateTree
    - Tree::remapManifestPointers
    - BT::BehaviorTreeFactory::manifests
    - c_str
    - loadXmlAndResolveTreeId
    linkageType: ''
    returnType: Tree
    signature: "Tree BehaviorTreeFactory::createTreeFromText(const std::string& text,\n
      \                                            Blackboard::Ptr blackboard)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::XMLDocument
      Src: /src/behaviortreecpp/src/bt_factory.cpp:447,1
    - Dst: tinyxml2::XMLDocument::LoadFile
      Src: /src/behaviortreecpp/src/bt_factory.cpp:448,1
    - Dst: string
      Src: /src/behaviortreecpp/src/bt_factory.cpp:448,1
    - Dst: tinyxml2::XMLDocument::RootElement
      Src: /src/behaviortreecpp/src/bt_factory.cpp:450,1
    - Dst: detectMainTreeId
      Src: /src/behaviortreecpp/src/bt_factory.cpp:452,1
    - Dst: loadXmlAndResolveTreeId
      Src: /src/behaviortreecpp/src/bt_factory.cpp:455,1
    - Dst: parser::get
      Src: /src/behaviortreecpp/src/bt_factory.cpp:456,1
    - Dst: parser::loadFromFile
      Src: /src/behaviortreecpp/src/bt_factory.cpp:456,1
    - Dst: Blackboard::Ptr::setPolymorphicCastRegistry
      Src: /src/behaviortreecpp/src/bt_factory.cpp:459,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:461,1
    - Dst: parser::instantiateTree
      Src: /src/behaviortreecpp/src/bt_factory.cpp:461,1
    - Dst: parser::instantiateTree
      Src: /src/behaviortreecpp/src/bt_factory.cpp:462,1
    - Dst: BT::BehaviorTreeFactory::manifests
      Src: /src/behaviortreecpp/src/bt_factory.cpp:463,1
    - Dst: Tree::remapManifestPointers
      Src: /src/behaviortreecpp/src/bt_factory.cpp:464,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' file_path'
    - blackboard
    argTypes:
    - std::filesystem::path
    - Blackboard::Ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 466
    functionName: BT::BehaviorTreeFactory::createTreeFromFile
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - parser::get
    - parser::loadFromFile
    - tinyxml2::XMLDocument::XMLDocument
    - Blackboard::Ptr::setPolymorphicCastRegistry
    - detectMainTreeId
    - string
    - tinyxml2::XMLDocument::RootElement
    - parser::instantiateTree
    - Tree::remapManifestPointers
    - BT::BehaviorTreeFactory::manifests
    - tinyxml2::XMLDocument::LoadFile
    - std::string::empty
    - loadXmlAndResolveTreeId
    linkageType: ''
    returnType: Tree
    signature: "Tree BehaviorTreeFactory::createTreeFromFile(const std::filesystem::path&
      file_path,\n                                             Blackboard::Ptr blackboard)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Blackboard::Ptr::setPolymorphicCastRegistry
      Src: /src/behaviortreecpp/src/bt_factory.cpp:472,1
    - Dst: parser::instantiateTree
      Src: /src/behaviortreecpp/src/bt_factory.cpp:474,1
    - Dst: BT::BehaviorTreeFactory::manifests
      Src: /src/behaviortreecpp/src/bt_factory.cpp:475,1
    - Dst: auto::remapManifestPointers
      Src: /src/behaviortreecpp/src/bt_factory.cpp:476,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' tree_name'
    - blackboard
    argTypes:
    - std::string
    - Blackboard::Ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 468
    functionDepth: 0
    functionLinenumber: 468
    functionLinenumberEnd: 478
    functionName: BT::BehaviorTreeFactory::createTree
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 14
    functionsReached:
    - parser::instantiateTree
    - BT::BehaviorTreeFactory::manifests
    - Blackboard::Ptr::setPolymorphicCastRegistry
    - auto::remapManifestPointers
    linkageType: ''
    returnType: Tree
    signature: "Tree BehaviorTreeFactory::createTree(const std::string& tree_name,\n
      \                                    Blackboard::Ptr blackboard)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: manifests::find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:483,1
    - Dst: manifests::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:484,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/src/bt_factory.cpp:486,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ' node_id'
    - ' metadata'
    argTypes:
    - std::string
    - KeyValueVector
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 480
    functionDepth: 1
    functionLinenumber: 480
    functionLinenumberEnd: 489
    functionName: BT::BehaviorTreeFactory::addMetadataToManifest
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - manifests::end
    - manifests::find
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: "void BehaviorTreeFactory::addMetadataToManifest(const std::string&
      node_id,\n                                                const KeyValueVector&
      metadata)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: string
      Src: /src/behaviortreecpp/src/bt_factory.cpp:493,1
    - Dst: scripting_enums::find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:494,1
    - Dst: scripting_enums::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:495,1
    - Dst: scripting_enums::insert
      Src: /src/behaviortreecpp/src/bt_factory.cpp:497,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:503,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/bt_factory.cpp:504,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/bt_factory.cpp:505,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/bt_factory.cpp:505,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - StringView
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 491
    functionDepth: 1
    functionLinenumber: 491
    functionLinenumberEnd: 508
    functionName: BT::BehaviorTreeFactory::registerScriptingEnum
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 1
    functionsReached:
    - scripting_enums::end
    - string
    - LogicError
    - scripting_enums::find
    - to_string
    - StrCat
    - scripting_enums::insert
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::registerScriptingEnum(StringView name, int
      value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: substitution_rules::clear
      Src: /src/behaviortreecpp/src/bt_factory.cpp:512,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 510
    functionDepth: 1
    functionLinenumber: 510
    functionLinenumberEnd: 513
    functionName: BT::BehaviorTreeFactory::clearSubstitutionRules
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - substitution_rules::clear
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::clearSubstitutionRules()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string
      Src: /src/behaviortreecpp/src/bt_factory.cpp:517,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/bt_factory.cpp:517,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - filter
    - rule
    argTypes:
    - StringView
    - SubstitutionRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 515
    functionDepth: 1
    functionLinenumber: 515
    functionLinenumberEnd: 518
    functionName: BT::BehaviorTreeFactory::addSubstitutionRule
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - string
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::addSubstitutionRule(StringView filter, SubstitutionRule
      rule)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/bt_factory.cpp:522,1
    - Dst: auto::contains
      Src: /src/behaviortreecpp/src/bt_factory.cpp:528,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/src/bt_factory.cpp:530,1
    - Dst: auto::items
      Src: /src/behaviortreecpp/src/bt_factory.cpp:531,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/bt_factory.cpp:536,1
    - Dst: at
      Src: /src/behaviortreecpp/src/bt_factory.cpp:538,1
    - Dst: convertFromString<NodeStatus>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:539,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/bt_factory.cpp:542,1
    - Dst: get
      Src: /src/behaviortreecpp/src/bt_factory.cpp:545,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/bt_factory.cpp:547,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/bt_factory.cpp:550,1
    - Dst: get
      Src: /src/behaviortreecpp/src/bt_factory.cpp:550,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/bt_factory.cpp:552,1
    - Dst: get
      Src: /src/behaviortreecpp/src/bt_factory.cpp:554,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/bt_factory.cpp:556,1
    - Dst: get
      Src: /src/behaviortreecpp/src/bt_factory.cpp:558,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/bt_factory.cpp:560,1
    - Dst: get
      Src: /src/behaviortreecpp/src/bt_factory.cpp:562,1
    - Dst: return_status_script::empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:565,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:567,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/src/bt_factory.cpp:573,1
    - Dst: auto::items
      Src: /src/behaviortreecpp/src/bt_factory.cpp:574,1
    - Dst: get
      Src: /src/behaviortreecpp/src/bt_factory.cpp:576,1
    - Dst: std::unordered_map::find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:577,1
    - Dst: std::unordered_map::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:578,1
    - Dst: BT::BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/src/bt_factory.cpp:580,1
    - Dst: BT::BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/src/bt_factory.cpp:584,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 1
    argNames:
    - ' json_text'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 520
    functionDepth: 2
    functionLinenumber: 520
    functionLinenumberEnd: 587
    functionName: BT::BehaviorTreeFactory::loadSubstitutionRuleFromJSON
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - get
    - auto::at
    - std::chrono::milliseconds
    - BT::BehaviorTreeFactory::addSubstitutionRule
    - auto::contains
    - auto::items
    - convertFromString<NodeStatus>
    - std::unordered_map::end
    - std::unordered_map::find
    - RuntimeError
    - return_status_script::empty
    - at
    - contains
    - parser::parse
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::loadSubstitutionRuleFromJSON(const std::string&
      json_text)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 589
    functionDepth: 0
    functionLinenumber: 589
    functionLinenumberEnd: 593
    functionName: '&

      BehaviorTreeFactory::substitutionRules() const'
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::unordered_map<std::string, BehaviorTreeFactory::SubstitutionRule>
    signature: 'std::unordered_map<std::string, BehaviorTreeFactory::SubstitutionRule>
      &

      BehaviorTreeFactory::substitutionRules() const'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 595
    functionDepth: 0
    functionLinenumber: 595
    functionLinenumberEnd: 598
    functionName: '& BehaviorTreeFactory::polymorphicCastRegistry()'
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PolymorphicCastRegistry
    signature: PolymorphicCastRegistry & BehaviorTreeFactory::polymorphicCastRegistry()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 600
    functionDepth: 0
    functionLinenumber: 600
    functionLinenumberEnd: 603
    functionName: '& BehaviorTreeFactory::polymorphicCastRegistry() const'
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PolymorphicCastRegistry
    signature: PolymorphicCastRegistry & BehaviorTreeFactory::polymorphicCastRegistry()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 605
    functionDepth: 0
    functionLinenumber: 605
    functionLinenumberEnd: 609
    functionName: BT::BehaviorTreeFactory::polymorphicCastRegistryPtr
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::shared_ptr<PolymorphicCastRegistry>
    signature: std::shared_ptr<PolymorphicCastRegistry> BehaviorTreeFactory::polymorphicCastRegistryPtr()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 611
    functionDepth: 0
    functionLinenumber: 611
    functionLinenumberEnd: 611
    functionName: BT::Tree::Tree
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Tree::Tree()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/src/bt_factory.cpp:619,1
    - Dst: find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:622,1
    - Dst: end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:623,1
    - Dst: config
      Src: /src/behaviortreecpp/src/bt_factory.cpp:625,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 630
      start: 613
    functionDepth: 1
    functionLinenumber: 613
    functionLinenumberEnd: 630
    functionName: BT::Tree::remapManifestPointers
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - config
    - find
    - end
    linkageType: ''
    returnType: void
    signature: void Tree::remapManifestPointers()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<WakeUpSignal>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:634,1
    - Dst: setWakeUpInstance
      Src: /src/behaviortreecpp/src/bt_factory.cpp:639,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 632
    functionDepth: 0
    functionLinenumber: 632
    functionLinenumberEnd: 642
    functionName: BT::Tree::initialize
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<WakeUpSignal>
    - setWakeUpInstance
    linkageType: ''
    returnType: void
    signature: void Tree::initialize()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:647,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:653,1
    - Dst: haltNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:656,1
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/bt_factory.cpp:657,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:657,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:659,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 645
    functionDepth: 2
    functionLinenumber: 645
    functionLinenumberEnd: 660
    functionName: BT::Tree::haltTree
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - haltNode
    - BT::applyRecursiveVisitor
    - BT::Tree::rootNode
    linkageType: ''
    returnType: void
    signature: void Tree::haltTree()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:664,1
    - Dst: front
      Src: /src/behaviortreecpp/src/bt_factory.cpp:668,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:669,1
    - Dst: front
      Src: /src/behaviortreecpp/src/bt_factory.cpp:669,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 662
    functionDepth: 1
    functionLinenumber: 662
    functionLinenumberEnd: 670
    functionName: BT::Tree::rootNode
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 1
    functionsReached:
    - empty
    - front
    linkageType: ''
    returnType: TreeNode
    signature: TreeNode * Tree::rootNode() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: waitFor
      Src: /src/behaviortreecpp/src/bt_factory.cpp:674,1
    - Dst: std::chrono::duration_cast<std::chrono::milliseconds>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:675,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - timeout
    argTypes:
    - std::chrono::system_clock::duration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 676
    functionName: BT::Tree::sleep
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - waitFor
    - std::chrono::duration_cast<std::chrono::milliseconds>
    linkageType: ''
    returnType: bool
    signature: bool Tree::sleep(std::chrono::system_clock::duration timeout)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emitSignal
      Src: /src/behaviortreecpp/src/bt_factory.cpp:680,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 678
    functionDepth: 0
    functionLinenumber: 678
    functionLinenumberEnd: 681
    functionName: BT::Tree::emitWakeUpSignal
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - emitSignal
    linkageType: ''
    returnType: void
    signature: void Tree::emitWakeUpSignal()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 683
    functionDepth: 0
    functionLinenumber: 683
    functionLinenumberEnd: 686
    functionName: BT::Tree::wakeUpSignal
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::shared_ptr<WakeUpSignal>
    signature: std::shared_ptr<WakeUpSignal> Tree::wakeUpSignal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: haltTree
      Src: /src/behaviortreecpp/src/bt_factory.cpp:690,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 688
    functionDepth: 0
    functionLinenumber: 688
    functionLinenumberEnd: 691
    functionName: Tree::~Tree()
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - haltTree
    linkageType: ''
    returnType: void
    signature: void Tree::~Tree()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Tree::tickRoot
      Src: /src/behaviortreecpp/src/bt_factory.cpp:695,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/bt_factory.cpp:695,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 693
    functionDepth: 1
    functionLinenumber: 693
    functionLinenumberEnd: 696
    functionName: BT::Tree::tickExactlyOnce
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - std::chrono::milliseconds
    - BT::Tree::tickRoot
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus Tree::tickExactlyOnce()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Tree::tickRoot
      Src: /src/behaviortreecpp/src/bt_factory.cpp:700,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/bt_factory.cpp:700,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 698
    functionDepth: 1
    functionLinenumber: 698
    functionLinenumberEnd: 701
    functionName: BT::Tree::tickOnce
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - std::chrono::milliseconds
    - BT::Tree::tickRoot
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus Tree::tickOnce()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Tree::tickRoot
      Src: /src/behaviortreecpp/src/bt_factory.cpp:705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sleep_time
    argTypes:
    - std::chrono::milliseconds
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 703
    functionDepth: 1
    functionLinenumber: 703
    functionLinenumberEnd: 706
    functionName: BT::Tree::tickWhileRunning
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 1
    functionsReached:
    - BT::Tree::tickRoot
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus Tree::tickWhileRunning(std::chrono::milliseconds sleep_time)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:710,1
    - Dst: front
      Src: /src/behaviortreecpp/src/bt_factory.cpp:712,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 708
    functionDepth: 1
    functionLinenumber: 708
    functionLinenumberEnd: 715
    functionName: BT::Tree::rootBlackboard
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - empty
    - front
    linkageType: ''
    returnType: Blackboard::Ptr
    signature: Blackboard::Ptr Tree::rootBlackboard()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/bt_factory.cpp:719,1
    - Dst: static_cast<const TreeNode*>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:719,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:719,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' visitor'
    argTypes:
    - std::function<void(const TreeNode*)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 717
    functionDepth: 2
    functionLinenumber: 717
    functionLinenumberEnd: 720
    functionName: BT::Tree::applyVisitor
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - static_cast<const TreeNode*>
    - BT::applyRecursiveVisitor
    - BT::Tree::rootNode
    linkageType: ''
    returnType: void
    signature: void Tree::applyVisitor(const std::function<void(const TreeNode*)>&
      visitor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/bt_factory.cpp:725,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:725,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' visitor'
    argTypes:
    - std::function<void(TreeNode*)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 723
    functionDepth: 2
    functionLinenumber: 723
    functionLinenumberEnd: 726
    functionName: BT::Tree::applyVisitor
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - BT::applyRecursiveVisitor
    - BT::Tree::rootNode
    linkageType: ''
    returnType: void
    signature: void Tree::applyVisitor(const std::function<void(TreeNode*)>& visitor)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 732
      start: 728
    functionDepth: 0
    functionLinenumber: 728
    functionLinenumberEnd: 732
    functionName: BT::Tree::getUID
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint16_t
    signature: uint16_t Tree::getUID()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: BT::Tree::initialize
      Src: /src/behaviortreecpp/src/bt_factory.cpp:740,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:743,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:745,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:751,1
    - Dst: waitFor
      Src: /src/behaviortreecpp/src/bt_factory.cpp:756,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/bt_factory.cpp:756,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:758,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/bt_factory.cpp:761,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:763,1
    - Dst: std::chrono::milliseconds::count
      Src: /src/behaviortreecpp/src/bt_factory.cpp:765,1
    - Dst: BT::Tree::sleep
      Src: /src/behaviortreecpp/src/bt_factory.cpp:767,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/bt_factory.cpp:767,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 20
    argCount: 2
    argNames:
    - opt
    - sleep_time
    argTypes:
    - TickOption
    - std::chrono::milliseconds
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 734
    functionDepth: 2
    functionLinenumber: 734
    functionLinenumberEnd: 772
    functionName: BT::Tree::tickRoot
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 3
    functionsReached:
    - BT::Tree::initialize
    - BT::Tree::sleep
    - std::chrono::milliseconds::count
    - isStatusCompleted
    - waitFor
    - BT::Tree::rootNode
    - RuntimeError
    - std::chrono::milliseconds
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus Tree::tickRoot(TickOption opt, std::chrono::milliseconds
      sleep_time)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/src/bt_factory.cpp:776,1
    - Dst: size
      Src: /src/behaviortreecpp/src/bt_factory.cpp:776,1
    - Dst: subtrees::size
      Src: /src/behaviortreecpp/src/bt_factory.cpp:776,1
    - Dst: subtrees::size
      Src: /src/behaviortreecpp/src/bt_factory.cpp:777,1
    - Dst: cloneInto
      Src: /src/behaviortreecpp/src/bt_factory.cpp:779,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' backup'
    - ' tree'
    argTypes:
    - std::vector<Blackboard::Ptr>
    - Tree
    assertStmts:
    - condition: (backup.size() == tree.subtrees.size())
      pos:
        line_end: 775
        line_start: 775
        source_file: /src/behaviortreecpp/src/bt_factory.cpp
    constantsTouched: []
    func_position:
      end: 781
      start: 774
    functionDepth: 1
    functionLinenumber: 774
    functionLinenumberEnd: 781
    functionName: BT::BlackboardRestore
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - cloneInto
    - subtrees::size
    - assert
    - size
    linkageType: ''
    returnType: void
    signature: void BlackboardRestore(const std::vector<Blackboard::Ptr>& backup,
      Tree& tree)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/bt_factory.cpp:786,1
    - Dst: subtrees::size
      Src: /src/behaviortreecpp/src/bt_factory.cpp:786,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/bt_factory.cpp:789,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/src/bt_factory.cpp:789,1
    - Dst: blackboard::cloneInto
      Src: /src/behaviortreecpp/src/bt_factory.cpp:790,1
    - Dst: std::vector::back
      Src: /src/behaviortreecpp/src/bt_factory.cpp:790,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' tree'
    argTypes:
    - Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 783
    functionDepth: 1
    functionLinenumber: 783
    functionLinenumberEnd: 793
    functionName: BT::BlackboardBackup
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - BT::Blackboard::create
    - subtrees::size
    - blackboard::cloneInto
    - std::vector::back
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Blackboard::Ptr>
    signature: std::vector<Blackboard::Ptr> BlackboardBackup(const Tree& tree)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: auto::empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:801,1
    - Dst: BT::ExportBlackboardToJSON
      Src: /src/behaviortreecpp/src/bt_factory.cpp:805,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' tree'
    argTypes:
    - Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 795
    functionDepth: 1
    functionLinenumber: 795
    functionLinenumberEnd: 808
    functionName: BT::ExportTreeToJSON
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - auto::empty
    - BT::ExportBlackboardToJSON
    linkageType: ''
    returnType: nlohmann::json
    signature: nlohmann::json ExportTreeToJSON(const Tree& tree)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/bt_factory.cpp:812,1
    - Dst: subtrees::size
      Src: /src/behaviortreecpp/src/bt_factory.cpp:812,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/src/bt_factory.cpp:814,1
    - Dst: items
      Src: /src/behaviortreecpp/src/bt_factory.cpp:818,1
    - Dst: subtrees::at
      Src: /src/behaviortreecpp/src/bt_factory.cpp:820,1
    - Dst: BT::ImportBlackboardFromJSON
      Src: /src/behaviortreecpp/src/bt_factory.cpp:821,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - ' json'
    - ' tree'
    argTypes:
    - nlohmann::json
    - Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 823
      start: 810
    functionDepth: 2
    functionLinenumber: 810
    functionLinenumberEnd: 823
    functionName: BT::ImportTreeFromJSON
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - items
    - subtrees::at
    - BT::ImportBlackboardFromJSON
    - subtrees::size
    - size
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void ImportTreeFromJSON(const nlohmann::json& json, Tree& tree)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement*::Attribute
      Src: /src/behaviortreecpp/src/bt_factory.cpp:34,1
    - Dst: tinyxml2::XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/bt_factory.cpp:40,1
    - Dst: auto*::NextSiblingElement
      Src: /src/behaviortreecpp/src/bt_factory.cpp:41,1
    - Dst: auto*::Attribute
      Src: /src/behaviortreecpp/src/bt_factory.cpp:44,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:49,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - xml_root
    argTypes:
    - tinyxml2::XMLElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 54
    functionName: BT::detectMainTreeId
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - auto*::NextSiblingElement
    - auto*::Attribute
    - tinyxml2::XMLElement*::Attribute
    - tinyxml2::XMLElement*::FirstChildElement
    - std::string::empty
    linkageType: ''
    returnType: std::string
    signature: std::string detectMainTreeId(const tinyxml2::XMLElement* xml_root)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:65,1
    - Dst: Parser*::registeredBehaviorTrees
      Src: /src/behaviortreecpp/src/bt_factory.cpp:67,1
    - Dst: std::set::insert
      Src: /src/behaviortreecpp/src/bt_factory.cpp:68,1
    - Dst: auto::begin
      Src: /src/behaviortreecpp/src/bt_factory.cpp:68,1
    - Dst: auto::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:68,1
    - Dst: load_func
      Src: /src/behaviortreecpp/src/bt_factory.cpp:71,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:74,1
    - Dst: Parser*::registeredBehaviorTrees
      Src: /src/behaviortreecpp/src/bt_factory.cpp:76,1
    - Dst: std::set::count
      Src: /src/behaviortreecpp/src/bt_factory.cpp:81,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - parser
    - ' main_tree_ID'
    - ' load_func'
    argTypes:
    - Parser*
    - std::string
    - std::function<void()>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 93
    functionName: BT::loadXmlAndResolveTreeId
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - load_func
    - auto::end
    - auto::begin
    - std::set::count
    - Parser*::registeredBehaviorTrees
    - std::set::insert
    - empty
    linkageType: ''
    returnType: std::string
    signature: "std::string loadXmlAndResolveTreeId(Parser* parser, const std::string&
      main_tree_ID,\n                                    const std::function<void()>&
      load_func)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement*::Attribute
      Src: /src/behaviortreecpp/src/bt_factory.cpp:34,1
    - Dst: tinyxml2::XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/bt_factory.cpp:40,1
    - Dst: auto*::NextSiblingElement
      Src: /src/behaviortreecpp/src/bt_factory.cpp:41,1
    - Dst: auto*::Attribute
      Src: /src/behaviortreecpp/src/bt_factory.cpp:44,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:49,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 1
    argNames:
    - xml_root
    argTypes:
    - tinyxml2::XMLElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 32
    functionDepth: 1
    functionLinenumber: 32
    functionLinenumberEnd: 54
    functionName: BT::detectMainTreeId
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - auto*::NextSiblingElement
    - auto*::Attribute
    - tinyxml2::XMLElement*::Attribute
    - tinyxml2::XMLElement*::FirstChildElement
    - std::string::empty
    linkageType: ''
    returnType: std::string
    signature: std::string detectMainTreeId(const tinyxml2::XMLElement* xml_root)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:65,1
    - Dst: Parser*::registeredBehaviorTrees
      Src: /src/behaviortreecpp/src/bt_factory.cpp:67,1
    - Dst: std::set::insert
      Src: /src/behaviortreecpp/src/bt_factory.cpp:68,1
    - Dst: auto::begin
      Src: /src/behaviortreecpp/src/bt_factory.cpp:68,1
    - Dst: auto::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:68,1
    - Dst: load_func
      Src: /src/behaviortreecpp/src/bt_factory.cpp:71,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:74,1
    - Dst: Parser*::registeredBehaviorTrees
      Src: /src/behaviortreecpp/src/bt_factory.cpp:76,1
    - Dst: std::set::count
      Src: /src/behaviortreecpp/src/bt_factory.cpp:81,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - parser
    - ' main_tree_ID'
    - ' load_func'
    argTypes:
    - Parser*
    - std::string
    - std::function<void()>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 93
    functionName: BT::loadXmlAndResolveTreeId
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - load_func
    - auto::end
    - auto::begin
    - std::set::count
    - Parser*::registeredBehaviorTrees
    - std::set::insert
    - empty
    linkageType: ''
    returnType: std::string
    signature: "std::string loadXmlAndResolveTreeId(Parser* parser, const std::string&
      main_tree_ID,\n                                    const std::function<void()>&
      load_func)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: wildcards_match
      Src: /src/behaviortreecpp/src/bt_factory.cpp:99,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/src/bt_factory.cpp:99,1
    - Dst: StringView::size
      Src: /src/behaviortreecpp/src/bt_factory.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' str'
    - filter
    argTypes:
    - std::string
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 1
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: BT::WildcardMatch
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - StringView::size
    - StringView::data
    - wildcards_match
    linkageType: ''
    returnType: bool
    signature: bool WildcardMatch(std::string const& str, StringView filter)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PImpl::PImpl
      Src: /src/behaviortreecpp/src/bt_factory.cpp:114,1
    - Dst: std::make_shared<XMLParser>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:116,1
    - Dst: std::make_shared<PolymorphicCastRegistry>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:117,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:118,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:119,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:120,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:121,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:122,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:125,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:128,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:129,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:130,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:131,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:132,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:133,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:134,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:136,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:138,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:139,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:140,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:141,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:142,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:143,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:145,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:146,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:148,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:149,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:150,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:151,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:152,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:153,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:154,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:156,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:158,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:160,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:161,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:162,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:163,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:164,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:166,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:167,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:168,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:169,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:171,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:172,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/src/bt_factory.cpp:173,1
    - Dst: builtin_IDs::insert
      Src: /src/behaviortreecpp/src/bt_factory.cpp:177,1
    - Dst: std::make_shared<std::unordered_map<std::string, int>>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:180,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 49
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 114
    functionDepth: 1
    functionLinenumber: 114
    functionLinenumberEnd: 181
    functionName: BT::BehaviorTreeFactory::BehaviorTreeFactory
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 66
    functionsReached:
    - std::make_shared<XMLParser>
    - std::make_shared<PolymorphicCastRegistry>
    - BT::BehaviorTreeFactory::registerNodeType
    - std::make_shared<std::unordered_map<std::string, int>>
    - builtin_IDs::insert
    - PImpl::PImpl
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::BehaviorTreeFactory()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 183
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 183
    functionName: BehaviorTreeFactory::~BehaviorTreeFactory()
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::~BehaviorTreeFactory()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - BehaviorTreeFactory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 185
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 185
    functionName: BT::BehaviorTreeFactory::BehaviorTreeFactory
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 66
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::BehaviorTreeFactory(BehaviorTreeFactory&&
      other) noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: builtinNodes
      Src: /src/behaviortreecpp/src/bt_factory.cpp:191,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:193,1
    - Dst: builders::find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:195,1
    - Dst: builders::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:196,1
    - Dst: builders::erase
      Src: /src/behaviortreecpp/src/bt_factory.cpp:200,1
    - Dst: manifests::erase
      Src: /src/behaviortreecpp/src/bt_factory.cpp:201,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ' ID'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 203
    functionName: BT::BehaviorTreeFactory::unregisterBuilder
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - builders::erase
    - builders::find
    - LogicError
    - manifests::erase
    - builtinNodes
    - builders::end
    linkageType: ''
    returnType: bool
    signature: bool BehaviorTreeFactory::unregisterBuilder(const std::string& ID)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: builders::find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:208,1
    - Dst: builders::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:209,1
    - Dst: BehaviorTreeException
      Src: /src/behaviortreecpp/src/bt_factory.cpp:211,1
    - Dst: builders::insert
      Src: /src/behaviortreecpp/src/bt_factory.cpp:214,1
    - Dst: manifests::insert
      Src: /src/behaviortreecpp/src/bt_factory.cpp:215,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ' manifest'
    - ' builder'
    argTypes:
    - TreeNodeManifest
    - NodeBuilder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 205
    functionDepth: 1
    functionLinenumber: 205
    functionLinenumberEnd: 216
    functionName: BT::BehaviorTreeFactory::registerBuilder
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 4
    functionsReached:
    - builders::find
    - builders::insert
    - manifests::insert
    - builders::end
    - BehaviorTreeException
    linkageType: ''
    returnType: void
    signature: "void BehaviorTreeFactory::registerBuilder(const TreeNodeManifest&
      manifest,\n                                          const NodeBuilder& builder)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<SimpleConditionNode>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:224,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/bt_factory.cpp:227,1
    - Dst: BT::BehaviorTreeFactory::registerBuilder
      Src: /src/behaviortreecpp/src/bt_factory.cpp:228,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' ID'
    - ' tick_functor'
    - ports
    argTypes:
    - std::string
    - SimpleConditionNode::TickFunctor
    - PortsList
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 229
    functionName: BT::BehaviorTreeFactory::registerSimpleCondition
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 3
    functionsReached:
    - BT::BehaviorTreeFactory::registerBuilder
    - std::make_unique<SimpleConditionNode>
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BehaviorTreeFactory::registerSimpleCondition(\n    const std::string&
      ID, const SimpleConditionNode::TickFunctor& tick_functor,\n    PortsList ports)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<SimpleActionNode>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:237,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/bt_factory.cpp:240,1
    - Dst: BT::BehaviorTreeFactory::registerBuilder
      Src: /src/behaviortreecpp/src/bt_factory.cpp:241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' ID'
    - ' tick_functor'
    - ports
    argTypes:
    - std::string
    - SimpleActionNode::TickFunctor
    - PortsList
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 231
    functionDepth: 0
    functionLinenumber: 231
    functionLinenumberEnd: 242
    functionName: BT::BehaviorTreeFactory::registerSimpleAction
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 7
    functionsReached:
    - std::make_unique<SimpleActionNode>
    - BT::BehaviorTreeFactory::registerBuilder
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BehaviorTreeFactory::registerSimpleAction(\n    const std::string&
      ID, const SimpleActionNode::TickFunctor& tick_functor,\n    PortsList ports)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<SimpleDecoratorNode>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:250,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/bt_factory.cpp:253,1
    - Dst: BT::BehaviorTreeFactory::registerBuilder
      Src: /src/behaviortreecpp/src/bt_factory.cpp:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - ' ID'
    - ' tick_functor'
    - ports
    argTypes:
    - std::string
    - SimpleDecoratorNode::TickFunctor
    - PortsList
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 255
      start: 244
    functionDepth: 0
    functionLinenumber: 244
    functionLinenumberEnd: 255
    functionName: BT::BehaviorTreeFactory::registerSimpleDecorator
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<SimpleDecoratorNode>
    - BT::BehaviorTreeFactory::registerBuilder
    - std::move
    linkageType: ''
    returnType: void
    signature: "void BehaviorTreeFactory::registerSimpleDecorator(\n    const std::string&
      ID, const SimpleDecoratorNode::TickFunctor& tick_functor,\n    PortsList ports)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::SharedLibrary::SharedLibrary
      Src: /src/behaviortreecpp/src/bt_factory.cpp:259,1
    - Dst: BT::SharedLibrary::load
      Src: /src/behaviortreecpp/src/bt_factory.cpp:260,1
    - Dst: BT::SharedLibrary::hasSymbol
      Src: /src/behaviortreecpp/src/bt_factory.cpp:263,1
    - Dst: reinterpret_cast<Func>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:266,1
    - Dst: BT::SharedLibrary::getSymbol
      Src: /src/behaviortreecpp/src/bt_factory.cpp:266,1
    - Dst: func
      Src: /src/behaviortreecpp/src/bt_factory.cpp:267,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' file_path'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 274
    functionName: BT::BehaviorTreeFactory::registerFromPlugin
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 2
    functionsReached:
    - BT::SharedLibrary::hasSymbol
    - func
    - BT::SharedLibrary::getSymbol
    - reinterpret_cast<Func>
    - BT::SharedLibrary::load
    - BT::SharedLibrary::SharedLibrary
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::registerFromPlugin(const std::string& file_path)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:279,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 277
    functionDepth: 0
    functionLinenumber: 277
    functionLinenumberEnd: 282
    functionName: BT::BehaviorTreeFactory::registerFromROSPlugins
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::registerFromROSPlugins()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parser::loadFromFile
      Src: /src/behaviortreecpp/src/bt_factory.cpp:287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' filename'
    argTypes:
    - std::filesystem::path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 288
    functionName: BT::BehaviorTreeFactory::registerBehaviorTreeFromFile
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - parser::loadFromFile
    linkageType: ''
    returnType: void
    signature: "void BehaviorTreeFactory::registerBehaviorTreeFromFile(\n    const
      std::filesystem::path& filename)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parser::loadFromText
      Src: /src/behaviortreecpp/src/bt_factory.cpp:292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' xml_text'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 293
    functionName: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 14
    functionsReached:
    - parser::loadFromText
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::registerBehaviorTreeFromText(const std::string&
      xml_text)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parser::registeredBehaviorTrees
      Src: /src/behaviortreecpp/src/bt_factory.cpp:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 298
    functionName: BT::BehaviorTreeFactory::registeredBehaviorTrees
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - parser::registeredBehaviorTrees
    linkageType: ''
    returnType: std::vector<std::string>
    signature: std::vector<std::string> BehaviorTreeFactory::registeredBehaviorTrees()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parser::clearInternalState
      Src: /src/behaviortreecpp/src/bt_factory.cpp:302,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 303
      start: 300
    functionDepth: 0
    functionLinenumber: 300
    functionLinenumberEnd: 303
    functionName: BT::BehaviorTreeFactory::clearRegisteredBehaviorTrees
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - parser::clearInternalState
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::clearRegisteredBehaviorTrees()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:315,1
    - Dst: manifests::find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:318,1
    - Dst: manifests::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:319,1
    - Dst: idNotFound
      Src: /src/behaviortreecpp/src/bt_factory.cpp:321,1
    - Dst: wildcards_match
      Src: /src/behaviortreecpp/src/bt_factory.cpp:329,1
    - Dst: std::get_if<std::string>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:333,1
    - Dst: builders::find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:335,1
    - Dst: builders::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:336,1
    - Dst: builder
      Src: /src/behaviortreecpp/src/bt_factory.cpp:339,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:343,1
    - Dst: std::get_if<TestNodeConfig>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:349,1
    - Dst: std::make_unique<TestNode>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:351,1
    - Dst: std::make_shared<TestNodeConfig>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:352,1
    - Dst: std::get_if<std::shared_ptr<TestNodeConfig>>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:358,1
    - Dst: std::make_unique<TestNode>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:360,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:364,1
    - Dst: builders::find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:371,1
    - Dst: builders::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:372,1
    - Dst: idNotFound
      Src: /src/behaviortreecpp/src/bt_factory.cpp:374,1
    - Dst: builder
      Src: /src/behaviortreecpp/src/bt_factory.cpp:377,1
    - Dst: std::unique_ptr::setRegistrationID
      Src: /src/behaviortreecpp/src/bt_factory.cpp:380,1
    - Dst: std::unique_ptr::config
      Src: /src/behaviortreecpp/src/bt_factory.cpp:381,1
    - Dst: ParseScript
      Src: /src/behaviortreecpp/src/bt_factory.cpp:386,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/bt_factory.cpp:388,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:392,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/src/bt_factory.cpp:392,1
    - Dst: AssignConditions
      Src: /src/behaviortreecpp/src/bt_factory.cpp:396,1
    - Dst: std::unique_ptr::preConditionsScripts
      Src: /src/behaviortreecpp/src/bt_factory.cpp:396,1
    - Dst: AssignConditions
      Src: /src/behaviortreecpp/src/bt_factory.cpp:397,1
    - Dst: std::unique_ptr::postConditionsScripts
      Src: /src/behaviortreecpp/src/bt_factory.cpp:397,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 50
    argCount: 3
    argNames:
    - ' name'
    - ' ID'
    - ' config'
    argTypes:
    - std::string
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 400
      start: 306
    functionDepth: 1
    functionLinenumber: 306
    functionLinenumberEnd: 400
    functionName: BT::BehaviorTreeFactory::instantiateTreeNode
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - std::unique_ptr::setRegistrationID
    - wildcards_match
    - std::make_shared<TestNodeConfig>
    - manifests::end
    - std::get_if<std::string>
    - std::make_unique<TestNode>
    - AssignConditions
    - idNotFound
    - ParseScript
    - std::unique_ptr::preConditionsScripts
    - std::get_if<std::shared_ptr<TestNodeConfig>>
    - manifests::find
    - RuntimeError
    - builder
    - std::unique_ptr::config
    - std::get_if<TestNodeConfig>
    - auto::value
    - builders::find
    - auto::error
    - LogicError
    - std::unique_ptr::postConditionsScripts
    - builders::end
    linkageType: ''
    returnType: std::unique_ptr<TreeNode>
    signature: "std::unique_ptr<TreeNode> BehaviorTreeFactory::instantiateTreeNode(\n
      \   const std::string& name, const std::string& ID, const NodeConfig& config)
      const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 405
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 405
    functionName: '& BehaviorTreeFactory::builders() const'
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::unordered_map<std::string, NodeBuilder>
    signature: std::unordered_map<std::string, NodeBuilder> & BehaviorTreeFactory::builders()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 407
    functionDepth: 0
    functionLinenumber: 407
    functionLinenumberEnd: 411
    functionName: '&

      BehaviorTreeFactory::manifests() const'
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::unordered_map<std::string, TreeNodeManifest>
    signature: 'std::unordered_map<std::string, TreeNodeManifest> &

      BehaviorTreeFactory::manifests() const'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 413
    functionDepth: 0
    functionLinenumber: 413
    functionLinenumberEnd: 416
    functionName: '& BehaviorTreeFactory::builtinNodes() const'
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::set<std::string>
    signature: std::set<std::string> & BehaviorTreeFactory::builtinNodes() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::XMLDocument
      Src: /src/behaviortreecpp/src/bt_factory.cpp:422,1
    - Dst: tinyxml2::XMLDocument::Parse
      Src: /src/behaviortreecpp/src/bt_factory.cpp:423,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/bt_factory.cpp:423,1
    - Dst: size
      Src: /src/behaviortreecpp/src/bt_factory.cpp:423,1
    - Dst: tinyxml2::XMLDocument::RootElement
      Src: /src/behaviortreecpp/src/bt_factory.cpp:425,1
    - Dst: detectMainTreeId
      Src: /src/behaviortreecpp/src/bt_factory.cpp:427,1
    - Dst: loadXmlAndResolveTreeId
      Src: /src/behaviortreecpp/src/bt_factory.cpp:430,1
    - Dst: parser::get
      Src: /src/behaviortreecpp/src/bt_factory.cpp:431,1
    - Dst: parser::loadFromText
      Src: /src/behaviortreecpp/src/bt_factory.cpp:431,1
    - Dst: Blackboard::Ptr::setPolymorphicCastRegistry
      Src: /src/behaviortreecpp/src/bt_factory.cpp:434,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:436,1
    - Dst: parser::instantiateTree
      Src: /src/behaviortreecpp/src/bt_factory.cpp:436,1
    - Dst: parser::instantiateTree
      Src: /src/behaviortreecpp/src/bt_factory.cpp:437,1
    - Dst: BT::BehaviorTreeFactory::manifests
      Src: /src/behaviortreecpp/src/bt_factory.cpp:438,1
    - Dst: Tree::remapManifestPointers
      Src: /src/behaviortreecpp/src/bt_factory.cpp:439,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' text'
    - blackboard
    argTypes:
    - std::string
    - Blackboard::Ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 441
      start: 418
    functionDepth: 1
    functionLinenumber: 418
    functionLinenumberEnd: 441
    functionName: BT::BehaviorTreeFactory::createTreeFromText
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 46
    functionsReached:
    - parser::get
    - std::string::empty
    - tinyxml2::XMLDocument::XMLDocument
    - Blackboard::Ptr::setPolymorphicCastRegistry
    - detectMainTreeId
    - tinyxml2::XMLDocument::RootElement
    - parser::loadFromText
    - tinyxml2::XMLDocument::Parse
    - size
    - parser::instantiateTree
    - Tree::remapManifestPointers
    - BT::BehaviorTreeFactory::manifests
    - c_str
    - loadXmlAndResolveTreeId
    linkageType: ''
    returnType: Tree
    signature: "Tree BehaviorTreeFactory::createTreeFromText(const std::string& text,\n
      \                                            Blackboard::Ptr blackboard)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::XMLDocument
      Src: /src/behaviortreecpp/src/bt_factory.cpp:447,1
    - Dst: tinyxml2::XMLDocument::LoadFile
      Src: /src/behaviortreecpp/src/bt_factory.cpp:448,1
    - Dst: string
      Src: /src/behaviortreecpp/src/bt_factory.cpp:448,1
    - Dst: tinyxml2::XMLDocument::RootElement
      Src: /src/behaviortreecpp/src/bt_factory.cpp:450,1
    - Dst: detectMainTreeId
      Src: /src/behaviortreecpp/src/bt_factory.cpp:452,1
    - Dst: loadXmlAndResolveTreeId
      Src: /src/behaviortreecpp/src/bt_factory.cpp:455,1
    - Dst: parser::get
      Src: /src/behaviortreecpp/src/bt_factory.cpp:456,1
    - Dst: parser::loadFromFile
      Src: /src/behaviortreecpp/src/bt_factory.cpp:456,1
    - Dst: Blackboard::Ptr::setPolymorphicCastRegistry
      Src: /src/behaviortreecpp/src/bt_factory.cpp:459,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:461,1
    - Dst: parser::instantiateTree
      Src: /src/behaviortreecpp/src/bt_factory.cpp:461,1
    - Dst: parser::instantiateTree
      Src: /src/behaviortreecpp/src/bt_factory.cpp:462,1
    - Dst: BT::BehaviorTreeFactory::manifests
      Src: /src/behaviortreecpp/src/bt_factory.cpp:463,1
    - Dst: Tree::remapManifestPointers
      Src: /src/behaviortreecpp/src/bt_factory.cpp:464,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 2
    argNames:
    - ' file_path'
    - blackboard
    argTypes:
    - std::filesystem::path
    - Blackboard::Ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 466
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 466
    functionName: BT::BehaviorTreeFactory::createTreeFromFile
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - parser::get
    - parser::loadFromFile
    - tinyxml2::XMLDocument::XMLDocument
    - Blackboard::Ptr::setPolymorphicCastRegistry
    - detectMainTreeId
    - string
    - tinyxml2::XMLDocument::RootElement
    - parser::instantiateTree
    - Tree::remapManifestPointers
    - BT::BehaviorTreeFactory::manifests
    - tinyxml2::XMLDocument::LoadFile
    - std::string::empty
    - loadXmlAndResolveTreeId
    linkageType: ''
    returnType: Tree
    signature: "Tree BehaviorTreeFactory::createTreeFromFile(const std::filesystem::path&
      file_path,\n                                             Blackboard::Ptr blackboard)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Blackboard::Ptr::setPolymorphicCastRegistry
      Src: /src/behaviortreecpp/src/bt_factory.cpp:472,1
    - Dst: parser::instantiateTree
      Src: /src/behaviortreecpp/src/bt_factory.cpp:474,1
    - Dst: BT::BehaviorTreeFactory::manifests
      Src: /src/behaviortreecpp/src/bt_factory.cpp:475,1
    - Dst: auto::remapManifestPointers
      Src: /src/behaviortreecpp/src/bt_factory.cpp:476,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' tree_name'
    - blackboard
    argTypes:
    - std::string
    - Blackboard::Ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 468
    functionDepth: 0
    functionLinenumber: 468
    functionLinenumberEnd: 478
    functionName: BT::BehaviorTreeFactory::createTree
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 14
    functionsReached:
    - parser::instantiateTree
    - BT::BehaviorTreeFactory::manifests
    - Blackboard::Ptr::setPolymorphicCastRegistry
    - auto::remapManifestPointers
    linkageType: ''
    returnType: Tree
    signature: "Tree BehaviorTreeFactory::createTree(const std::string& tree_name,\n
      \                                    Blackboard::Ptr blackboard)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: manifests::find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:483,1
    - Dst: manifests::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:484,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/src/bt_factory.cpp:486,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ' node_id'
    - ' metadata'
    argTypes:
    - std::string
    - KeyValueVector
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 480
    functionDepth: 1
    functionLinenumber: 480
    functionLinenumberEnd: 489
    functionName: BT::BehaviorTreeFactory::addMetadataToManifest
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - manifests::end
    - manifests::find
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: "void BehaviorTreeFactory::addMetadataToManifest(const std::string&
      node_id,\n                                                const KeyValueVector&
      metadata)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: string
      Src: /src/behaviortreecpp/src/bt_factory.cpp:493,1
    - Dst: scripting_enums::find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:494,1
    - Dst: scripting_enums::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:495,1
    - Dst: scripting_enums::insert
      Src: /src/behaviortreecpp/src/bt_factory.cpp:497,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:503,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/bt_factory.cpp:504,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/bt_factory.cpp:505,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/bt_factory.cpp:505,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - StringView
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 491
    functionDepth: 1
    functionLinenumber: 491
    functionLinenumberEnd: 508
    functionName: BT::BehaviorTreeFactory::registerScriptingEnum
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 1
    functionsReached:
    - scripting_enums::end
    - string
    - LogicError
    - scripting_enums::find
    - to_string
    - StrCat
    - scripting_enums::insert
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::registerScriptingEnum(StringView name, int
      value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: substitution_rules::clear
      Src: /src/behaviortreecpp/src/bt_factory.cpp:512,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 513
      start: 510
    functionDepth: 1
    functionLinenumber: 510
    functionLinenumberEnd: 513
    functionName: BT::BehaviorTreeFactory::clearSubstitutionRules
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - substitution_rules::clear
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::clearSubstitutionRules()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string
      Src: /src/behaviortreecpp/src/bt_factory.cpp:517,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/bt_factory.cpp:517,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - filter
    - rule
    argTypes:
    - StringView
    - SubstitutionRule
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 515
    functionDepth: 1
    functionLinenumber: 515
    functionLinenumberEnd: 518
    functionName: BT::BehaviorTreeFactory::addSubstitutionRule
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 1
    functionsReached:
    - std::move
    - string
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::addSubstitutionRule(StringView filter, SubstitutionRule
      rule)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/bt_factory.cpp:522,1
    - Dst: auto::contains
      Src: /src/behaviortreecpp/src/bt_factory.cpp:528,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/src/bt_factory.cpp:530,1
    - Dst: auto::items
      Src: /src/behaviortreecpp/src/bt_factory.cpp:531,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/bt_factory.cpp:536,1
    - Dst: at
      Src: /src/behaviortreecpp/src/bt_factory.cpp:538,1
    - Dst: convertFromString<NodeStatus>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:539,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/bt_factory.cpp:542,1
    - Dst: get
      Src: /src/behaviortreecpp/src/bt_factory.cpp:545,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/bt_factory.cpp:547,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/bt_factory.cpp:550,1
    - Dst: get
      Src: /src/behaviortreecpp/src/bt_factory.cpp:550,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/bt_factory.cpp:552,1
    - Dst: get
      Src: /src/behaviortreecpp/src/bt_factory.cpp:554,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/bt_factory.cpp:556,1
    - Dst: get
      Src: /src/behaviortreecpp/src/bt_factory.cpp:558,1
    - Dst: contains
      Src: /src/behaviortreecpp/src/bt_factory.cpp:560,1
    - Dst: get
      Src: /src/behaviortreecpp/src/bt_factory.cpp:562,1
    - Dst: return_status_script::empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:565,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:567,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/src/bt_factory.cpp:573,1
    - Dst: auto::items
      Src: /src/behaviortreecpp/src/bt_factory.cpp:574,1
    - Dst: get
      Src: /src/behaviortreecpp/src/bt_factory.cpp:576,1
    - Dst: std::unordered_map::find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:577,1
    - Dst: std::unordered_map::end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:578,1
    - Dst: BT::BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/src/bt_factory.cpp:580,1
    - Dst: BT::BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/src/bt_factory.cpp:584,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 32
    argCount: 1
    argNames:
    - ' json_text'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 520
    functionDepth: 2
    functionLinenumber: 520
    functionLinenumberEnd: 587
    functionName: BT::BehaviorTreeFactory::loadSubstitutionRuleFromJSON
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - get
    - auto::at
    - std::chrono::milliseconds
    - BT::BehaviorTreeFactory::addSubstitutionRule
    - auto::contains
    - auto::items
    - convertFromString<NodeStatus>
    - std::unordered_map::end
    - std::unordered_map::find
    - RuntimeError
    - return_status_script::empty
    - at
    - contains
    - parser::parse
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory::loadSubstitutionRuleFromJSON(const std::string&
      json_text)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 589
    functionDepth: 0
    functionLinenumber: 589
    functionLinenumberEnd: 593
    functionName: '&

      BehaviorTreeFactory::substitutionRules() const'
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::unordered_map<std::string, BehaviorTreeFactory::SubstitutionRule>
    signature: 'std::unordered_map<std::string, BehaviorTreeFactory::SubstitutionRule>
      &

      BehaviorTreeFactory::substitutionRules() const'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 595
    functionDepth: 0
    functionLinenumber: 595
    functionLinenumberEnd: 598
    functionName: '& BehaviorTreeFactory::polymorphicCastRegistry()'
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PolymorphicCastRegistry
    signature: PolymorphicCastRegistry & BehaviorTreeFactory::polymorphicCastRegistry()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 600
    functionDepth: 0
    functionLinenumber: 600
    functionLinenumberEnd: 603
    functionName: '& BehaviorTreeFactory::polymorphicCastRegistry() const'
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PolymorphicCastRegistry
    signature: PolymorphicCastRegistry & BehaviorTreeFactory::polymorphicCastRegistry()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 609
      start: 605
    functionDepth: 0
    functionLinenumber: 605
    functionLinenumberEnd: 609
    functionName: BT::BehaviorTreeFactory::polymorphicCastRegistryPtr
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::shared_ptr<PolymorphicCastRegistry>
    signature: std::shared_ptr<PolymorphicCastRegistry> BehaviorTreeFactory::polymorphicCastRegistryPtr()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 611
      start: 611
    functionDepth: 0
    functionLinenumber: 611
    functionLinenumberEnd: 611
    functionName: BT::Tree::Tree
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Tree::Tree()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/src/bt_factory.cpp:619,1
    - Dst: find
      Src: /src/behaviortreecpp/src/bt_factory.cpp:622,1
    - Dst: end
      Src: /src/behaviortreecpp/src/bt_factory.cpp:623,1
    - Dst: config
      Src: /src/behaviortreecpp/src/bt_factory.cpp:625,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 630
      start: 613
    functionDepth: 1
    functionLinenumber: 613
    functionLinenumberEnd: 630
    functionName: BT::Tree::remapManifestPointers
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - config
    - find
    - end
    linkageType: ''
    returnType: void
    signature: void Tree::remapManifestPointers()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<WakeUpSignal>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:634,1
    - Dst: setWakeUpInstance
      Src: /src/behaviortreecpp/src/bt_factory.cpp:639,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 632
    functionDepth: 0
    functionLinenumber: 632
    functionLinenumberEnd: 642
    functionName: BT::Tree::initialize
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 1
    functionsReached:
    - std::make_shared<WakeUpSignal>
    - setWakeUpInstance
    linkageType: ''
    returnType: void
    signature: void Tree::initialize()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:647,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:653,1
    - Dst: haltNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:656,1
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/bt_factory.cpp:657,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:657,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:659,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 645
    functionDepth: 2
    functionLinenumber: 645
    functionLinenumberEnd: 660
    functionName: BT::Tree::haltTree
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - haltNode
    - BT::applyRecursiveVisitor
    - BT::Tree::rootNode
    linkageType: ''
    returnType: void
    signature: void Tree::haltTree()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:664,1
    - Dst: front
      Src: /src/behaviortreecpp/src/bt_factory.cpp:668,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:669,1
    - Dst: front
      Src: /src/behaviortreecpp/src/bt_factory.cpp:669,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 662
    functionDepth: 1
    functionLinenumber: 662
    functionLinenumberEnd: 670
    functionName: BT::Tree::rootNode
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 5
    functionsReached:
    - empty
    - front
    linkageType: ''
    returnType: TreeNode
    signature: TreeNode * Tree::rootNode() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: waitFor
      Src: /src/behaviortreecpp/src/bt_factory.cpp:674,1
    - Dst: std::chrono::duration_cast<std::chrono::milliseconds>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:675,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - timeout
    argTypes:
    - std::chrono::system_clock::duration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 676
    functionName: BT::Tree::sleep
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 1
    functionsReached:
    - waitFor
    - std::chrono::duration_cast<std::chrono::milliseconds>
    linkageType: ''
    returnType: bool
    signature: bool Tree::sleep(std::chrono::system_clock::duration timeout)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emitSignal
      Src: /src/behaviortreecpp/src/bt_factory.cpp:680,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 681
      start: 678
    functionDepth: 0
    functionLinenumber: 678
    functionLinenumberEnd: 681
    functionName: BT::Tree::emitWakeUpSignal
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - emitSignal
    linkageType: ''
    returnType: void
    signature: void Tree::emitWakeUpSignal()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 683
    functionDepth: 0
    functionLinenumber: 683
    functionLinenumberEnd: 686
    functionName: BT::Tree::wakeUpSignal
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::shared_ptr<WakeUpSignal>
    signature: std::shared_ptr<WakeUpSignal> Tree::wakeUpSignal() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: haltTree
      Src: /src/behaviortreecpp/src/bt_factory.cpp:690,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 688
    functionDepth: 0
    functionLinenumber: 688
    functionLinenumberEnd: 691
    functionName: Tree::~Tree()
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - haltTree
    linkageType: ''
    returnType: void
    signature: void Tree::~Tree()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Tree::tickRoot
      Src: /src/behaviortreecpp/src/bt_factory.cpp:695,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/bt_factory.cpp:695,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 693
    functionDepth: 3
    functionLinenumber: 693
    functionLinenumberEnd: 696
    functionName: BT::Tree::tickExactlyOnce
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - std::chrono::milliseconds
    - BT::Tree::tickRoot
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus Tree::tickExactlyOnce()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Tree::tickRoot
      Src: /src/behaviortreecpp/src/bt_factory.cpp:700,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/bt_factory.cpp:700,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 698
    functionDepth: 3
    functionLinenumber: 698
    functionLinenumberEnd: 701
    functionName: BT::Tree::tickOnce
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - std::chrono::milliseconds
    - BT::Tree::tickRoot
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus Tree::tickOnce()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Tree::tickRoot
      Src: /src/behaviortreecpp/src/bt_factory.cpp:705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sleep_time
    argTypes:
    - std::chrono::milliseconds
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 703
    functionDepth: 3
    functionLinenumber: 703
    functionLinenumberEnd: 706
    functionName: BT::Tree::tickWhileRunning
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 1
    functionsReached:
    - BT::Tree::tickRoot
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus Tree::tickWhileRunning(std::chrono::milliseconds sleep_time)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:710,1
    - Dst: front
      Src: /src/behaviortreecpp/src/bt_factory.cpp:712,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 715
      start: 708
    functionDepth: 1
    functionLinenumber: 708
    functionLinenumberEnd: 715
    functionName: BT::Tree::rootBlackboard
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - empty
    - front
    linkageType: ''
    returnType: Blackboard::Ptr
    signature: Blackboard::Ptr Tree::rootBlackboard()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/bt_factory.cpp:719,1
    - Dst: static_cast<const TreeNode*>
      Src: /src/behaviortreecpp/src/bt_factory.cpp:719,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:719,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' visitor'
    argTypes:
    - std::function<void(const TreeNode*)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 717
    functionDepth: 2
    functionLinenumber: 717
    functionLinenumberEnd: 720
    functionName: BT::Tree::applyVisitor
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - static_cast<const TreeNode*>
    - BT::applyRecursiveVisitor
    - BT::Tree::rootNode
    linkageType: ''
    returnType: void
    signature: void Tree::applyVisitor(const std::function<void(const TreeNode*)>&
      visitor) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/bt_factory.cpp:725,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:725,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' visitor'
    argTypes:
    - std::function<void(TreeNode*)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 723
    functionDepth: 2
    functionLinenumber: 723
    functionLinenumberEnd: 726
    functionName: BT::Tree::applyVisitor
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - BT::applyRecursiveVisitor
    - BT::Tree::rootNode
    linkageType: ''
    returnType: void
    signature: void Tree::applyVisitor(const std::function<void(TreeNode*)>& visitor)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 732
      start: 728
    functionDepth: 0
    functionLinenumber: 728
    functionLinenumberEnd: 732
    functionName: BT::Tree::getUID
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: uint16_t
    signature: uint16_t Tree::getUID()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: BT::Tree::initialize
      Src: /src/behaviortreecpp/src/bt_factory.cpp:740,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:743,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/bt_factory.cpp:745,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:751,1
    - Dst: waitFor
      Src: /src/behaviortreecpp/src/bt_factory.cpp:756,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/bt_factory.cpp:756,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:758,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/bt_factory.cpp:761,1
    - Dst: BT::Tree::rootNode
      Src: /src/behaviortreecpp/src/bt_factory.cpp:763,1
    - Dst: std::chrono::milliseconds::count
      Src: /src/behaviortreecpp/src/bt_factory.cpp:765,1
    - Dst: BT::Tree::sleep
      Src: /src/behaviortreecpp/src/bt_factory.cpp:767,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/bt_factory.cpp:767,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 20
    argCount: 2
    argNames:
    - opt
    - sleep_time
    argTypes:
    - TickOption
    - std::chrono::milliseconds
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 772
      start: 734
    functionDepth: 2
    functionLinenumber: 734
    functionLinenumberEnd: 772
    functionName: BT::Tree::tickRoot
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 6
    functionsReached:
    - BT::Tree::initialize
    - BT::Tree::sleep
    - std::chrono::milliseconds::count
    - isStatusCompleted
    - waitFor
    - BT::Tree::rootNode
    - RuntimeError
    - std::chrono::milliseconds
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus Tree::tickRoot(TickOption opt, std::chrono::milliseconds
      sleep_time)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/src/bt_factory.cpp:776,1
    - Dst: size
      Src: /src/behaviortreecpp/src/bt_factory.cpp:776,1
    - Dst: subtrees::size
      Src: /src/behaviortreecpp/src/bt_factory.cpp:776,1
    - Dst: subtrees::size
      Src: /src/behaviortreecpp/src/bt_factory.cpp:777,1
    - Dst: cloneInto
      Src: /src/behaviortreecpp/src/bt_factory.cpp:779,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' backup'
    - ' tree'
    argTypes:
    - std::vector<Blackboard::Ptr>
    - Tree
    assertStmts:
    - condition: (backup.size() == tree.subtrees.size())
      pos:
        line_end: 775
        line_start: 775
        source_file: /src/behaviortreecpp/src/bt_factory.cpp
    constantsTouched: []
    func_position:
      end: 781
      start: 774
    functionDepth: 1
    functionLinenumber: 774
    functionLinenumberEnd: 781
    functionName: BT::BlackboardRestore
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - cloneInto
    - subtrees::size
    - assert
    - size
    linkageType: ''
    returnType: void
    signature: void BlackboardRestore(const std::vector<Blackboard::Ptr>& backup,
      Tree& tree)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/bt_factory.cpp:786,1
    - Dst: subtrees::size
      Src: /src/behaviortreecpp/src/bt_factory.cpp:786,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/bt_factory.cpp:789,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/src/bt_factory.cpp:789,1
    - Dst: blackboard::cloneInto
      Src: /src/behaviortreecpp/src/bt_factory.cpp:790,1
    - Dst: std::vector::back
      Src: /src/behaviortreecpp/src/bt_factory.cpp:790,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' tree'
    argTypes:
    - Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 783
    functionDepth: 1
    functionLinenumber: 783
    functionLinenumberEnd: 793
    functionName: BT::BlackboardBackup
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - std::vector::reserve
    - BT::Blackboard::create
    - subtrees::size
    - blackboard::cloneInto
    - std::vector::back
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<Blackboard::Ptr>
    signature: std::vector<Blackboard::Ptr> BlackboardBackup(const Tree& tree)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: auto::empty
      Src: /src/behaviortreecpp/src/bt_factory.cpp:801,1
    - Dst: BT::ExportBlackboardToJSON
      Src: /src/behaviortreecpp/src/bt_factory.cpp:805,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' tree'
    argTypes:
    - Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 795
    functionDepth: 1
    functionLinenumber: 795
    functionLinenumberEnd: 808
    functionName: BT::ExportTreeToJSON
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - auto::empty
    - BT::ExportBlackboardToJSON
    linkageType: ''
    returnType: nlohmann::json
    signature: nlohmann::json ExportTreeToJSON(const Tree& tree)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/bt_factory.cpp:812,1
    - Dst: subtrees::size
      Src: /src/behaviortreecpp/src/bt_factory.cpp:812,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/src/bt_factory.cpp:814,1
    - Dst: items
      Src: /src/behaviortreecpp/src/bt_factory.cpp:818,1
    - Dst: subtrees::at
      Src: /src/behaviortreecpp/src/bt_factory.cpp:820,1
    - Dst: BT::ImportBlackboardFromJSON
      Src: /src/behaviortreecpp/src/bt_factory.cpp:821,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - ' json'
    - ' tree'
    argTypes:
    - nlohmann::json
    - Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 823
      start: 810
    functionDepth: 2
    functionLinenumber: 810
    functionLinenumberEnd: 823
    functionName: BT::ImportTreeFromJSON
    functionSourceFile: /src/behaviortreecpp/src/bt_factory.cpp
    functionUses: 0
    functionsReached:
    - items
    - subtrees::at
    - BT::ImportBlackboardFromJSON
    - subtrees::size
    - size
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void ImportTreeFromJSON(const nlohmann::json& json, Tree& tree)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: direction
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:69,1
    - Dst: type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:73,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:74,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:74,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:78,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:82,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:86,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:91,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - ' port_info'
    argTypes:
    - BT::PortInfo
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 92
    functionName: xsdAttributeType
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - direction
    - typeid
    - type
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string xsdAttributeType(const BT::PortInfo& port_info)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: direction
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:69,1
    - Dst: type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:73,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:74,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:74,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:78,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:82,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:86,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:91,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - ' port_info'
    argTypes:
    - BT::PortInfo
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 67
    functionDepth: 1
    functionLinenumber: 67
    functionLinenumberEnd: 92
    functionName: xsdAttributeType
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - direction
    - typeid
    - type
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string xsdAttributeType(const BT::PortInfo& port_info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:111,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:111,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:113,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 114
    functionName: BT::formatForbiddenChar
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - to_string
    - static_cast<int>
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string formatForbiddenChar(char c)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:118,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:119,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:121,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:126,1
    - Dst: BT::findForbiddenChar
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:129,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:131,1
    - Dst: BT::formatForbiddenChar
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:132,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 11
    argCount: 2
    argNames:
    - ' name'
    - line_number
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 116
    functionDepth: 2
    functionLinenumber: 116
    functionLinenumberEnd: 134
    functionName: BT::validateModelName
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - to_string
    - BT::formatForbiddenChar
    - BT::findForbiddenChar
    - RuntimeError
    - empty
    linkageType: ''
    returnType: void
    signature: void validateModelName(const std::string& name, int line_number)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:138,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:139,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:141,1
    - Dst: std::isdigit
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:143,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:143,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:145,1
    - Dst: BT::findForbiddenChar
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:148,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:150,1
    - Dst: BT::formatForbiddenChar
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:151,1
    - Dst: BT::IsReservedAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:153,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:155,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 2
    argNames:
    - ' name'
    - line_number
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 158
    functionName: BT::validatePortName
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - to_string
    - BT::findForbiddenChar
    - BT::formatForbiddenChar
    - RuntimeError
    - BT::IsReservedAttribute
    - static_cast<unsigned char>
    - std::isdigit
    - empty
    linkageType: ''
    returnType: void
    signature: void validatePortName(const std::string& name, int line_number)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:166,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:172,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:177,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:178,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:180,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:180,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:184,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:185,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 11
    argCount: 2
    argNames:
    - ' name'
    - line_number
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 189
    functionName: BT::validateInstanceName
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - to_string
    - RuntimeError
    - static_cast<unsigned char>
    - empty
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void validateInstanceName(const std::string& name, int line_number)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:206,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:207,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:210,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:213,1
    - Dst: BT::validatePortName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:215,1
    - Dst: auto::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:215,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:216,1
    - Dst: PortInfo::setDefaultValue
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:218,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:220,1
    - Dst: PortInfo::setDescription
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:222,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:224,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - sub_node
    - ' subtree_model'
    argTypes:
    - XMLElement*
    - SubtreeModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 196
    functionDepth: 3
    functionLinenumber: 196
    functionLinenumberEnd: 227
    functionName: BT::parseSubtreeModelPorts
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - auto::GetLineNum
    - auto::Attribute
    - auto::NextSiblingElement
    - XMLElement*::FirstChildElement
    - RuntimeError
    - BT::validatePortName
    - PortInfo::setDefaultValue
    - PortInfo::setDescription
    linkageType: ''
    returnType: void
    signature: void parseSubtreeModelPorts(const XMLElement* sub_node, SubtreeModel&
      subtree_model)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:111,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:111,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:113,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 114
    functionName: BT::formatForbiddenChar
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 2
    functionsReached:
    - to_string
    - static_cast<int>
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string formatForbiddenChar(char c)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:118,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:119,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:121,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:126,1
    - Dst: BT::findForbiddenChar
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:129,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:131,1
    - Dst: BT::formatForbiddenChar
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:132,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 11
    argCount: 2
    argNames:
    - ' name'
    - line_number
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 116
    functionDepth: 2
    functionLinenumber: 116
    functionLinenumberEnd: 134
    functionName: BT::validateModelName
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - to_string
    - BT::formatForbiddenChar
    - BT::findForbiddenChar
    - RuntimeError
    - empty
    linkageType: ''
    returnType: void
    signature: void validateModelName(const std::string& name, int line_number)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:138,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:139,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:141,1
    - Dst: std::isdigit
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:143,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:143,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:145,1
    - Dst: BT::findForbiddenChar
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:148,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:150,1
    - Dst: BT::formatForbiddenChar
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:151,1
    - Dst: BT::IsReservedAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:153,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:155,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 2
    argNames:
    - ' name'
    - line_number
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 158
    functionName: BT::validatePortName
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 1
    functionsReached:
    - to_string
    - BT::findForbiddenChar
    - BT::formatForbiddenChar
    - RuntimeError
    - BT::IsReservedAttribute
    - static_cast<unsigned char>
    - std::isdigit
    - empty
    linkageType: ''
    returnType: void
    signature: void validatePortName(const std::string& name, int line_number)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:166,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:172,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:177,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:178,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:180,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:180,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:184,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:185,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 11
    argCount: 2
    argNames:
    - ' name'
    - line_number
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 189
    functionName: BT::validateInstanceName
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - to_string
    - RuntimeError
    - static_cast<unsigned char>
    - empty
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void validateInstanceName(const std::string& name, int line_number)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:206,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:207,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:210,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:213,1
    - Dst: BT::validatePortName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:215,1
    - Dst: auto::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:215,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:216,1
    - Dst: PortInfo::setDefaultValue
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:218,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:220,1
    - Dst: PortInfo::setDescription
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:222,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:224,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - sub_node
    - ' subtree_model'
    argTypes:
    - XMLElement*
    - SubtreeModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 196
    functionDepth: 3
    functionLinenumber: 196
    functionLinenumberEnd: 227
    functionName: BT::parseSubtreeModelPorts
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - auto::GetLineNum
    - auto::Attribute
    - auto::NextSiblingElement
    - XMLElement*::FirstChildElement
    - RuntimeError
    - BT::validatePortName
    - PortInfo::setDefaultValue
    - PortInfo::setDescription
    linkageType: ''
    returnType: void
    signature: void parseSubtreeModelPorts(const XMLElement* sub_node, SubtreeModel&
      subtree_model)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::filesystem::current_path
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' fact'
    argTypes:
    - BehaviorTreeFactory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 261
    functionName: BT::PImpl
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - std::filesystem::current_path
    linkageType: ''
    returnType: void
    signature: void PImpl(const BehaviorTreeFactory& fact)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::filesystem::current_path
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:266,1
    - Dst: BT::clear
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:267,1
    - Dst: BT::clear
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 269
    functionName: BT::clear
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 3
    functionsReached:
    - std::filesystem::current_path
    - BT::clear
    linkageType: ''
    returnType: void
    signature: void clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PImpl::PImpl
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' factory'
    argTypes:
    - BehaviorTreeFactory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 280
    functionName: BT::XMLParser::XMLParser
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - PImpl::PImpl
    linkageType: ''
    returnType: void
    signature: void XMLParser::XMLParser(const BehaviorTreeFactory& factory)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:282,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - XMLParser
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 283
    functionName: BT::XMLParser::XMLParser
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void XMLParser::XMLParser(XMLParser&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:287,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - XMLParser
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 285
    functionDepth: 0
    functionLinenumber: 285
    functionLinenumberEnd: 289
    functionName: '& XMLParser::operator=(XMLParser&& other) noexcept'
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: XMLParser
    signature: XMLParser & XMLParser::operator=(XMLParser&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 291
    functionDepth: 0
    functionLinenumber: 291
    functionLinenumberEnd: 292
    functionName: XMLParser::~XMLParser()
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLParser::~XMLParser()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opened_documents::push_back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:296,1
    - Dst: std::make_unique<XMLDocument>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:296,1
    - Dst: opened_documents::back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:298,1
    - Dst: XMLDocument*::LoadFile
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:299,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:299,1
    - Dst: std::filesystem::absolute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:301,1
    - Dst: parent_path
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:301,1
    - Dst: loadDocImpl
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' filepath'
    - add_includes
    argTypes:
    - std::filesystem::path
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 304
    functionName: BT::XMLParser::loadFromFile
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - string
    - std::filesystem::absolute
    - opened_documents::push_back
    - opened_documents::back
    - std::make_unique<XMLDocument>
    - parent_path
    - loadDocImpl
    - XMLDocument*::LoadFile
    linkageType: ''
    returnType: void
    signature: void XMLParser::loadFromFile(const std::filesystem::path& filepath,
      bool add_includes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opened_documents::push_back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:308,1
    - Dst: std::make_unique<XMLDocument>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:308,1
    - Dst: opened_documents::back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:310,1
    - Dst: XMLDocument*::Parse
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:311,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:311,1
    - Dst: size
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:311,1
    - Dst: loadDocImpl
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' xml_text'
    - add_includes
    argTypes:
    - std::string
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 306
    functionDepth: 1
    functionLinenumber: 306
    functionLinenumberEnd: 314
    functionName: BT::XMLParser::loadFromText
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - opened_documents::push_back
    - opened_documents::back
    - std::make_unique<XMLDocument>
    - XMLDocument*::Parse
    - size
    - loadDocImpl
    - c_str
    linkageType: ''
    returnType: void
    signature: void XMLParser::loadFromText(const std::string& xml_text, bool add_includes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:321,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 316
    functionDepth: 1
    functionLinenumber: 316
    functionLinenumberEnd: 324
    functionName: BT::XMLParser::registeredBehaviorTrees
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<std::string>
    signature: std::vector<std::string> XMLParser::registeredBehaviorTrees() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:328,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:329,1
    - Dst: auto::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:332,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:333,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:335,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:338,1
    - Dst: parseSubtreeModelPorts
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:341,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - xml_root
    argTypes:
    - XMLElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 326
    functionDepth: 1
    functionLinenumber: 326
    functionLinenumberEnd: 344
    functionName: BT::XMLParser::PImpl::loadSubtreeModel(const XMLElement* xml_root)
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - auto::FirstChildElement
    - parseSubtreeModelPorts
    - auto::Attribute
    - auto::NextSiblingElement
    - XMLElement*::FirstChildElement
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void BT::XMLParser::PImpl::loadSubtreeModel(const XMLElement* xml_root)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument*::Error
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:348,1
    - Dst: snprintf
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:352,1
    - Dst: XMLDocument*::ErrorStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:352,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:353,1
    - Dst: XMLDocument*::RootElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:356,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:359,1
    - Dst: XMLElement*::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:362,1
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:372,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:373,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:380,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:383,1
    - Dst: std::filesystem::path
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:387,1
    - Dst: std::filesystem::u8path
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:389,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:392,1
    - Dst: auto::is_absolute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:396,1
    - Dst: AMENT_INDEX_CPP_VERSION_GTE
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:405,1
    - Dst: ament_index_cpp::get_package_share_path
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:407,1
    - Dst: std::filesystem::path::string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:408,1
    - Dst: ament_index_cpp::get_package_share_directory
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:411,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:414,1
    - Dst: std::filesystem::path
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:418,1
    - Dst: auto::is_absolute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:422,1
    - Dst: push_back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:427,1
    - Dst: std::make_unique<XMLDocument>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:427,1
    - Dst: back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:428,1
    - Dst: std::filesystem::absolute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:432,1
    - Dst: auto::parent_path
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:432,1
    - Dst: XMLDocument*::LoadFile
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:434,1
    - Dst: auto::string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:434,1
    - Dst: loadDocImpl
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:435,1
    - Dst: manifests
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:443,1
    - Dst: std::unordered_map::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:445,1
    - Dst: XMLDocument*::Print
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:449,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:450,1
    - Dst: XMLPrinter::CStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:450,1
    - Dst: XMLPrinter::CStrSize
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:450,1
    - Dst: VerifyXML
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:453,1
    - Dst: loadSubtreeModel
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:455,1
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:458,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:459,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:462,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:464,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:468,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 50
    argCount: 2
    argNames:
    - doc
    - add_includes
    argTypes:
    - XMLDocument*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 473
    functionName: XMLParser::PImpl::loadDocImpl(XMLDocument* doc, bool add_includes)
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - snprintf
    - XMLPrinter::CStrSize
    - std::filesystem::absolute
    - std::make_unique<XMLDocument>
    - auto::string
    - std::unordered_map::insert
    - VerifyXML
    - XMLDocument*::LoadFile
    - string
    - XMLPrinter::CStr
    - std::filesystem::path::string
    - XMLDocument*::Error
    - XMLDocument*::RootElement
    - loadDocImpl
    - XMLDocument*::ErrorStr
    - back
    - std::filesystem::path
    - ament_index_cpp::get_package_share_path
    - ament_index_cpp::get_package_share_directory
    - AMENT_INDEX_CPP_VERSION_GTE
    - push_back
    - auto::Attribute
    - manifests
    - to_string
    - RuntimeError
    - auto::is_absolute
    - loadSubtreeModel
    - XMLDocument*::Print
    - auto::NextSiblingElement
    - XMLElement*::FirstChildElement
    - std::filesystem::u8path
    - XMLElement*::Attribute
    - auto::parent_path
    linkageType: ''
    returnType: void
    signature: void XMLParser::PImpl::loadDocImpl(XMLDocument* doc, bool add_includes)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument::Parse
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:479,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:479,1
    - Dst: size
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:479,1
    - Dst: snprintf
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:484,1
    - Dst: XMLDocument::ErrorName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:484,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:485,1
    - Dst: snprintf
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:491,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:492,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:493,1
    - Dst: FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:498,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:499,1
    - Dst: XMLDocument::RootElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:507,1
    - Dst: StrEqual
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:509,1
    - Dst: XMLElement*::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:509,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:511,1
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:514,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:515,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:521,1
    - Dst: auto::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:521,1
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:528,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:529,1
    - Dst: auto::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:531,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:535,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:538,1
    - Dst: auto::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:538,1
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:547,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:548,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:560,1
    - Dst: auto::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:560,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:561,1
    - Dst: ChildrenCount
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:564,1
    - Dst: auto::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:565,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:566,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:566,1
    - Dst: auto::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:567,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:573,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:575,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:576,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:581,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:583,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:586,1
    - Dst: BT::validateModelName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:588,1
    - Dst: count
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:590,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:592,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:597,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:605,1
    - Dst: BT::validateModelName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:609,1
    - Dst: count
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:610,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:612,1
    - Dst: BT::validateModelName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:623,1
    - Dst: find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:625,1
    - Dst: end
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:626,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:629,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:629,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:639,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:639,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:647,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:647,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:652,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:652,1
    - Dst: auto::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:658,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:659,1
    - Dst: auto::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:661,1
    - Dst: find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:662,1
    - Dst: end
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:663,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:665,1
    - Dst: auto::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:665,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:666,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:677,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:677,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:688,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:688,1
    - Dst: auto::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:694,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:695,1
    - Dst: recursiveStep
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:697,1
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:701,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:702,1
    - Dst: recursiveStep
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:704,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 106
    argCount: 2
    argNames:
    - ' xml_text'
    - ' registered_nodes'
    argTypes:
    - std::string
    - std::unordered_map<std::string, BT::NodeType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 475
    functionDepth: 3
    functionLinenumber: 475
    functionLinenumberEnd: 706
    functionName: BT::VerifyXML
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - snprintf
    - find
    - recursiveStep
    - XMLDocument::ErrorName
    - ThrowError
    - size
    - XMLDocument::RootElement
    - std::string::empty
    - ChildrenCount
    - XMLDocument::Parse
    - string
    - auto::Name
    - auto::GetLineNum
    - auto::Attribute
    - to_string
    - RuntimeError
    - StrEqual
    - FirstChildElement
    - end
    - c_str
    - count
    - auto::FirstChildElement
    - BT::validateModelName
    - auto::NextSiblingElement
    - XMLElement*::FirstChildElement
    - XMLElement*::Name
    linkageType: ''
    returnType: void
    signature: "void VerifyXML(const std::string& xml_text,\n               const
      std::unordered_map<std::string, BT::NodeType>& registered_nodes)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:715,1
    - Dst: opened_documents::front
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:717,1
    - Dst: XMLElement*::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:719,1
    - Dst: tree_roots::size
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:723,1
    - Dst: tree_roots::begin
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:726,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:730,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:737,1
    - Dst: recursivelyCreateSubtree
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:742,1
    - Dst: TryDynamicCastPtr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:743,1
    - Dst: Tree::initialize
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:744,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - ' root_blackboard'
    - main_tree_ID
    argTypes:
    - Blackboard::Ptr
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 746
      start: 708
    functionDepth: 1
    functionLinenumber: 708
    functionLinenumberEnd: 746
    functionName: BT::XMLParser::instantiateTree
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - tree_roots::begin
    - Tree::initialize
    - recursivelyCreateSubtree
    - opened_documents::front
    - tree_roots::size
    - RuntimeError
    - TryDynamicCastPtr
    - XMLElement*::Attribute
    - std::string::empty
    linkageType: ''
    returnType: Tree
    signature: "Tree XMLParser::instantiateTree(const Blackboard::Ptr& root_blackboard,\n
      \                               std::string main_tree_ID)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:750,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 748
    functionDepth: 1
    functionLinenumber: 748
    functionLinenumberEnd: 751
    functionName: BT::XMLParser::clearInternalState
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - clear
    linkageType: ''
    returnType: void
    signature: void XMLParser::clearInternalState()
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: XMLElement*::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:759,1
    - Dst: XMLElement*::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:760,1
    - Dst: convertFromString<NodeType>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:762,1
    - Dst: builders
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:770,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:772,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:778,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:786,1
    - Dst: XMLElement*::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:793,1
    - Dst: validateInstanceName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:799,1
    - Dst: XMLElement*::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:799,1
    - Dst: manifests
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:804,1
    - Dst: manifests
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:805,1
    - Dst: XMLElement*::FirstAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:813,1
    - Dst: XMLAttribute*::Next
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:814,1
    - Dst: XMLAttribute*::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:816,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:817,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:818,1
    - Dst: TreeNodeManifest*::ports::find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:822,1
    - Dst: TreeNodeManifest*::ports::end
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:823,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:825,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:825,1
    - Dst: XMLElement*::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:826,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:827,1
    - Dst: XMLAttribute*::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:827,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:834,1
    - Dst: std::string::front
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:835,1
    - Dst: std::string::back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:836,1
    - Dst: converter
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:838,1
    - Dst: isStronglyTyped
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:838,1
    - Dst: converter
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:843,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:847,1
    - Dst: typeName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:849,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:850,1
    - Dst: IsReservedAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:858,1
    - Dst: getUID
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:867,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:872,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:872,1
    - Dst: XMLElement*::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:876,1
    - Dst: insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:878,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:878,1
    - Dst: NonPortAttributes::erase
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:879,1
    - Dst: static_cast<PreCond>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:885,1
    - Dst: AddCondition
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:886,1
    - Dst: toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:886,1
    - Dst: static_cast<PostCond>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:890,1
    - Dst: AddCondition
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:891,1
    - Dst: toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:891,1
    - Dst: instantiateTreeNode
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:902,1
    - Dst: toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:902,1
    - Dst: dynamic_cast<SubTreeNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:905,1
    - Dst: TreeNode::Ptr::get
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:905,1
    - Dst: auto::setSubtreeID
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:908,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:915,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:917,1
    - Dst: TreeNodeManifest*::ports::count
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:924,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:926,1
    - Dst: PortsRemapping::find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:938,1
    - Dst: PortsRemapping::end
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:939,1
    - Dst: BT::TreeNode::getRemappedKey
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:945,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:948,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:948,1
    - Dst: entryInfo
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:951,1
    - Dst: auto::isStronglyTyped
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:955,1
    - Dst: isStronglyTyped
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:955,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:956,1
    - Dst: type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:956,1
    - Dst: direction
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:961,1
    - Dst: polymorphicCastRegistry
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:963,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:963,1
    - Dst: type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:964,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:971,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:971,1
    - Dst: debugMessage
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:975,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:977,1
    - Dst: demangle
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:979,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:979,1
    - Dst: demangle
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:980,1
    - Dst: type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:980,1
    - Dst: createEntry
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:986,1
    - Dst: TreeNodeManifest*::ports::find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:995,1
    - Dst: TreeNodeManifest*::ports::end
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:996,1
    - Dst: auto::second::direction
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:998,1
    - Dst: NodeConfig::input_ports::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1001,1
    - Dst: NodeConfig::output_ports::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1005,1
    - Dst: direction
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1016,1
    - Dst: defaultValueString
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1017,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1018,1
    - Dst: NodeConfig::input_ports::count
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1020,1
    - Dst: NodeConfig::input_ports::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1022,1
    - Dst: NodeConfig::output_ports::count
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1026,1
    - Dst: BT::TreeNode::isBlackboardPointer
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1027,1
    - Dst: NodeConfig::output_ports::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1029,1
    - Dst: instantiateTreeNode
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1034,1
    - Dst: dynamic_cast<ControlNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1040,1
    - Dst: get
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1040,1
    - Dst: auto*::addChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1042,1
    - Dst: TreeNode::Ptr::get
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1042,1
    - Dst: dynamic_cast<DecoratorNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1044,1
    - Dst: get
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1044,1
    - Dst: auto*::setChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1046,1
    - Dst: TreeNode::Ptr::get
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1046,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 124
    argCount: 5
    argNames:
    - element
    - ' blackboard'
    - ' node_parent'
    - ' prefix_path'
    - ' output_tree'
    argTypes:
    - XMLElement*
    - Blackboard::Ptr
    - TreeNode::Ptr
    - std::string
    - Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1051
      start: 753
    functionDepth: 3
    functionLinenumber: 753
    functionLinenumberEnd: 1051
    functionName: "XMLParser::PImpl::createNodeFromXML(const XMLElement* element,\n
      \                                                 const Blackboard::Ptr& blackboard,\n
      \                                                 const TreeNode::Ptr& node_parent,\n
      \                                                 const std::string& prefix_path,\n
      \                                                 Tree& output_tree)"
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - get
    - NodeConfig::input_ports::count
    - XMLAttribute*::Value
    - auto::second::direction
    - XMLAttribute*::Next
    - TreeNodeManifest*::ports::count
    - TreeNodeManifest*::ports::end
    - PortsRemapping::end
    - polymorphicCastRegistry
    - empty
    - NodeConfig::output_ports::count
    - toStr
    - string
    - auto::setSubtreeID
    - NodeConfig::output_ports::insert
    - static_cast<std::string>
    - TreeNode::Ptr::get
    - defaultValueString
    - XMLAttribute*::GetLineNum
    - static_cast<PreCond>
    - std::string::front
    - dynamic_cast<SubTreeNode*>
    - NonPortAttributes::erase
    - isStronglyTyped
    - std::string::back
    - type
    - AddCondition
    - direction
    - debugMessage
    - BT::TreeNode::isBlackboardPointer
    - entryInfo
    - XMLElement*::FirstAttribute
    - convertFromString<NodeType>
    - dynamic_cast<ControlNode*>
    - auto*::addChild
    - XMLElement*::GetLineNum
    - BT::TreeNode::getRemappedKey
    - to_string
    - manifests
    - RuntimeError
    - IsReservedAttribute
    - validateInstanceName
    - XMLAttribute*::Name
    - static_cast<PostCond>
    - instantiateTreeNode
    - converter
    - PortsRemapping::find
    - TreeNodeManifest*::ports::find
    - std::string::size
    - auto::isStronglyTyped
    - auto::type
    - typeid
    - builders
    - typeName
    - createEntry
    - auto::value
    - NodeConfig::input_ports::insert
    - auto*::setChild
    - LogicError
    - getUID
    - dynamic_cast<DecoratorNode*>
    - StrCat
    - IsAllowedPortName
    - demangle
    - insert
    - XMLElement*::Attribute
    - XMLElement*::Name
    linkageType: ''
    returnType: TreeNode::Ptr
    signature: "TreeNode::Ptr XMLParser::PImpl::createNodeFromXML(const XMLElement*
      element,\n                                                  const Blackboard::Ptr&
      blackboard,\n                                                  const TreeNode::Ptr&
      node_parent,\n                                                  const std::string&
      prefix_path,\n                                                  Tree& output_tree)"
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1058,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1060,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1072,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1074,1
    - Dst: createNodeFromXML
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1078,1
    - Dst: nodes::push_back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1079,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1082,1
    - Dst: FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1084,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1085,1
    - Dst: recursiveStep
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1087,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1092,1
    - Dst: auto::setPolymorphicCastRegistry
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1094,1
    - Dst: polymorphicCastRegistryPtr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1094,1
    - Dst: Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1095,1
    - Dst: FirstAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1099,1
    - Dst: auto::Next
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1099,1
    - Dst: auto::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1101,1
    - Dst: auto::Value
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1102,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1105,1
    - Dst: convertFromString<bool>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1110,1
    - Dst: auto::enableAutoRemapping
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1111,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1114,1
    - Dst: auto::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1114,1
    - Dst: std::unordered_map::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1118,1
    - Dst: find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1123,1
    - Dst: end
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1124,1
    - Dst: std::unordered_map::find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1132,1
    - Dst: std::unordered_map::end
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1134,1
    - Dst: defaultValueString
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1137,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1139,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1142,1
    - Dst: std::unordered_map::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1146,1
    - Dst: defaultValueString
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1146,1
    - Dst: BT::TreeNode::isBlackboardPointer
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1154,1
    - Dst: BT::TreeNode::stripBlackboardPointer
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1157,1
    - Dst: auto::addSubtreeRemapping
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1158,1
    - Dst: auto::enableAutoRemapping
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1164,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1172,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1174,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1175,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1179,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1180,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1181,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1184,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1185,1
    - Dst: magic_enum::detail::reflected_min
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1187,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1188,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1190,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1190,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1194,1
    - Dst: parseDouble
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1203,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1205,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1212,1
    - Dst: auto::enableAutoRemapping
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1214,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1219,1
    - Dst: Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1223,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1229,1
    - Dst: auto::UID
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1229,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1238,1
    - Dst: recursivelyCreateSubtree
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1246,1
    - Dst: find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1253,1
    - Dst: end
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1254,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1256,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1256,1
    - Dst: auto::second::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1259,1
    - Dst: std::make_shared<Tree::Subtree>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1264,1
    - Dst: subtrees::push_back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1268,1
    - Dst: recursiveStep
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1270,1
    - Dst: erase
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1271,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 91
    argCount: 7
    argNames:
    - ' tree_ID'
    - ' tree_path'
    - ' prefix_path'
    - ' output_tree'
    - blackboard
    - ' root_node'
    - ' ancestors'
    argTypes:
    - std::string
    - std::string
    - std::string
    - Tree
    - Blackboard::Ptr
    - TreeNode::Ptr
    - std::unordered_set<std::string>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1272
      start: 1053
    functionDepth: 3
    functionLinenumber: 1053
    functionLinenumberEnd: 1272
    functionName: "BT::XMLParser::PImpl::recursivelyCreateSubtree(\n    const std::string&
      tree_ID, const std::string& tree_path,\n    const std::string& prefix_path,
      Tree& output_tree, Blackboard::Ptr blackboard,\n    const TreeNode::Ptr& root_node,
      std::unordered_set<std::string>& ancestors)"
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - find
    - recursiveStep
    - convertFromString<bool>
    - std::unordered_map::insert
    - parseDouble
    - erase
    - createNodeFromXML
    - auto::second::FirstChildElement
    - std::runtime_error
    - std::string::empty
    - Attribute
    - auto::Next
    - string
    - BT::Blackboard::create
    - BT::TreeNode::stripBlackboardPointer
    - std::string::find
    - defaultValueString
    - std::unordered_map::end
    - std::unordered_map::find
    - magic_enum::detail::reflected_max
    - std::errc
    - auto::UID
    - BT::TreeNode::isBlackboardPointer
    - FirstAttribute
    - auto::set
    - auto::Name
    - recursivelyCreateSubtree
    - to_string
    - RuntimeError
    - end
    - FirstChildElement
    - polymorphicCastRegistryPtr
    - magic_enum::detail::reflected_min
    - std::from_chars
    - std::string::size
    - auto::type
    - std::string::data
    - nodes::push_back
    - auto::NextSiblingElement
    - StrCat
    - IsAllowedPortName
    - std::make_shared<Tree::Subtree>
    - insert
    - auto::addSubtreeRemapping
    - auto::setPolymorphicCastRegistry
    - subtrees::push_back
    - auto::enableAutoRemapping
    - auto::Value
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: "void BT::XMLParser::PImpl::recursivelyCreateSubtree(\n    const std::string&
      tree_ID, const std::string& tree_path,\n    const std::string& prefix_path,
      Tree& output_tree, Blackboard::Ptr blackboard,\n    const TreeNode::Ptr& root_node,
      std::unordered_set<std::string>& ancestors)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLElement*::FirstAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1277,1
    - Dst: XMLAttribute*::Next
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1278,1
    - Dst: XMLAttribute*::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1280,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1281,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1282,1
    - Dst: BT::TreeNode::isBlackboardPointer
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1282,1
    - Dst: BT::TreeNode::stripBlackboardPointer
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1284,1
    - Dst: push_back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1285,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1285,1
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1289,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1290,1
    - Dst: getPortsRecursively
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1292,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - element
    - ' output_ports'
    argTypes:
    - XMLElement*
    - std::vector<std::string>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1294
      start: 1274
    functionDepth: 3
    functionLinenumber: 1274
    functionLinenumberEnd: 1294
    functionName: "XMLParser::PImpl::getPortsRecursively(const XMLElement* element,\n
      \                                          std::vector<std::string>& output_ports)"
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - XMLElement*::FirstAttribute
    - XMLAttribute*::Value
    - BT::TreeNode::stripBlackboardPointer
    - static_cast<std::string>
    - XMLAttribute*::Next
    - push_back
    - auto::NextSiblingElement
    - IsAllowedPortName
    - XMLElement*::FirstChildElement
    - getPortsRecursively
    - BT::TreeNode::isBlackboardPointer
    - XMLAttribute*::Name
    linkageType: ''
    returnType: void
    signature: "void XMLParser::PImpl::getPortsRecursively(const XMLElement* element,\n
      \                                          std::vector<std::string>& output_ports)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1301,1
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1301,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1302,1
    - Dst: registration_ID::c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1302,1
    - Dst: direction
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1307,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1310,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1313,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1316,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1320,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1320,1
    - Dst: type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1321,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1321,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1323,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1323,1
    - Dst: type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1323,1
    - Dst: defaultValue
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1325,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1327,1
    - Dst: defaultValueString
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1327,1
    - Dst: description
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1330,1
    - Dst: XMLElement*::SetText
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1332,1
    - Dst: description
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1332,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1334,1
    - Dst: metadata::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1337,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1339,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1343,1
    - Dst: auto::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1344,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1344,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1344,1
    - Dst: auto::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1345,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1348,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1351,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 3
    argNames:
    - ' model'
    - ' doc'
    - model_root
    argTypes:
    - TreeNodeManifest
    - XMLDocument
    - XMLElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1352
      start: 1298
    functionDepth: 1
    functionLinenumber: 1298
    functionLinenumberEnd: 1352
    functionName: BT::addNodeModelToXML
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - description
    - XMLElement*::SetAttribute
    - typeid
    - BT::demangle
    - auto::SetAttribute
    - auto::InsertEndChild
    - registration_ID::c_str
    - BT::toStr
    - defaultValueString
    - XMLElement*::SetText
    - metadata::empty
    - defaultValue
    - NewElement
    - direction
    - XMLElement*::InsertEndChild
    - type
    - c_str
    linkageType: ''
    returnType: void
    signature: "void addNodeModelToXML(const TreeNodeManifest& model, XMLDocument&
      doc,\n                       XMLElement* model_root)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const SubTreeNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1361,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1363,1
    - Dst: registrationName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1363,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1364,1
    - Dst: auto*::subtreeID
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1364,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1367,1
    - Dst: auto*::config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1367,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1367,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1372,1
    - Dst: registrationName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1372,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1373,1
    - Dst: name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1373,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1378,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1378,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1381,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1383,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1383,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1383,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1385,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1388,1
    - Dst: count
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1388,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1390,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1390,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1390,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1394,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1396,1
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1396,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1396,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1398,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1400,1
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1400,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1400,1
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1403,1
    - Dst: dynamic_cast<const ControlNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1405,1
    - Dst: auto*::children
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1407,1
    - Dst: addNode
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1409,1
    - Dst: dynamic_cast<const DecoratorNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1412,1
    - Dst: auto*::type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1414,1
    - Dst: addNode
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1416,1
    - Dst: auto*::child
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1416,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1423,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1424,1
    - Dst: auto*::tree_ID::c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1424,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1425,1
    - Dst: auto*::instance_name::c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1425,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1426,1
    - Dst: addNode
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1427,1
    - Dst: auto*::nodes::front
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1427,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1430,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1431,1
    - Dst: BehaviorTreeFactory::builtinNodes
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1438,1
    - Dst: std::map::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1440,1
    - Dst: BT::addNodeModelToXML
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1446,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 48
    argCount: 5
    argNames:
    - ' tree'
    - ' doc'
    - rootXML
    - add_metadata
    - add_builtin_models
    argTypes:
    - Tree
    - XMLDocument
    - XMLElement*
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1448
      start: 1354
    functionDepth: 2
    functionLinenumber: 1354
    functionLinenumberEnd: 1448
    functionName: BT::addTreeToXML
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - UID
    - XMLElement*::SetAttribute
    - config
    - auto*::subtreeID
    - auto*::type
    - std::map::insert
    - auto*::tree_ID::c_str
    - auto*::config
    - BT::toStr
    - BehaviorTreeFactory::builtinNodes
    - NewElement
    - XMLElement*::InsertEndChild
    - BT::addNodeModelToXML
    - auto*::child
    - dynamic_cast<const ControlNode*>
    - c_str
    - dynamic_cast<const SubTreeNode*>
    - registrationName
    - auto*::nodes::front
    - InsertEndChild
    - count
    - auto*::children
    - name
    - auto*::instance_name::c_str
    - addNode
    - dynamic_cast<const DecoratorNode*>
    linkageType: ''
    returnType: void
    signature: "void addTreeToXML(const Tree& tree, XMLDocument& doc, XMLElement*
      rootXML,\n                  bool add_metadata, bool add_builtin_models)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1301,1
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1301,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1302,1
    - Dst: registration_ID::c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1302,1
    - Dst: direction
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1307,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1310,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1313,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1316,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1320,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1320,1
    - Dst: type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1321,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1321,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1323,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1323,1
    - Dst: type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1323,1
    - Dst: defaultValue
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1325,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1327,1
    - Dst: defaultValueString
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1327,1
    - Dst: description
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1330,1
    - Dst: XMLElement*::SetText
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1332,1
    - Dst: description
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1332,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1334,1
    - Dst: metadata::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1337,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1339,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1343,1
    - Dst: auto::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1344,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1344,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1344,1
    - Dst: auto::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1345,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1348,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1351,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 3
    argNames:
    - ' model'
    - ' doc'
    - model_root
    argTypes:
    - TreeNodeManifest
    - XMLDocument
    - XMLElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1352
      start: 1298
    functionDepth: 1
    functionLinenumber: 1298
    functionLinenumberEnd: 1352
    functionName: BT::addNodeModelToXML
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 1
    functionsReached:
    - description
    - XMLElement*::SetAttribute
    - typeid
    - BT::demangle
    - auto::SetAttribute
    - auto::InsertEndChild
    - registration_ID::c_str
    - BT::toStr
    - defaultValueString
    - XMLElement*::SetText
    - metadata::empty
    - defaultValue
    - NewElement
    - direction
    - XMLElement*::InsertEndChild
    - type
    - c_str
    linkageType: ''
    returnType: void
    signature: "void addNodeModelToXML(const TreeNodeManifest& model, XMLDocument&
      doc,\n                       XMLElement* model_root)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const SubTreeNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1361,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1363,1
    - Dst: registrationName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1363,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1364,1
    - Dst: auto*::subtreeID
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1364,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1367,1
    - Dst: auto*::config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1367,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1367,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1372,1
    - Dst: registrationName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1372,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1373,1
    - Dst: name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1373,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1378,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1378,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1381,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1383,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1383,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1383,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1385,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1388,1
    - Dst: count
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1388,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1390,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1390,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1390,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1394,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1396,1
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1396,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1396,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1398,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1400,1
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1400,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1400,1
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1403,1
    - Dst: dynamic_cast<const ControlNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1405,1
    - Dst: auto*::children
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1407,1
    - Dst: addNode
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1409,1
    - Dst: dynamic_cast<const DecoratorNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1412,1
    - Dst: auto*::type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1414,1
    - Dst: addNode
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1416,1
    - Dst: auto*::child
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1416,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1423,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1424,1
    - Dst: auto*::tree_ID::c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1424,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1425,1
    - Dst: auto*::instance_name::c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1425,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1426,1
    - Dst: addNode
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1427,1
    - Dst: auto*::nodes::front
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1427,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1430,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1431,1
    - Dst: BehaviorTreeFactory::builtinNodes
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1438,1
    - Dst: std::map::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1440,1
    - Dst: BT::addNodeModelToXML
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1446,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 48
    argCount: 5
    argNames:
    - ' tree'
    - ' doc'
    - rootXML
    - add_metadata
    - add_builtin_models
    argTypes:
    - Tree
    - XMLDocument
    - XMLElement*
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1448
      start: 1354
    functionDepth: 2
    functionLinenumber: 1354
    functionLinenumberEnd: 1448
    functionName: BT::addTreeToXML
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - UID
    - XMLElement*::SetAttribute
    - config
    - auto*::subtreeID
    - auto*::type
    - std::map::insert
    - auto*::tree_ID::c_str
    - auto*::config
    - BT::toStr
    - BehaviorTreeFactory::builtinNodes
    - NewElement
    - XMLElement*::InsertEndChild
    - BT::addNodeModelToXML
    - auto*::child
    - dynamic_cast<const ControlNode*>
    - c_str
    - dynamic_cast<const SubTreeNode*>
    - registrationName
    - auto*::nodes::front
    - InsertEndChild
    - count
    - auto*::children
    - name
    - auto*::instance_name::c_str
    - addNode
    - dynamic_cast<const DecoratorNode*>
    linkageType: ''
    returnType: void
    signature: "void addTreeToXML(const Tree& tree, XMLDocument& doc, XMLElement*
      rootXML,\n                  bool add_metadata, bool add_builtin_models)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1456,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1457,1
    - Dst: XMLDocument::InsertFirstChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1458,1
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1460,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1461,1
    - Dst: manifests
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1465,1
    - Dst: builtinNodes
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1467,1
    - Dst: std::map::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1469,1
    - Dst: BT::addNodeModelToXML
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1475,1
    - Dst: XMLDocument::Print
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1479,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1480,1
    - Dst: XMLPrinter::CStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1480,1
    - Dst: XMLPrinter::CStrSize
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1480,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - ' factory'
    - include_builtin
    argTypes:
    - BehaviorTreeFactory
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1481
      start: 1451
    functionDepth: 2
    functionLinenumber: 1451
    functionLinenumberEnd: 1481
    functionName: BT::writeTreeNodesModelXML
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 1
    functionsReached:
    - XMLDocument::NewElement
    - XMLElement*::SetAttribute
    - XMLPrinter::CStrSize
    - string
    - BT::addNodeModelToXML
    - XMLPrinter::CStr
    - XMLDocument::Print
    - manifests
    - builtinNodes
    - std::map::insert
    - XMLElement*::InsertEndChild
    - XMLDocument::InsertFirstChild
    linkageType: ''
    returnType: std::string
    signature: "std::string writeTreeNodesModelXML(const BehaviorTreeFactory& factory,\n
      \                                  bool include_builtin)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: manifests
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1492,1
    - Dst: std::map::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1494,1
    - Dst: XMLDocument::NewDeclaration
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1500,1
    - Dst: XMLDocument::InsertFirstChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1502,1
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1509,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1510,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1511,1
    - Dst: XMLDocument::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1512,1
    - Dst: XMLDocument::Parse
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1516,1
    - Dst: XMLDocument::Error
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1517,1
    - Dst: XMLDocument::ErrorStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1519,1
    - Dst: XMLDocument::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1523,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1524,1
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1526,1
    - Dst: auto::DeepClone
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1526,1
    - Dst: XMLDocument::NewComment
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1531,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1532,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1535,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1594,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1602,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1639,1
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1642,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1644,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1653,1
    - Dst: std::ostringstream::str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1653,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1654,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1658,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1668,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1678,1
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1689,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1690,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1690,1
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1700,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1701,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1702,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1703,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1704,1
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1711,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1712,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1713,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1714,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1715,1
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1717,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1718,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1719,1
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1722,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1723,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1723,1
    - Dst: xsdAttributeType
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1724,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1725,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1727,1
    - Dst: auto::c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1727,1
    - Dst: defaultValue
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1729,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1731,1
    - Dst: defaultValueString
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1731,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1735,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1737,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1741,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1746,1
    - Dst: XMLDocument::Print
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1750,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1751,1
    - Dst: XMLPrinter::CStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1751,1
    - Dst: XMLPrinter::CStrSize
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1751,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 66
    argCount: 1
    argNames:
    - ' factory'
    argTypes:
    - BehaviorTreeFactory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1752
      start: 1483
    functionDepth: 2
    functionLinenumber: 1483
    functionLinenumberEnd: 1752
    functionName: BT::writeTreeXSD
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - XMLElement*::SetAttribute
    - XMLPrinter::CStrSize
    - XMLDocument::Print
    - XMLDocument::Error
    - std::map::insert
    - XMLDocument::InsertEndChild
    - XMLDocument::Parse
    - string
    - XMLPrinter::CStr
    - defaultValueString
    - parse_and_insert
    - XMLElement*::InsertEndChild
    - xsdAttributeType
    - auto::DeepClone
    - manifests
    - defaultValue
    - XMLDocument::FirstChildElement
    - XMLDocument::NewDeclaration
    - auto::c_str
    - c_str
    - XMLDocument::NewComment
    - XMLDocument::NewElement
    - InsertEndChild
    - auto::NextSiblingElement
    - auto::empty
    - std::ostringstream::str
    - XMLDocument::InsertFirstChild
    - XMLDocument::ErrorStr
    linkageType: ''
    returnType: std::string
    signature: std::string writeTreeXSD(const BehaviorTreeFactory& factory)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1758,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1759,1
    - Dst: XMLDocument::InsertFirstChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1760,1
    - Dst: BT::addTreeToXML
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1762,1
    - Dst: XMLDocument::Print
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1765,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1766,1
    - Dst: XMLPrinter::CStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1766,1
    - Dst: XMLPrinter::CStrSize
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1766,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' tree'
    - add_metadata
    - add_builtin_models
    argTypes:
    - Tree
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1767
      start: 1754
    functionDepth: 3
    functionLinenumber: 1754
    functionLinenumberEnd: 1767
    functionName: BT::WriteTreeToXML
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - XMLDocument::NewElement
    - XMLElement*::SetAttribute
    - XMLPrinter::CStrSize
    - string
    - XMLPrinter::CStr
    - XMLDocument::Print
    - BT::addTreeToXML
    - XMLDocument::InsertFirstChild
    linkageType: ''
    returnType: std::string
    signature: std::string WriteTreeToXML(const Tree& tree, bool add_metadata, bool
      add_builtin_models)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:111,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:111,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:113,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 114
    functionName: BT::formatForbiddenChar
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 4
    functionsReached:
    - to_string
    - static_cast<int>
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string formatForbiddenChar(char c)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:118,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:119,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:121,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:126,1
    - Dst: BT::findForbiddenChar
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:129,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:131,1
    - Dst: BT::formatForbiddenChar
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:132,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 11
    argCount: 2
    argNames:
    - ' name'
    - line_number
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 116
    functionDepth: 2
    functionLinenumber: 116
    functionLinenumberEnd: 134
    functionName: BT::validateModelName
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 1
    functionsReached:
    - to_string
    - BT::formatForbiddenChar
    - BT::findForbiddenChar
    - RuntimeError
    - empty
    linkageType: ''
    returnType: void
    signature: void validateModelName(const std::string& name, int line_number)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:138,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:139,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:141,1
    - Dst: std::isdigit
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:143,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:143,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:145,1
    - Dst: BT::findForbiddenChar
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:148,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:150,1
    - Dst: BT::formatForbiddenChar
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:151,1
    - Dst: BT::IsReservedAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:153,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:155,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 2
    argNames:
    - ' name'
    - line_number
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 158
    functionName: BT::validatePortName
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 2
    functionsReached:
    - to_string
    - BT::findForbiddenChar
    - BT::formatForbiddenChar
    - RuntimeError
    - BT::IsReservedAttribute
    - static_cast<unsigned char>
    - std::isdigit
    - empty
    linkageType: ''
    returnType: void
    signature: void validatePortName(const std::string& name, int line_number)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:166,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:172,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:177,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:178,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:180,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:180,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:184,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:185,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 11
    argCount: 2
    argNames:
    - ' name'
    - line_number
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 189
    functionName: BT::validateInstanceName
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - to_string
    - RuntimeError
    - static_cast<unsigned char>
    - empty
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void validateInstanceName(const std::string& name, int line_number)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:206,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:207,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:210,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:213,1
    - Dst: BT::validatePortName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:215,1
    - Dst: auto::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:215,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:216,1
    - Dst: PortInfo::setDefaultValue
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:218,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:220,1
    - Dst: PortInfo::setDescription
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:222,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:224,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - sub_node
    - ' subtree_model'
    argTypes:
    - XMLElement*
    - SubtreeModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 196
    functionDepth: 3
    functionLinenumber: 196
    functionLinenumberEnd: 227
    functionName: BT::parseSubtreeModelPorts
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - auto::GetLineNum
    - auto::Attribute
    - auto::NextSiblingElement
    - XMLElement*::FirstChildElement
    - RuntimeError
    - BT::validatePortName
    - PortInfo::setDefaultValue
    - PortInfo::setDescription
    linkageType: ''
    returnType: void
    signature: void parseSubtreeModelPorts(const XMLElement* sub_node, SubtreeModel&
      subtree_model)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:111,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:111,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:113,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - c
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 107
    functionDepth: 1
    functionLinenumber: 107
    functionLinenumberEnd: 114
    functionName: BT::formatForbiddenChar
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 6
    functionsReached:
    - to_string
    - static_cast<int>
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string formatForbiddenChar(char c)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:118,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:119,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:121,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:126,1
    - Dst: BT::findForbiddenChar
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:129,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:131,1
    - Dst: BT::formatForbiddenChar
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:132,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 11
    argCount: 2
    argNames:
    - ' name'
    - line_number
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 116
    functionDepth: 2
    functionLinenumber: 116
    functionLinenumberEnd: 134
    functionName: BT::validateModelName
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 1
    functionsReached:
    - to_string
    - BT::formatForbiddenChar
    - BT::findForbiddenChar
    - RuntimeError
    - empty
    linkageType: ''
    returnType: void
    signature: void validateModelName(const std::string& name, int line_number)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:138,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:139,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:141,1
    - Dst: std::isdigit
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:143,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:143,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:145,1
    - Dst: BT::findForbiddenChar
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:148,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:150,1
    - Dst: BT::formatForbiddenChar
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:151,1
    - Dst: BT::IsReservedAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:153,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:155,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 2
    argNames:
    - ' name'
    - line_number
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 136
    functionDepth: 2
    functionLinenumber: 136
    functionLinenumberEnd: 158
    functionName: BT::validatePortName
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 3
    functionsReached:
    - to_string
    - BT::findForbiddenChar
    - BT::formatForbiddenChar
    - RuntimeError
    - BT::IsReservedAttribute
    - static_cast<unsigned char>
    - std::isdigit
    - empty
    linkageType: ''
    returnType: void
    signature: void validatePortName(const std::string& name, int line_number)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:166,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:172,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:177,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:178,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:180,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:180,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:184,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:185,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 11
    argCount: 2
    argNames:
    - ' name'
    - line_number
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 189
      start: 160
    functionDepth: 1
    functionLinenumber: 160
    functionLinenumberEnd: 189
    functionName: BT::validateInstanceName
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - to_string
    - RuntimeError
    - static_cast<unsigned char>
    - empty
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void validateInstanceName(const std::string& name, int line_number)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:206,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:207,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:210,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:213,1
    - Dst: BT::validatePortName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:215,1
    - Dst: auto::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:215,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:216,1
    - Dst: PortInfo::setDefaultValue
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:218,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:220,1
    - Dst: PortInfo::setDescription
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:222,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:224,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 2
    argNames:
    - sub_node
    - ' subtree_model'
    argTypes:
    - XMLElement*
    - SubtreeModel
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 196
    functionDepth: 3
    functionLinenumber: 196
    functionLinenumberEnd: 227
    functionName: BT::parseSubtreeModelPorts
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - auto::GetLineNum
    - auto::Attribute
    - auto::NextSiblingElement
    - XMLElement*::FirstChildElement
    - RuntimeError
    - BT::validatePortName
    - PortInfo::setDefaultValue
    - PortInfo::setDescription
    linkageType: ''
    returnType: void
    signature: void parseSubtreeModelPorts(const XMLElement* sub_node, SubtreeModel&
      subtree_model)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::filesystem::current_path
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' fact'
    argTypes:
    - BehaviorTreeFactory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 261
    functionName: BT::PImpl
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - std::filesystem::current_path
    linkageType: ''
    returnType: void
    signature: void PImpl(const BehaviorTreeFactory& fact)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::filesystem::current_path
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:266,1
    - Dst: BT::clear
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:267,1
    - Dst: BT::clear
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:268,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 269
    functionName: BT::clear
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 4
    functionsReached:
    - std::filesystem::current_path
    - BT::clear
    linkageType: ''
    returnType: void
    signature: void clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PImpl::PImpl
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' factory'
    argTypes:
    - BehaviorTreeFactory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 279
    functionDepth: 0
    functionLinenumber: 279
    functionLinenumberEnd: 280
    functionName: BT::XMLParser::XMLParser
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - PImpl::PImpl
    linkageType: ''
    returnType: void
    signature: void XMLParser::XMLParser(const BehaviorTreeFactory& factory)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:282,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - XMLParser
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 283
    functionName: BT::XMLParser::XMLParser
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void XMLParser::XMLParser(XMLParser&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:287,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - XMLParser
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 289
      start: 285
    functionDepth: 0
    functionLinenumber: 285
    functionLinenumberEnd: 289
    functionName: '& XMLParser::operator=(XMLParser&& other) noexcept'
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: XMLParser
    signature: XMLParser & XMLParser::operator=(XMLParser&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 291
    functionDepth: 0
    functionLinenumber: 291
    functionLinenumberEnd: 292
    functionName: XMLParser::~XMLParser()
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLParser::~XMLParser()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opened_documents::push_back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:296,1
    - Dst: std::make_unique<XMLDocument>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:296,1
    - Dst: opened_documents::back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:298,1
    - Dst: XMLDocument*::LoadFile
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:299,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:299,1
    - Dst: std::filesystem::absolute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:301,1
    - Dst: parent_path
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:301,1
    - Dst: loadDocImpl
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' filepath'
    - add_includes
    argTypes:
    - std::filesystem::path
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 304
      start: 294
    functionDepth: 1
    functionLinenumber: 294
    functionLinenumberEnd: 304
    functionName: BT::XMLParser::loadFromFile
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - string
    - std::filesystem::absolute
    - opened_documents::push_back
    - opened_documents::back
    - std::make_unique<XMLDocument>
    - parent_path
    - loadDocImpl
    - XMLDocument*::LoadFile
    linkageType: ''
    returnType: void
    signature: void XMLParser::loadFromFile(const std::filesystem::path& filepath,
      bool add_includes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: opened_documents::push_back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:308,1
    - Dst: std::make_unique<XMLDocument>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:308,1
    - Dst: opened_documents::back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:310,1
    - Dst: XMLDocument*::Parse
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:311,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:311,1
    - Dst: size
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:311,1
    - Dst: loadDocImpl
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' xml_text'
    - add_includes
    argTypes:
    - std::string
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 306
    functionDepth: 1
    functionLinenumber: 306
    functionLinenumberEnd: 314
    functionName: BT::XMLParser::loadFromText
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - opened_documents::push_back
    - opened_documents::back
    - std::make_unique<XMLDocument>
    - XMLDocument*::Parse
    - size
    - loadDocImpl
    - c_str
    linkageType: ''
    returnType: void
    signature: void XMLParser::loadFromText(const std::string& xml_text, bool add_includes)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:321,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 324
      start: 316
    functionDepth: 1
    functionLinenumber: 316
    functionLinenumberEnd: 324
    functionName: BT::XMLParser::registeredBehaviorTrees
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<std::string>
    signature: std::vector<std::string> XMLParser::registeredBehaviorTrees() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:328,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:329,1
    - Dst: auto::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:332,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:333,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:335,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:338,1
    - Dst: parseSubtreeModelPorts
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:341,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - xml_root
    argTypes:
    - XMLElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 326
    functionDepth: 1
    functionLinenumber: 326
    functionLinenumberEnd: 344
    functionName: BT::XMLParser::PImpl::loadSubtreeModel(const XMLElement* xml_root)
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - auto::FirstChildElement
    - parseSubtreeModelPorts
    - auto::Attribute
    - auto::NextSiblingElement
    - XMLElement*::FirstChildElement
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void BT::XMLParser::PImpl::loadSubtreeModel(const XMLElement* xml_root)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument*::Error
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:348,1
    - Dst: snprintf
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:352,1
    - Dst: XMLDocument*::ErrorStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:352,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:353,1
    - Dst: XMLDocument*::RootElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:356,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:359,1
    - Dst: XMLElement*::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:362,1
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:372,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:373,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:380,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:383,1
    - Dst: std::filesystem::path
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:387,1
    - Dst: std::filesystem::u8path
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:389,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:392,1
    - Dst: auto::is_absolute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:396,1
    - Dst: AMENT_INDEX_CPP_VERSION_GTE
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:405,1
    - Dst: ament_index_cpp::get_package_share_path
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:407,1
    - Dst: std::filesystem::path::string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:408,1
    - Dst: ament_index_cpp::get_package_share_directory
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:411,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:414,1
    - Dst: std::filesystem::path
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:418,1
    - Dst: auto::is_absolute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:422,1
    - Dst: push_back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:427,1
    - Dst: std::make_unique<XMLDocument>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:427,1
    - Dst: back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:428,1
    - Dst: std::filesystem::absolute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:432,1
    - Dst: auto::parent_path
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:432,1
    - Dst: XMLDocument*::LoadFile
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:434,1
    - Dst: auto::string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:434,1
    - Dst: loadDocImpl
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:435,1
    - Dst: manifests
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:443,1
    - Dst: std::unordered_map::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:445,1
    - Dst: XMLDocument*::Print
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:449,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:450,1
    - Dst: XMLPrinter::CStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:450,1
    - Dst: XMLPrinter::CStrSize
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:450,1
    - Dst: VerifyXML
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:453,1
    - Dst: loadSubtreeModel
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:455,1
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:458,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:459,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:462,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:464,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:468,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 50
    argCount: 2
    argNames:
    - doc
    - add_includes
    argTypes:
    - XMLDocument*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 346
    functionDepth: 1
    functionLinenumber: 346
    functionLinenumberEnd: 473
    functionName: XMLParser::PImpl::loadDocImpl(XMLDocument* doc, bool add_includes)
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - snprintf
    - XMLPrinter::CStrSize
    - std::filesystem::absolute
    - std::make_unique<XMLDocument>
    - auto::string
    - std::unordered_map::insert
    - VerifyXML
    - XMLDocument*::LoadFile
    - string
    - XMLPrinter::CStr
    - std::filesystem::path::string
    - XMLDocument*::Error
    - XMLDocument*::RootElement
    - loadDocImpl
    - XMLDocument*::ErrorStr
    - back
    - std::filesystem::path
    - ament_index_cpp::get_package_share_path
    - ament_index_cpp::get_package_share_directory
    - AMENT_INDEX_CPP_VERSION_GTE
    - push_back
    - auto::Attribute
    - manifests
    - to_string
    - RuntimeError
    - auto::is_absolute
    - loadSubtreeModel
    - XMLDocument*::Print
    - auto::NextSiblingElement
    - XMLElement*::FirstChildElement
    - std::filesystem::u8path
    - XMLElement*::Attribute
    - auto::parent_path
    linkageType: ''
    returnType: void
    signature: void XMLParser::PImpl::loadDocImpl(XMLDocument* doc, bool add_includes)
  - BBCount: 30
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument::Parse
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:479,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:479,1
    - Dst: size
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:479,1
    - Dst: snprintf
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:484,1
    - Dst: XMLDocument::ErrorName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:484,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:485,1
    - Dst: snprintf
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:491,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:492,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:493,1
    - Dst: FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:498,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:499,1
    - Dst: XMLDocument::RootElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:507,1
    - Dst: StrEqual
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:509,1
    - Dst: XMLElement*::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:509,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:511,1
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:514,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:515,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:521,1
    - Dst: auto::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:521,1
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:528,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:529,1
    - Dst: auto::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:531,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:535,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:538,1
    - Dst: auto::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:538,1
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:547,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:548,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:560,1
    - Dst: auto::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:560,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:561,1
    - Dst: ChildrenCount
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:564,1
    - Dst: auto::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:565,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:566,1
    - Dst: auto::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:566,1
    - Dst: auto::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:567,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:573,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:575,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:576,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:581,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:583,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:586,1
    - Dst: BT::validateModelName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:588,1
    - Dst: count
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:590,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:592,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:597,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:605,1
    - Dst: BT::validateModelName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:609,1
    - Dst: count
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:610,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:612,1
    - Dst: BT::validateModelName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:623,1
    - Dst: find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:625,1
    - Dst: end
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:626,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:629,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:629,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:639,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:639,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:647,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:647,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:652,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:652,1
    - Dst: auto::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:658,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:659,1
    - Dst: auto::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:661,1
    - Dst: find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:662,1
    - Dst: end
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:663,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:665,1
    - Dst: auto::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:665,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:666,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:677,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:677,1
    - Dst: ThrowError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:688,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:688,1
    - Dst: auto::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:694,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:695,1
    - Dst: recursiveStep
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:697,1
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:701,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:702,1
    - Dst: recursiveStep
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:704,1
    CyclomaticComplexity: 55
    EdgeCount: 55
    ICount: 106
    argCount: 2
    argNames:
    - ' xml_text'
    - ' registered_nodes'
    argTypes:
    - std::string
    - std::unordered_map<std::string, BT::NodeType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 475
    functionDepth: 3
    functionLinenumber: 475
    functionLinenumberEnd: 706
    functionName: BT::VerifyXML
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - snprintf
    - find
    - recursiveStep
    - XMLDocument::ErrorName
    - ThrowError
    - size
    - XMLDocument::RootElement
    - std::string::empty
    - ChildrenCount
    - XMLDocument::Parse
    - string
    - auto::Name
    - auto::GetLineNum
    - auto::Attribute
    - to_string
    - RuntimeError
    - StrEqual
    - FirstChildElement
    - end
    - c_str
    - count
    - auto::FirstChildElement
    - BT::validateModelName
    - auto::NextSiblingElement
    - XMLElement*::FirstChildElement
    - XMLElement*::Name
    linkageType: ''
    returnType: void
    signature: "void VerifyXML(const std::string& xml_text,\n               const
      std::unordered_map<std::string, BT::NodeType>& registered_nodes)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:715,1
    - Dst: opened_documents::front
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:717,1
    - Dst: XMLElement*::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:719,1
    - Dst: tree_roots::size
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:723,1
    - Dst: tree_roots::begin
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:726,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:730,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:737,1
    - Dst: recursivelyCreateSubtree
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:742,1
    - Dst: TryDynamicCastPtr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:743,1
    - Dst: Tree::initialize
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:744,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 2
    argNames:
    - ' root_blackboard'
    - main_tree_ID
    argTypes:
    - Blackboard::Ptr
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 746
      start: 708
    functionDepth: 1
    functionLinenumber: 708
    functionLinenumberEnd: 746
    functionName: BT::XMLParser::instantiateTree
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - tree_roots::begin
    - Tree::initialize
    - recursivelyCreateSubtree
    - opened_documents::front
    - tree_roots::size
    - RuntimeError
    - TryDynamicCastPtr
    - XMLElement*::Attribute
    - std::string::empty
    linkageType: ''
    returnType: Tree
    signature: "Tree XMLParser::instantiateTree(const Blackboard::Ptr& root_blackboard,\n
      \                               std::string main_tree_ID)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:750,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 748
    functionDepth: 1
    functionLinenumber: 748
    functionLinenumberEnd: 751
    functionName: BT::XMLParser::clearInternalState
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - clear
    linkageType: ''
    returnType: void
    signature: void XMLParser::clearInternalState()
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: XMLElement*::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:759,1
    - Dst: XMLElement*::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:760,1
    - Dst: convertFromString<NodeType>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:762,1
    - Dst: builders
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:770,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:772,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:778,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:786,1
    - Dst: XMLElement*::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:793,1
    - Dst: validateInstanceName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:799,1
    - Dst: XMLElement*::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:799,1
    - Dst: manifests
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:804,1
    - Dst: manifests
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:805,1
    - Dst: XMLElement*::FirstAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:813,1
    - Dst: XMLAttribute*::Next
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:814,1
    - Dst: XMLAttribute*::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:816,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:817,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:818,1
    - Dst: TreeNodeManifest*::ports::find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:822,1
    - Dst: TreeNodeManifest*::ports::end
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:823,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:825,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:825,1
    - Dst: XMLElement*::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:826,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:827,1
    - Dst: XMLAttribute*::GetLineNum
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:827,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:834,1
    - Dst: std::string::front
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:835,1
    - Dst: std::string::back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:836,1
    - Dst: converter
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:838,1
    - Dst: isStronglyTyped
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:838,1
    - Dst: converter
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:843,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:847,1
    - Dst: typeName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:849,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:850,1
    - Dst: IsReservedAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:858,1
    - Dst: getUID
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:867,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:872,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:872,1
    - Dst: XMLElement*::Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:876,1
    - Dst: insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:878,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:878,1
    - Dst: NonPortAttributes::erase
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:879,1
    - Dst: static_cast<PreCond>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:885,1
    - Dst: AddCondition
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:886,1
    - Dst: toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:886,1
    - Dst: static_cast<PostCond>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:890,1
    - Dst: AddCondition
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:891,1
    - Dst: toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:891,1
    - Dst: instantiateTreeNode
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:902,1
    - Dst: toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:902,1
    - Dst: dynamic_cast<SubTreeNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:905,1
    - Dst: TreeNode::Ptr::get
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:905,1
    - Dst: auto::setSubtreeID
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:908,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:915,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:917,1
    - Dst: TreeNodeManifest*::ports::count
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:924,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:926,1
    - Dst: PortsRemapping::find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:938,1
    - Dst: PortsRemapping::end
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:939,1
    - Dst: BT::TreeNode::getRemappedKey
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:945,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:948,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:948,1
    - Dst: entryInfo
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:951,1
    - Dst: auto::isStronglyTyped
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:955,1
    - Dst: isStronglyTyped
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:955,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:956,1
    - Dst: type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:956,1
    - Dst: direction
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:961,1
    - Dst: polymorphicCastRegistry
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:963,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:963,1
    - Dst: type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:964,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:971,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:971,1
    - Dst: debugMessage
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:975,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:977,1
    - Dst: demangle
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:979,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:979,1
    - Dst: demangle
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:980,1
    - Dst: type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:980,1
    - Dst: createEntry
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:986,1
    - Dst: TreeNodeManifest*::ports::find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:995,1
    - Dst: TreeNodeManifest*::ports::end
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:996,1
    - Dst: auto::second::direction
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:998,1
    - Dst: NodeConfig::input_ports::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1001,1
    - Dst: NodeConfig::output_ports::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1005,1
    - Dst: direction
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1016,1
    - Dst: defaultValueString
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1017,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1018,1
    - Dst: NodeConfig::input_ports::count
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1020,1
    - Dst: NodeConfig::input_ports::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1022,1
    - Dst: NodeConfig::output_ports::count
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1026,1
    - Dst: BT::TreeNode::isBlackboardPointer
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1027,1
    - Dst: NodeConfig::output_ports::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1029,1
    - Dst: instantiateTreeNode
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1034,1
    - Dst: dynamic_cast<ControlNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1040,1
    - Dst: get
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1040,1
    - Dst: auto*::addChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1042,1
    - Dst: TreeNode::Ptr::get
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1042,1
    - Dst: dynamic_cast<DecoratorNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1044,1
    - Dst: get
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1044,1
    - Dst: auto*::setChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1046,1
    - Dst: TreeNode::Ptr::get
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1046,1
    CyclomaticComplexity: 60
    EdgeCount: 60
    ICount: 124
    argCount: 5
    argNames:
    - element
    - ' blackboard'
    - ' node_parent'
    - ' prefix_path'
    - ' output_tree'
    argTypes:
    - XMLElement*
    - Blackboard::Ptr
    - TreeNode::Ptr
    - std::string
    - Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1051
      start: 753
    functionDepth: 3
    functionLinenumber: 753
    functionLinenumberEnd: 1051
    functionName: "XMLParser::PImpl::createNodeFromXML(const XMLElement* element,\n
      \                                                 const Blackboard::Ptr& blackboard,\n
      \                                                 const TreeNode::Ptr& node_parent,\n
      \                                                 const std::string& prefix_path,\n
      \                                                 Tree& output_tree)"
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - get
    - NodeConfig::input_ports::count
    - XMLAttribute*::Value
    - auto::second::direction
    - XMLAttribute*::Next
    - TreeNodeManifest*::ports::count
    - TreeNodeManifest*::ports::end
    - PortsRemapping::end
    - polymorphicCastRegistry
    - empty
    - NodeConfig::output_ports::count
    - toStr
    - string
    - auto::setSubtreeID
    - NodeConfig::output_ports::insert
    - static_cast<std::string>
    - TreeNode::Ptr::get
    - defaultValueString
    - XMLAttribute*::GetLineNum
    - static_cast<PreCond>
    - std::string::front
    - dynamic_cast<SubTreeNode*>
    - NonPortAttributes::erase
    - isStronglyTyped
    - std::string::back
    - type
    - AddCondition
    - direction
    - debugMessage
    - BT::TreeNode::isBlackboardPointer
    - entryInfo
    - XMLElement*::FirstAttribute
    - convertFromString<NodeType>
    - dynamic_cast<ControlNode*>
    - auto*::addChild
    - XMLElement*::GetLineNum
    - BT::TreeNode::getRemappedKey
    - to_string
    - manifests
    - RuntimeError
    - IsReservedAttribute
    - validateInstanceName
    - XMLAttribute*::Name
    - static_cast<PostCond>
    - instantiateTreeNode
    - converter
    - PortsRemapping::find
    - TreeNodeManifest*::ports::find
    - std::string::size
    - auto::isStronglyTyped
    - auto::type
    - typeid
    - builders
    - typeName
    - createEntry
    - auto::value
    - NodeConfig::input_ports::insert
    - auto*::setChild
    - LogicError
    - getUID
    - dynamic_cast<DecoratorNode*>
    - StrCat
    - IsAllowedPortName
    - demangle
    - insert
    - XMLElement*::Attribute
    - XMLElement*::Name
    linkageType: ''
    returnType: TreeNode::Ptr
    signature: "TreeNode::Ptr XMLParser::PImpl::createNodeFromXML(const XMLElement*
      element,\n                                                  const Blackboard::Ptr&
      blackboard,\n                                                  const TreeNode::Ptr&
      node_parent,\n                                                  const std::string&
      prefix_path,\n                                                  Tree& output_tree)"
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1058,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1060,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1072,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1074,1
    - Dst: createNodeFromXML
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1078,1
    - Dst: nodes::push_back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1079,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1082,1
    - Dst: FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1084,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1085,1
    - Dst: recursiveStep
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1087,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1092,1
    - Dst: auto::setPolymorphicCastRegistry
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1094,1
    - Dst: polymorphicCastRegistryPtr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1094,1
    - Dst: Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1095,1
    - Dst: FirstAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1099,1
    - Dst: auto::Next
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1099,1
    - Dst: auto::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1101,1
    - Dst: auto::Value
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1102,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1105,1
    - Dst: convertFromString<bool>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1110,1
    - Dst: auto::enableAutoRemapping
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1111,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1114,1
    - Dst: auto::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1114,1
    - Dst: std::unordered_map::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1118,1
    - Dst: find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1123,1
    - Dst: end
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1124,1
    - Dst: std::unordered_map::find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1132,1
    - Dst: std::unordered_map::end
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1134,1
    - Dst: defaultValueString
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1137,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1139,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1142,1
    - Dst: std::unordered_map::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1146,1
    - Dst: defaultValueString
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1146,1
    - Dst: BT::TreeNode::isBlackboardPointer
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1154,1
    - Dst: BT::TreeNode::stripBlackboardPointer
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1157,1
    - Dst: auto::addSubtreeRemapping
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1158,1
    - Dst: auto::enableAutoRemapping
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1164,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1172,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1174,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1175,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1179,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1180,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1181,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1184,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1185,1
    - Dst: magic_enum::detail::reflected_min
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1187,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1188,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1190,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1190,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1194,1
    - Dst: parseDouble
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1203,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1205,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1212,1
    - Dst: auto::enableAutoRemapping
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1214,1
    - Dst: std::string::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1219,1
    - Dst: Attribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1223,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1229,1
    - Dst: auto::UID
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1229,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1238,1
    - Dst: recursivelyCreateSubtree
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1246,1
    - Dst: find
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1253,1
    - Dst: end
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1254,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1256,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1256,1
    - Dst: auto::second::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1259,1
    - Dst: std::make_shared<Tree::Subtree>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1264,1
    - Dst: subtrees::push_back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1268,1
    - Dst: recursiveStep
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1270,1
    - Dst: erase
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1271,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 91
    argCount: 7
    argNames:
    - ' tree_ID'
    - ' tree_path'
    - ' prefix_path'
    - ' output_tree'
    - blackboard
    - ' root_node'
    - ' ancestors'
    argTypes:
    - std::string
    - std::string
    - std::string
    - Tree
    - Blackboard::Ptr
    - TreeNode::Ptr
    - std::unordered_set<std::string>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1272
      start: 1053
    functionDepth: 3
    functionLinenumber: 1053
    functionLinenumberEnd: 1272
    functionName: "BT::XMLParser::PImpl::recursivelyCreateSubtree(\n    const std::string&
      tree_ID, const std::string& tree_path,\n    const std::string& prefix_path,
      Tree& output_tree, Blackboard::Ptr blackboard,\n    const TreeNode::Ptr& root_node,
      std::unordered_set<std::string>& ancestors)"
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - find
    - recursiveStep
    - convertFromString<bool>
    - std::unordered_map::insert
    - parseDouble
    - erase
    - createNodeFromXML
    - auto::second::FirstChildElement
    - std::runtime_error
    - std::string::empty
    - Attribute
    - auto::Next
    - string
    - BT::Blackboard::create
    - BT::TreeNode::stripBlackboardPointer
    - std::string::find
    - defaultValueString
    - std::unordered_map::end
    - std::unordered_map::find
    - magic_enum::detail::reflected_max
    - std::errc
    - auto::UID
    - BT::TreeNode::isBlackboardPointer
    - FirstAttribute
    - auto::set
    - auto::Name
    - recursivelyCreateSubtree
    - to_string
    - RuntimeError
    - end
    - FirstChildElement
    - polymorphicCastRegistryPtr
    - magic_enum::detail::reflected_min
    - std::from_chars
    - std::string::size
    - auto::type
    - std::string::data
    - nodes::push_back
    - auto::NextSiblingElement
    - StrCat
    - IsAllowedPortName
    - std::make_shared<Tree::Subtree>
    - insert
    - auto::addSubtreeRemapping
    - auto::setPolymorphicCastRegistry
    - subtrees::push_back
    - auto::enableAutoRemapping
    - auto::Value
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: "void BT::XMLParser::PImpl::recursivelyCreateSubtree(\n    const std::string&
      tree_ID, const std::string& tree_path,\n    const std::string& prefix_path,
      Tree& output_tree, Blackboard::Ptr blackboard,\n    const TreeNode::Ptr& root_node,
      std::unordered_set<std::string>& ancestors)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLElement*::FirstAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1277,1
    - Dst: XMLAttribute*::Next
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1278,1
    - Dst: XMLAttribute*::Name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1280,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1281,1
    - Dst: IsAllowedPortName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1282,1
    - Dst: BT::TreeNode::isBlackboardPointer
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1282,1
    - Dst: BT::TreeNode::stripBlackboardPointer
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1284,1
    - Dst: push_back
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1285,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1285,1
    - Dst: XMLElement*::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1289,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1290,1
    - Dst: getPortsRecursively
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1292,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - element
    - ' output_ports'
    argTypes:
    - XMLElement*
    - std::vector<std::string>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1294
      start: 1274
    functionDepth: 3
    functionLinenumber: 1274
    functionLinenumberEnd: 1294
    functionName: "XMLParser::PImpl::getPortsRecursively(const XMLElement* element,\n
      \                                          std::vector<std::string>& output_ports)"
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - XMLElement*::FirstAttribute
    - XMLAttribute*::Value
    - BT::TreeNode::stripBlackboardPointer
    - static_cast<std::string>
    - XMLAttribute*::Next
    - push_back
    - auto::NextSiblingElement
    - IsAllowedPortName
    - XMLElement*::FirstChildElement
    - getPortsRecursively
    - BT::TreeNode::isBlackboardPointer
    - XMLAttribute*::Name
    linkageType: ''
    returnType: void
    signature: "void XMLParser::PImpl::getPortsRecursively(const XMLElement* element,\n
      \                                          std::vector<std::string>& output_ports)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1301,1
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1301,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1302,1
    - Dst: registration_ID::c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1302,1
    - Dst: direction
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1307,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1310,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1313,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1316,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1320,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1320,1
    - Dst: type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1321,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1321,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1323,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1323,1
    - Dst: type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1323,1
    - Dst: defaultValue
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1325,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1327,1
    - Dst: defaultValueString
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1327,1
    - Dst: description
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1330,1
    - Dst: XMLElement*::SetText
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1332,1
    - Dst: description
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1332,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1334,1
    - Dst: metadata::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1337,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1339,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1343,1
    - Dst: auto::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1344,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1344,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1344,1
    - Dst: auto::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1345,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1348,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1351,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 3
    argNames:
    - ' model'
    - ' doc'
    - model_root
    argTypes:
    - TreeNodeManifest
    - XMLDocument
    - XMLElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1352
      start: 1298
    functionDepth: 1
    functionLinenumber: 1298
    functionLinenumberEnd: 1352
    functionName: BT::addNodeModelToXML
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 3
    functionsReached:
    - description
    - XMLElement*::SetAttribute
    - typeid
    - BT::demangle
    - auto::SetAttribute
    - auto::InsertEndChild
    - registration_ID::c_str
    - BT::toStr
    - defaultValueString
    - XMLElement*::SetText
    - metadata::empty
    - defaultValue
    - NewElement
    - direction
    - XMLElement*::InsertEndChild
    - type
    - c_str
    linkageType: ''
    returnType: void
    signature: "void addNodeModelToXML(const TreeNodeManifest& model, XMLDocument&
      doc,\n                       XMLElement* model_root)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const SubTreeNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1361,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1363,1
    - Dst: registrationName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1363,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1364,1
    - Dst: auto*::subtreeID
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1364,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1367,1
    - Dst: auto*::config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1367,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1367,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1372,1
    - Dst: registrationName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1372,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1373,1
    - Dst: name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1373,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1378,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1378,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1381,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1383,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1383,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1383,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1385,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1388,1
    - Dst: count
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1388,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1390,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1390,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1390,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1394,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1396,1
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1396,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1396,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1398,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1400,1
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1400,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1400,1
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1403,1
    - Dst: dynamic_cast<const ControlNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1405,1
    - Dst: auto*::children
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1407,1
    - Dst: addNode
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1409,1
    - Dst: dynamic_cast<const DecoratorNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1412,1
    - Dst: auto*::type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1414,1
    - Dst: addNode
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1416,1
    - Dst: auto*::child
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1416,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1423,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1424,1
    - Dst: auto*::tree_ID::c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1424,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1425,1
    - Dst: auto*::instance_name::c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1425,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1426,1
    - Dst: addNode
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1427,1
    - Dst: auto*::nodes::front
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1427,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1430,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1431,1
    - Dst: BehaviorTreeFactory::builtinNodes
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1438,1
    - Dst: std::map::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1440,1
    - Dst: BT::addNodeModelToXML
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1446,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 48
    argCount: 5
    argNames:
    - ' tree'
    - ' doc'
    - rootXML
    - add_metadata
    - add_builtin_models
    argTypes:
    - Tree
    - XMLDocument
    - XMLElement*
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1448
      start: 1354
    functionDepth: 2
    functionLinenumber: 1354
    functionLinenumberEnd: 1448
    functionName: BT::addTreeToXML
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 1
    functionsReached:
    - UID
    - XMLElement*::SetAttribute
    - config
    - auto*::subtreeID
    - auto*::type
    - std::map::insert
    - auto*::tree_ID::c_str
    - auto*::config
    - BT::toStr
    - BehaviorTreeFactory::builtinNodes
    - NewElement
    - XMLElement*::InsertEndChild
    - BT::addNodeModelToXML
    - auto*::child
    - dynamic_cast<const ControlNode*>
    - c_str
    - dynamic_cast<const SubTreeNode*>
    - registrationName
    - auto*::nodes::front
    - InsertEndChild
    - count
    - auto*::children
    - name
    - auto*::instance_name::c_str
    - addNode
    - dynamic_cast<const DecoratorNode*>
    linkageType: ''
    returnType: void
    signature: "void addTreeToXML(const Tree& tree, XMLDocument& doc, XMLElement*
      rootXML,\n                  bool add_metadata, bool add_builtin_models)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1301,1
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1301,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1302,1
    - Dst: registration_ID::c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1302,1
    - Dst: direction
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1307,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1310,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1313,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1316,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1320,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1320,1
    - Dst: type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1321,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1321,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1323,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1323,1
    - Dst: type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1323,1
    - Dst: defaultValue
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1325,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1327,1
    - Dst: defaultValueString
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1327,1
    - Dst: description
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1330,1
    - Dst: XMLElement*::SetText
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1332,1
    - Dst: description
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1332,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1334,1
    - Dst: metadata::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1337,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1339,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1343,1
    - Dst: auto::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1344,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1344,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1344,1
    - Dst: auto::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1345,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1348,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1351,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 3
    argNames:
    - ' model'
    - ' doc'
    - model_root
    argTypes:
    - TreeNodeManifest
    - XMLDocument
    - XMLElement*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1352
      start: 1298
    functionDepth: 1
    functionLinenumber: 1298
    functionLinenumberEnd: 1352
    functionName: BT::addNodeModelToXML
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 4
    functionsReached:
    - description
    - XMLElement*::SetAttribute
    - typeid
    - BT::demangle
    - auto::SetAttribute
    - auto::InsertEndChild
    - registration_ID::c_str
    - BT::toStr
    - defaultValueString
    - XMLElement*::SetText
    - metadata::empty
    - defaultValue
    - NewElement
    - direction
    - XMLElement*::InsertEndChild
    - type
    - c_str
    linkageType: ''
    returnType: void
    signature: "void addNodeModelToXML(const TreeNodeManifest& model, XMLDocument&
      doc,\n                       XMLElement* model_root)"
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const SubTreeNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1361,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1363,1
    - Dst: registrationName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1363,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1364,1
    - Dst: auto*::subtreeID
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1364,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1367,1
    - Dst: auto*::config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1367,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1367,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1372,1
    - Dst: registrationName
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1372,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1373,1
    - Dst: name
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1373,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1378,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1378,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1381,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1383,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1383,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1383,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1385,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1388,1
    - Dst: count
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1388,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1390,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1390,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1390,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1394,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1396,1
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1396,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1396,1
    - Dst: config
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1398,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1400,1
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1400,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1400,1
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1403,1
    - Dst: dynamic_cast<const ControlNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1405,1
    - Dst: auto*::children
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1407,1
    - Dst: addNode
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1409,1
    - Dst: dynamic_cast<const DecoratorNode*>
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1412,1
    - Dst: auto*::type
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1414,1
    - Dst: addNode
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1416,1
    - Dst: auto*::child
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1416,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1423,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1424,1
    - Dst: auto*::tree_ID::c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1424,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1425,1
    - Dst: auto*::instance_name::c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1425,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1426,1
    - Dst: addNode
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1427,1
    - Dst: auto*::nodes::front
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1427,1
    - Dst: NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1430,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1431,1
    - Dst: BehaviorTreeFactory::builtinNodes
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1438,1
    - Dst: std::map::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1440,1
    - Dst: BT::addNodeModelToXML
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1446,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 48
    argCount: 5
    argNames:
    - ' tree'
    - ' doc'
    - rootXML
    - add_metadata
    - add_builtin_models
    argTypes:
    - Tree
    - XMLDocument
    - XMLElement*
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1448
      start: 1354
    functionDepth: 2
    functionLinenumber: 1354
    functionLinenumberEnd: 1448
    functionName: BT::addTreeToXML
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 1
    functionsReached:
    - UID
    - XMLElement*::SetAttribute
    - config
    - auto*::subtreeID
    - auto*::type
    - std::map::insert
    - auto*::tree_ID::c_str
    - auto*::config
    - BT::toStr
    - BehaviorTreeFactory::builtinNodes
    - NewElement
    - XMLElement*::InsertEndChild
    - BT::addNodeModelToXML
    - auto*::child
    - dynamic_cast<const ControlNode*>
    - c_str
    - dynamic_cast<const SubTreeNode*>
    - registrationName
    - auto*::nodes::front
    - InsertEndChild
    - count
    - auto*::children
    - name
    - auto*::instance_name::c_str
    - addNode
    - dynamic_cast<const DecoratorNode*>
    linkageType: ''
    returnType: void
    signature: "void addTreeToXML(const Tree& tree, XMLDocument& doc, XMLElement*
      rootXML,\n                  bool add_metadata, bool add_builtin_models)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1456,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1457,1
    - Dst: XMLDocument::InsertFirstChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1458,1
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1460,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1461,1
    - Dst: manifests
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1465,1
    - Dst: builtinNodes
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1467,1
    - Dst: std::map::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1469,1
    - Dst: BT::addNodeModelToXML
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1475,1
    - Dst: XMLDocument::Print
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1479,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1480,1
    - Dst: XMLPrinter::CStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1480,1
    - Dst: XMLPrinter::CStrSize
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1480,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - ' factory'
    - include_builtin
    argTypes:
    - BehaviorTreeFactory
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1481
      start: 1451
    functionDepth: 2
    functionLinenumber: 1451
    functionLinenumberEnd: 1481
    functionName: BT::writeTreeNodesModelXML
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 1
    functionsReached:
    - XMLDocument::NewElement
    - XMLElement*::SetAttribute
    - XMLPrinter::CStrSize
    - string
    - BT::addNodeModelToXML
    - XMLPrinter::CStr
    - XMLDocument::Print
    - manifests
    - builtinNodes
    - std::map::insert
    - XMLElement*::InsertEndChild
    - XMLDocument::InsertFirstChild
    linkageType: ''
    returnType: std::string
    signature: "std::string writeTreeNodesModelXML(const BehaviorTreeFactory& factory,\n
      \                                  bool include_builtin)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: manifests
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1492,1
    - Dst: std::map::insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1494,1
    - Dst: XMLDocument::NewDeclaration
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1500,1
    - Dst: XMLDocument::InsertFirstChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1502,1
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1509,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1510,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1511,1
    - Dst: XMLDocument::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1512,1
    - Dst: XMLDocument::Parse
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1516,1
    - Dst: XMLDocument::Error
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1517,1
    - Dst: XMLDocument::ErrorStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1519,1
    - Dst: XMLDocument::FirstChildElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1523,1
    - Dst: auto::NextSiblingElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1524,1
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1526,1
    - Dst: auto::DeepClone
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1526,1
    - Dst: XMLDocument::NewComment
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1531,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1532,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1535,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1594,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1602,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1639,1
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1642,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1644,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1653,1
    - Dst: std::ostringstream::str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1653,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1654,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1658,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1668,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1678,1
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1689,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1690,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1690,1
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1700,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1701,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1702,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1703,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1704,1
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1711,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1712,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1713,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1714,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1715,1
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1717,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1718,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1719,1
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1722,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1723,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1723,1
    - Dst: xsdAttributeType
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1724,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1725,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1727,1
    - Dst: auto::c_str
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1727,1
    - Dst: defaultValue
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1729,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1731,1
    - Dst: defaultValueString
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1731,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1735,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1737,1
    - Dst: parse_and_insert
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1741,1
    - Dst: XMLElement*::InsertEndChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1746,1
    - Dst: XMLDocument::Print
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1750,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1751,1
    - Dst: XMLPrinter::CStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1751,1
    - Dst: XMLPrinter::CStrSize
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1751,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 66
    argCount: 1
    argNames:
    - ' factory'
    argTypes:
    - BehaviorTreeFactory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1752
      start: 1483
    functionDepth: 2
    functionLinenumber: 1483
    functionLinenumberEnd: 1752
    functionName: BT::writeTreeXSD
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - XMLElement*::SetAttribute
    - XMLPrinter::CStrSize
    - XMLDocument::Print
    - XMLDocument::Error
    - std::map::insert
    - XMLDocument::InsertEndChild
    - XMLDocument::Parse
    - string
    - XMLPrinter::CStr
    - defaultValueString
    - parse_and_insert
    - XMLElement*::InsertEndChild
    - xsdAttributeType
    - auto::DeepClone
    - manifests
    - defaultValue
    - XMLDocument::FirstChildElement
    - XMLDocument::NewDeclaration
    - auto::c_str
    - c_str
    - XMLDocument::NewComment
    - XMLDocument::NewElement
    - InsertEndChild
    - auto::NextSiblingElement
    - auto::empty
    - std::ostringstream::str
    - XMLDocument::InsertFirstChild
    - XMLDocument::ErrorStr
    linkageType: ''
    returnType: std::string
    signature: std::string writeTreeXSD(const BehaviorTreeFactory& factory)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument::NewElement
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1758,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1759,1
    - Dst: XMLDocument::InsertFirstChild
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1760,1
    - Dst: BT::addTreeToXML
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1762,1
    - Dst: XMLDocument::Print
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1765,1
    - Dst: string
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1766,1
    - Dst: XMLPrinter::CStr
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1766,1
    - Dst: XMLPrinter::CStrSize
      Src: /src/behaviortreecpp/src/xml_parsing.cpp:1766,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' tree'
    - add_metadata
    - add_builtin_models
    argTypes:
    - Tree
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1767
      start: 1754
    functionDepth: 3
    functionLinenumber: 1754
    functionLinenumberEnd: 1767
    functionName: BT::WriteTreeToXML
    functionSourceFile: /src/behaviortreecpp/src/xml_parsing.cpp
    functionUses: 0
    functionsReached:
    - XMLDocument::NewElement
    - XMLElement*::SetAttribute
    - XMLPrinter::CStrSize
    - string
    - XMLPrinter::CStr
    - XMLDocument::Print
    - BT::addTreeToXML
    - XMLDocument::InsertFirstChild
    linkageType: ''
    returnType: std::string
    signature: std::string WriteTreeToXML(const Tree& tree, bool add_metadata, bool
      add_builtin_models)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: input_ports::find
      Src: /src/behaviortreecpp/src/actions/updated_action.cpp:23,1
    - Dst: input_ports::end
      Src: /src/behaviortreecpp/src/actions/updated_action.cpp:24,1
    - Dst: auto::second::empty
      Src: /src/behaviortreecpp/src/actions/updated_action.cpp:24,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/actions/updated_action.cpp:26,1
    - Dst: isBlackboardPointer
      Src: /src/behaviortreecpp/src/actions/updated_action.cpp:30,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 20
    functionDepth: 1
    functionLinenumber: 20
    functionLinenumberEnd: 38
    functionName: BT::EntryUpdatedAction::EntryUpdatedAction
    functionSourceFile: /src/behaviortreecpp/src/actions/updated_action.cpp
    functionUses: 0
    functionsReached:
    - input_ports::end
    - auto::second::empty
    - input_ports::find
    - LogicError
    - isBlackboardPointer
    linkageType: ''
    returnType: void
    signature: void EntryUpdatedAction::EntryUpdatedAction(const std::string& name,
      const NodeConfig& config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/src/actions/updated_action.cpp:42,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/src/actions/updated_action.cpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 68
    functionName: BT::EntryUpdatedAction::tick
    functionSourceFile: /src/behaviortreecpp/src/actions/updated_action.cpp
    functionUses: 0
    functionsReached:
    - getEntry
    - config
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus EntryUpdatedAction::tick()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: input_ports::find
      Src: /src/behaviortreecpp/src/actions/updated_action.cpp:23,1
    - Dst: input_ports::end
      Src: /src/behaviortreecpp/src/actions/updated_action.cpp:24,1
    - Dst: auto::second::empty
      Src: /src/behaviortreecpp/src/actions/updated_action.cpp:24,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/actions/updated_action.cpp:26,1
    - Dst: isBlackboardPointer
      Src: /src/behaviortreecpp/src/actions/updated_action.cpp:30,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 20
    functionDepth: 1
    functionLinenumber: 20
    functionLinenumberEnd: 38
    functionName: BT::EntryUpdatedAction::EntryUpdatedAction
    functionSourceFile: /src/behaviortreecpp/src/actions/updated_action.cpp
    functionUses: 0
    functionsReached:
    - input_ports::end
    - auto::second::empty
    - input_ports::find
    - LogicError
    - isBlackboardPointer
    linkageType: ''
    returnType: void
    signature: void EntryUpdatedAction::EntryUpdatedAction(const std::string& name,
      const NodeConfig& config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/src/actions/updated_action.cpp:42,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/src/actions/updated_action.cpp:42,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 68
    functionName: BT::EntryUpdatedAction::tick
    functionSourceFile: /src/behaviortreecpp/src/actions/updated_action.cpp
    functionUses: 0
    functionsReached:
    - getEntry
    - config
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus EntryUpdatedAction::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8
      start: 6
    functionDepth: 0
    functionLinenumber: 6
    functionLinenumberEnd: 8
    functionName: BT::SleepNode::SleepNode
    functionSourceFile: /src/behaviortreecpp/src/actions/sleep_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SleepNode::SleepNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/src/actions/sleep_node.cpp:13,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/actions/sleep_node.cpp:15,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/actions/sleep_node.cpp:23,1
    - Dst: add
      Src: /src/behaviortreecpp/src/actions/sleep_node.cpp:27,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/actions/sleep_node.cpp:27,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/actions/sleep_node.cpp:31,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 10
    functionDepth: 1
    functionLinenumber: 10
    functionLinenumberEnd: 37
    functionName: BT::SleepNode::onStart
    functionSourceFile: /src/behaviortreecpp/src/actions/sleep_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - getInput
    - add
    - RuntimeError
    - std::chrono::milliseconds
    - emitWakeUpSignal
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus SleepNode::onStart()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: BT::SleepNode::onRunning
    functionSourceFile: /src/behaviortreecpp/src/actions/sleep_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus SleepNode::onRunning()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cancel
      Src: /src/behaviortreecpp/src/actions/sleep_node.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: BT::SleepNode::onHalted
    functionSourceFile: /src/behaviortreecpp/src/actions/sleep_node.cpp
    functionUses: 0
    functionsReached:
    - cancel
    linkageType: ''
    returnType: void
    signature: void SleepNode::onHalted()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8
      start: 6
    functionDepth: 0
    functionLinenumber: 6
    functionLinenumberEnd: 8
    functionName: BT::SleepNode::SleepNode
    functionSourceFile: /src/behaviortreecpp/src/actions/sleep_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SleepNode::SleepNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/src/actions/sleep_node.cpp:13,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/actions/sleep_node.cpp:15,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/actions/sleep_node.cpp:23,1
    - Dst: add
      Src: /src/behaviortreecpp/src/actions/sleep_node.cpp:27,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/actions/sleep_node.cpp:27,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/actions/sleep_node.cpp:31,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 10
    functionDepth: 1
    functionLinenumber: 10
    functionLinenumberEnd: 37
    functionName: BT::SleepNode::onStart
    functionSourceFile: /src/behaviortreecpp/src/actions/sleep_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - getInput
    - add
    - RuntimeError
    - std::chrono::milliseconds
    - emitWakeUpSignal
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus SleepNode::onStart()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: BT::SleepNode::onRunning
    functionSourceFile: /src/behaviortreecpp/src/actions/sleep_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus SleepNode::onRunning()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cancel
      Src: /src/behaviortreecpp/src/actions/sleep_node.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 48
    functionName: BT::SleepNode::onHalted
    functionSourceFile: /src/behaviortreecpp/src/actions/sleep_node.cpp
    functionUses: 0
    functionsReached:
    - cancel
    linkageType: ''
    returnType: void
    signature: void SleepNode::onHalted()
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - status
    argTypes:
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 28
    functionName: BT::isAllowedTestNodeStatus
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isAllowedTestNodeStatus(NodeStatus status)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::isAllowedTestNodeStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:32,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:34,1
    - Dst: string
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:34,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:36,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:36,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - status
    - source
    argTypes:
    - NodeStatus
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 38
    functionName: BT::validateTestNodeStatus
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - BT::isAllowedTestNodeStatus
    - string
    - to_string
    - RuntimeError
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void validateTestNodeStatus(NodeStatus status, StringView source)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<EnumsTable>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:42,1
    - Dst: std::make_shared<EnumsTable>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:43,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:45,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:46,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:47,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:48,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ' base_enums'
    argTypes:
    - EnumsTablePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 51
    functionName: BT::createTestNodeEnums
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<EnumsTable>
    - static_cast<int>
    linkageType: ''
    returnType: EnumsTablePtr
    signature: EnumsTablePtr createTestNodeEnums(const EnumsTablePtr& base_enums)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:55,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:57,1
    - Dst: isString
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:60,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:62,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:62,1
    - Dst: BT::validateTestNodeStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:63,1
    - Dst: tryCast
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:67,1
    - Dst: static_cast<NodeStatus>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:69,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:69,1
    - Dst: BT::validateTestNodeStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:70,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:74,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - ' result'
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 76
    functionName: BT::convertScriptResultToStatus
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - cast
    - auto::value
    - BT::convertFromString
    - BT::validateTestNodeStatus
    - RuntimeError
    - tryCast
    - empty
    - isString
    - static_cast<NodeStatus>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus convertScriptResultToStatus(const Any& result)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - status
    argTypes:
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 28
    functionName: BT::isAllowedTestNodeStatus
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isAllowedTestNodeStatus(NodeStatus status)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::isAllowedTestNodeStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:32,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:34,1
    - Dst: string
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:34,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:36,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:36,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - status
    - source
    argTypes:
    - NodeStatus
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 38
    functionName: BT::validateTestNodeStatus
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 1
    functionsReached:
    - BT::isAllowedTestNodeStatus
    - string
    - to_string
    - RuntimeError
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void validateTestNodeStatus(NodeStatus status, StringView source)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<EnumsTable>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:42,1
    - Dst: std::make_shared<EnumsTable>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:43,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:45,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:46,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:47,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:48,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ' base_enums'
    argTypes:
    - EnumsTablePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 51
    functionName: BT::createTestNodeEnums
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<EnumsTable>
    - static_cast<int>
    linkageType: ''
    returnType: EnumsTablePtr
    signature: EnumsTablePtr createTestNodeEnums(const EnumsTablePtr& base_enums)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:55,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:57,1
    - Dst: isString
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:60,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:62,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:62,1
    - Dst: BT::validateTestNodeStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:63,1
    - Dst: tryCast
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:67,1
    - Dst: static_cast<NodeStatus>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:69,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:69,1
    - Dst: BT::validateTestNodeStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:70,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:74,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - ' result'
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 76
    functionName: BT::convertScriptResultToStatus
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - cast
    - auto::value
    - BT::convertFromString
    - BT::validateTestNodeStatus
    - RuntimeError
    - tryCast
    - empty
    - isString
    - static_cast<NodeStatus>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus convertScriptResultToStatus(const Any& result)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<TestNodeConfig>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:93,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - test_config
    argTypes:
    - std::string
    - NodeConfig
    - TestNodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: BT::TestNode::TestNode
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::make_shared<TestNodeConfig>
    linkageType: ''
    returnType: void
    signature: "void TestNode::TestNode(const std::string& name, const NodeConfig&
      config,\n                   TestNodeConfig test_config)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<PImpl>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:98,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:100,1
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:101,1
    - Dst: config::return_status_script::empty
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:103,1
    - Dst: validateTestNodeStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:105,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:109,1
    - Dst: ParseScript
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:111,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:114,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:114,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:116,1
    - Dst: prepareScript
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:119,1
    - Dst: prepareScript
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:120,1
    - Dst: prepareScript
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:121,1
    - Dst: prepareScript
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:122,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - test_config
    argTypes:
    - std::string
    - NodeConfig
    - std::shared_ptr<TestNodeConfig>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 123
    functionName: BT::TestNode::TestNode
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - ParseScript
    - std::move
    - auto::value
    - config::return_status_script::empty
    - auto::error
    - prepareScript
    - validateTestNodeStatus
    - std::make_unique<PImpl>
    - RuntimeError
    - setRegistrationID
    - empty
    linkageType: ''
    returnType: void
    signature: "void TestNode::TestNode(const std::string& name, const NodeConfig&
      config,\n                   std::shared_ptr<TestNodeConfig> test_config)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 125
    functionName: TestNode::~TestNode()
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TestNode::~TestNode()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:129,1
    - Dst: BT::TestNode::onCompleted
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:131,1
    - Dst: timer::add
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:136,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:136,1
    - Dst: completed::store
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:139,1
    - Dst: BT::TestNode::emitWakeUpSignal
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:140,1
    - Dst: completed::store
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:144,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 148
    functionName: BT::TestNode::onStart
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - timer::add
    - completed::store
    - std::chrono::milliseconds
    - BT::TestNode::onCompleted
    - BT::TestNode::emitWakeUpSignal
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus TestNode::onStart()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::TestNode::onCompleted
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:154,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 157
    functionName: BT::TestNode::onRunning
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - BT::TestNode::onCompleted
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus TestNode::onRunning()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timer::cancelAll
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: BT::TestNode::onHalted
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - timer::cancelAll
    linkageType: ''
    returnType: void
    signature: void TestNode::onHalted()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: config::complete_func
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:170,1
    - Dst: createTestNodeEnums
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:177,1
    - Dst: config
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:177,1
    - Dst: config
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:178,1
    - Dst: convertScriptResultToStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:179,1
    - Dst: return_status_executor
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:179,1
    - Dst: validateTestNodeStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:186,1
    - Dst: config
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:190,1
    - Dst: config
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:190,1
    - Dst: success_executor
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:194,1
    - Dst: failure_executor
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:198,1
    - Dst: post_executor
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:202,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 205
    functionName: BT::TestNode::onCompleted
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 2
    functionsReached:
    - return_status_executor
    - success_executor
    - convertScriptResultToStatus
    - config
    - config::complete_func
    - validateTestNodeStatus
    - failure_executor
    - createTestNodeEnums
    - post_executor
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus TestNode::onCompleted()
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - status
    argTypes:
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 28
    functionName: BT::isAllowedTestNodeStatus
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isAllowedTestNodeStatus(NodeStatus status)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::isAllowedTestNodeStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:32,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:34,1
    - Dst: string
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:34,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:36,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:36,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - status
    - source
    argTypes:
    - NodeStatus
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 38
    functionName: BT::validateTestNodeStatus
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 2
    functionsReached:
    - BT::isAllowedTestNodeStatus
    - string
    - to_string
    - RuntimeError
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void validateTestNodeStatus(NodeStatus status, StringView source)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<EnumsTable>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:42,1
    - Dst: std::make_shared<EnumsTable>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:43,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:45,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:46,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:47,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:48,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ' base_enums'
    argTypes:
    - EnumsTablePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 51
    functionName: BT::createTestNodeEnums
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<EnumsTable>
    - static_cast<int>
    linkageType: ''
    returnType: EnumsTablePtr
    signature: EnumsTablePtr createTestNodeEnums(const EnumsTablePtr& base_enums)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:55,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:57,1
    - Dst: isString
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:60,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:62,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:62,1
    - Dst: BT::validateTestNodeStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:63,1
    - Dst: tryCast
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:67,1
    - Dst: static_cast<NodeStatus>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:69,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:69,1
    - Dst: BT::validateTestNodeStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:70,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:74,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - ' result'
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 76
    functionName: BT::convertScriptResultToStatus
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - cast
    - auto::value
    - BT::convertFromString
    - BT::validateTestNodeStatus
    - RuntimeError
    - tryCast
    - empty
    - isString
    - static_cast<NodeStatus>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus convertScriptResultToStatus(const Any& result)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 11
    argCount: 1
    argNames:
    - status
    argTypes:
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 28
    functionName: BT::isAllowedTestNodeStatus
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isAllowedTestNodeStatus(NodeStatus status)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::isAllowedTestNodeStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:32,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:34,1
    - Dst: string
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:34,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:36,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:36,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - status
    - source
    argTypes:
    - NodeStatus
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 30
    functionDepth: 1
    functionLinenumber: 30
    functionLinenumberEnd: 38
    functionName: BT::validateTestNodeStatus
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 3
    functionsReached:
    - BT::isAllowedTestNodeStatus
    - string
    - to_string
    - RuntimeError
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void validateTestNodeStatus(NodeStatus status, StringView source)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<EnumsTable>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:42,1
    - Dst: std::make_shared<EnumsTable>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:43,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:45,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:46,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:47,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:48,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ' base_enums'
    argTypes:
    - EnumsTablePtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 51
    functionName: BT::createTestNodeEnums
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<EnumsTable>
    - static_cast<int>
    linkageType: ''
    returnType: EnumsTablePtr
    signature: EnumsTablePtr createTestNodeEnums(const EnumsTablePtr& base_enums)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:55,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:57,1
    - Dst: isString
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:60,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:62,1
    - Dst: cast
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:62,1
    - Dst: BT::validateTestNodeStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:63,1
    - Dst: tryCast
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:67,1
    - Dst: static_cast<NodeStatus>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:69,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:69,1
    - Dst: BT::validateTestNodeStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:70,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:74,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - ' result'
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 53
    functionDepth: 2
    functionLinenumber: 53
    functionLinenumberEnd: 76
    functionName: BT::convertScriptResultToStatus
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - cast
    - auto::value
    - BT::convertFromString
    - BT::validateTestNodeStatus
    - RuntimeError
    - tryCast
    - empty
    - isString
    - static_cast<NodeStatus>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus convertScriptResultToStatus(const Any& result)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<TestNodeConfig>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:93,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - test_config
    argTypes:
    - std::string
    - NodeConfig
    - TestNodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: BT::TestNode::TestNode
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::make_shared<TestNodeConfig>
    linkageType: ''
    returnType: void
    signature: "void TestNode::TestNode(const std::string& name, const NodeConfig&
      config,\n                   TestNodeConfig test_config)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<PImpl>
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:98,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:100,1
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:101,1
    - Dst: config::return_status_script::empty
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:103,1
    - Dst: validateTestNodeStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:105,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:109,1
    - Dst: ParseScript
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:111,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:114,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:114,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:116,1
    - Dst: prepareScript
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:119,1
    - Dst: prepareScript
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:120,1
    - Dst: prepareScript
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:121,1
    - Dst: prepareScript
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:122,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - test_config
    argTypes:
    - std::string
    - NodeConfig
    - std::shared_ptr<TestNodeConfig>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 96
    functionDepth: 1
    functionLinenumber: 96
    functionLinenumberEnd: 123
    functionName: BT::TestNode::TestNode
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - ParseScript
    - std::move
    - auto::value
    - config::return_status_script::empty
    - auto::error
    - prepareScript
    - validateTestNodeStatus
    - std::make_unique<PImpl>
    - RuntimeError
    - setRegistrationID
    - empty
    linkageType: ''
    returnType: void
    signature: "void TestNode::TestNode(const std::string& name, const NodeConfig&
      config,\n                   std::shared_ptr<TestNodeConfig> test_config)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 125
    functionDepth: 0
    functionLinenumber: 125
    functionLinenumberEnd: 125
    functionName: TestNode::~TestNode()
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TestNode::~TestNode()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:129,1
    - Dst: BT::TestNode::onCompleted
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:131,1
    - Dst: timer::add
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:136,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:136,1
    - Dst: completed::store
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:139,1
    - Dst: BT::TestNode::emitWakeUpSignal
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:140,1
    - Dst: completed::store
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:144,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 148
      start: 127
    functionDepth: 1
    functionLinenumber: 127
    functionLinenumberEnd: 148
    functionName: BT::TestNode::onStart
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - timer::add
    - completed::store
    - std::chrono::milliseconds
    - BT::TestNode::onCompleted
    - BT::TestNode::emitWakeUpSignal
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus TestNode::onStart()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::TestNode::onCompleted
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:154,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 150
    functionDepth: 1
    functionLinenumber: 150
    functionLinenumberEnd: 157
    functionName: BT::TestNode::onRunning
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - BT::TestNode::onCompleted
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus TestNode::onRunning()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: timer::cancelAll
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 162
    functionName: BT::TestNode::onHalted
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 0
    functionsReached:
    - timer::cancelAll
    linkageType: ''
    returnType: void
    signature: void TestNode::onHalted()
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: config::complete_func
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:170,1
    - Dst: createTestNodeEnums
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:177,1
    - Dst: config
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:177,1
    - Dst: config
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:178,1
    - Dst: convertScriptResultToStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:179,1
    - Dst: return_status_executor
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:179,1
    - Dst: validateTestNodeStatus
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:186,1
    - Dst: config
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:190,1
    - Dst: config
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:190,1
    - Dst: success_executor
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:194,1
    - Dst: failure_executor
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:198,1
    - Dst: post_executor
      Src: /src/behaviortreecpp/src/actions/test_node.cpp:202,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 164
    functionDepth: 0
    functionLinenumber: 164
    functionLinenumberEnd: 205
    functionName: BT::TestNode::onCompleted
    functionSourceFile: /src/behaviortreecpp/src/actions/test_node.cpp
    functionUses: 4
    functionsReached:
    - return_status_executor
    - success_executor
    - convertScriptResultToStatus
    - config
    - config::complete_func
    - validateTestNodeStatus
    - failure_executor
    - createTestNodeEnums
    - post_executor
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus TestNode::onCompleted()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:14,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - milliseconds
    argTypes:
    - std::string
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15
      start: 8
    functionDepth: 0
    functionLinenumber: 8
    functionLinenumberEnd: 15
    functionName: BT::DelayNode::DelayNode
    functionSourceFile: /src/behaviortreecpp/src/decorators/delay_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void DelayNode::DelayNode(const std::string& name, unsigned milliseconds)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 19
    functionName: BT::DelayNode::DelayNode
    functionSourceFile: /src/behaviortreecpp/src/decorators/delay_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DelayNode::DelayNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cancelAll
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:24,1
    - Dst: BT::DecoratorNode::halt
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 21
    functionDepth: 2
    functionLinenumber: 21
    functionLinenumberEnd: 26
    functionName: BT::DelayNode::halt
    functionSourceFile: /src/behaviortreecpp/src/decorators/delay_node.cpp
    functionUses: 0
    functionsReached:
    - BT::DecoratorNode::halt
    - cancelAll
    linkageType: ''
    returnType: void
    signature: void DelayNode::halt()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:32,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:34,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:43,1
    - Dst: add
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:45,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:45,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:50,1
    - Dst: child
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:65,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:66,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:70,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 75
    functionName: BT::DelayNode::tick
    functionSourceFile: /src/behaviortreecpp/src/decorators/delay_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - isStatusCompleted
    - getInput
    - add
    - RuntimeError
    - std::chrono::milliseconds
    - child
    - resetChild
    - emitWakeUpSignal
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus DelayNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:14,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - milliseconds
    argTypes:
    - std::string
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15
      start: 8
    functionDepth: 0
    functionLinenumber: 8
    functionLinenumberEnd: 15
    functionName: BT::DelayNode::DelayNode
    functionSourceFile: /src/behaviortreecpp/src/decorators/delay_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void DelayNode::DelayNode(const std::string& name, unsigned milliseconds)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 19
    functionName: BT::DelayNode::DelayNode
    functionSourceFile: /src/behaviortreecpp/src/decorators/delay_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DelayNode::DelayNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cancelAll
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:24,1
    - Dst: BT::DecoratorNode::halt
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 21
    functionDepth: 2
    functionLinenumber: 21
    functionLinenumberEnd: 26
    functionName: BT::DelayNode::halt
    functionSourceFile: /src/behaviortreecpp/src/decorators/delay_node.cpp
    functionUses: 0
    functionsReached:
    - BT::DecoratorNode::halt
    - cancelAll
    linkageType: ''
    returnType: void
    signature: void DelayNode::halt()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:32,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:34,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:43,1
    - Dst: add
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:45,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:45,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:50,1
    - Dst: child
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:65,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:66,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/delay_node.cpp:70,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 75
    functionName: BT::DelayNode::tick
    functionSourceFile: /src/behaviortreecpp/src/decorators/delay_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - isStatusCompleted
    - getInput
    - add
    - RuntimeError
    - std::chrono::milliseconds
    - child
    - resetChild
    - emitWakeUpSignal
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus DelayNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/decorators/inverter_node.cpp:20,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 21
    functionName: BT::InverterNode::InverterNode
    functionSourceFile: /src/behaviortreecpp/src/decorators/inverter_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void InverterNode::InverterNode(const std::string& name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/decorators/inverter_node.cpp:25,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/decorators/inverter_node.cpp:26,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/inverter_node.cpp:31,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/inverter_node.cpp:36,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/decorators/inverter_node.cpp:46,1
    - Dst: name
      Src: /src/behaviortreecpp/src/decorators/inverter_node.cpp:46,1
    - Dst: status
      Src: /src/behaviortreecpp/src/decorators/inverter_node.cpp:49,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 50
    functionName: BT::InverterNode::tick
    functionSourceFile: /src/behaviortreecpp/src/decorators/inverter_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - status
    - name
    - LogicError
    - executeTick
    - resetChild
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus InverterNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/decorators/inverter_node.cpp:20,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 21
    functionName: BT::InverterNode::InverterNode
    functionSourceFile: /src/behaviortreecpp/src/decorators/inverter_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void InverterNode::InverterNode(const std::string& name)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/decorators/inverter_node.cpp:25,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/decorators/inverter_node.cpp:26,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/inverter_node.cpp:31,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/inverter_node.cpp:36,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/decorators/inverter_node.cpp:46,1
    - Dst: name
      Src: /src/behaviortreecpp/src/decorators/inverter_node.cpp:46,1
    - Dst: status
      Src: /src/behaviortreecpp/src/decorators/inverter_node.cpp:49,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 50
    functionName: BT::InverterNode::tick
    functionSourceFile: /src/behaviortreecpp/src/decorators/inverter_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - status
    - name
    - LogicError
    - executeTick
    - resetChild
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus InverterNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/decorators/subtree_node.cpp:6,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7
      start: 3
    functionDepth: 0
    functionLinenumber: 3
    functionLinenumberEnd: 7
    functionName: BT::SubTreeNode::SubTreeNode(const std::string& name, const NodeConfig&
      config)
    functionSourceFile: /src/behaviortreecpp/src/decorators/subtree_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void BT::SubTreeNode::SubTreeNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PortInfo
      Src: /src/behaviortreecpp/src/decorators/subtree_node.cpp:12,1
    - Dst: typeid
      Src: /src/behaviortreecpp/src/decorators/subtree_node.cpp:12,1
    - Dst: GetAnyFromStringFunctor<bool>
      Src: /src/behaviortreecpp/src/decorators/subtree_node.cpp:12,1
    - Dst: auto::setDefaultValue
      Src: /src/behaviortreecpp/src/decorators/subtree_node.cpp:13,1
    - Dst: auto::setDescription
      Src: /src/behaviortreecpp/src/decorators/subtree_node.cpp:14,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18
      start: 9
    functionDepth: 0
    functionLinenumber: 9
    functionLinenumberEnd: 18
    functionName: BT::SubTreeNode::providedPorts()
    functionSourceFile: /src/behaviortreecpp/src/decorators/subtree_node.cpp
    functionUses: 0
    functionsReached:
    - auto::setDefaultValue
    - typeid
    - PortInfo
    - auto::setDescription
    - GetAnyFromStringFunctor<bool>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList BT::SubTreeNode::providedPorts()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: status
      Src: /src/behaviortreecpp/src/decorators/subtree_node.cpp:22,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/decorators/subtree_node.cpp:25,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/decorators/subtree_node.cpp:27,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/decorators/subtree_node.cpp:28,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/subtree_node.cpp:30,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 34
    functionName: BT::SubTreeNode::tick()
    functionSourceFile: /src/behaviortreecpp/src/decorators/subtree_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - isStatusCompleted
    - status
    - executeTick
    - resetChild
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus BT::SubTreeNode::tick()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:22,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:24,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:31,1
    - Dst: add
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:36,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:36,1
    - Dst: child
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:45,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:48,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:49,1
    - Dst: child
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:62,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:63,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:66,1
    - Dst: cancel
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:67,1
    - Dst: std::unique_lock::lock
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:68,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:69,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 18
    functionDepth: 1
    functionLinenumber: 18
    functionLinenumberEnd: 72
    functionName: BT::TimeoutNode::tick
    functionSourceFile: /src/behaviortreecpp/src/decorators/timeout_node.cpp
    functionUses: 0
    functionsReached:
    - std::unique_lock::lock
    - cancel
    - setStatus
    - haltChild
    - isStatusCompleted
    - getInput
    - add
    - RuntimeError
    - std::chrono::milliseconds
    - child
    - resetChild
    - std::unique_lock::unlock
    - emitWakeUpSignal
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus TimeoutNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cancelAll
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:77,1
    - Dst: BT::DecoratorNode::halt
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 79
    functionName: BT::TimeoutNode::halt
    functionSourceFile: /src/behaviortreecpp/src/decorators/timeout_node.cpp
    functionUses: 0
    functionsReached:
    - BT::DecoratorNode::halt
    - cancelAll
    linkageType: ''
    returnType: void
    signature: void TimeoutNode::halt()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:22,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:24,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:31,1
    - Dst: add
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:36,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:36,1
    - Dst: child
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:45,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:48,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:49,1
    - Dst: child
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:62,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:63,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:66,1
    - Dst: cancel
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:67,1
    - Dst: std::unique_lock::lock
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:68,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:69,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 18
    functionDepth: 1
    functionLinenumber: 18
    functionLinenumberEnd: 72
    functionName: BT::TimeoutNode::tick
    functionSourceFile: /src/behaviortreecpp/src/decorators/timeout_node.cpp
    functionUses: 0
    functionsReached:
    - std::unique_lock::lock
    - cancel
    - setStatus
    - haltChild
    - isStatusCompleted
    - getInput
    - add
    - RuntimeError
    - std::chrono::milliseconds
    - child
    - resetChild
    - std::unique_lock::unlock
    - emitWakeUpSignal
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus TimeoutNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cancelAll
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:77,1
    - Dst: BT::DecoratorNode::halt
      Src: /src/behaviortreecpp/src/decorators/timeout_node.cpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 79
    functionName: BT::TimeoutNode::halt
    functionSourceFile: /src/behaviortreecpp/src/decorators/timeout_node.cpp
    functionUses: 0
    functionsReached:
    - BT::DecoratorNode::halt
    - cancelAll
    linkageType: ''
    returnType: void
    signature: void TimeoutNode::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:24,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - NTries
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 25
    functionName: BT::RetryNode::RetryNode
    functionSourceFile: /src/behaviortreecpp/src/decorators/retry_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void RetryNode::RetryNode(const std::string& name, int NTries)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionName: BT::RetryNode::RetryNode
    functionSourceFile: /src/behaviortreecpp/src/decorators/retry_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RetryNode::RetryNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::DecoratorNode::halt
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 2
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: BT::RetryNode::halt
    functionSourceFile: /src/behaviortreecpp/src/decorators/retry_node.cpp
    functionUses: 0
    functionsReached:
    - BT::DecoratorNode::halt
    linkageType: ''
    returnType: void
    signature: void RetryNode::halt()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:44,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:46,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:51,1
    - Dst: status
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:55,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:56,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:62,1
    - Dst: getInput
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:69,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:72,1
    - Dst: requiresWakeUp
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:76,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:78,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:90,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:96,1
    - Dst: name
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:96,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 103
    functionName: BT::RetryNode::tick
    functionSourceFile: /src/behaviortreecpp/src/decorators/retry_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - emitWakeUpSignal
    - status
    - getInput
    - LogicError
    - name
    - RuntimeError
    - executeTick
    - resetChild
    - requiresWakeUp
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus RetryNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:24,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - NTries
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 25
    functionName: BT::RetryNode::RetryNode
    functionSourceFile: /src/behaviortreecpp/src/decorators/retry_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void RetryNode::RetryNode(const std::string& name, int NTries)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 32
    functionName: BT::RetryNode::RetryNode
    functionSourceFile: /src/behaviortreecpp/src/decorators/retry_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RetryNode::RetryNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::DecoratorNode::halt
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 2
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: BT::RetryNode::halt
    functionSourceFile: /src/behaviortreecpp/src/decorators/retry_node.cpp
    functionUses: 0
    functionsReached:
    - BT::DecoratorNode::halt
    linkageType: ''
    returnType: void
    signature: void RetryNode::halt()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:44,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:46,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:51,1
    - Dst: status
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:55,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:56,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:62,1
    - Dst: getInput
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:69,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:72,1
    - Dst: requiresWakeUp
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:76,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:78,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:90,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:96,1
    - Dst: name
      Src: /src/behaviortreecpp/src/decorators/retry_node.cpp:96,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 103
    functionName: BT::RetryNode::tick
    functionSourceFile: /src/behaviortreecpp/src/decorators/retry_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - emitWakeUpSignal
    - status
    - getInput
    - LogicError
    - name
    - RuntimeError
    - executeTick
    - resetChild
    - requiresWakeUp
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus RetryNode::tick()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: input_ports::find
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:25,1
    - Dst: input_ports::end
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:26,1
    - Dst: auto::second::empty
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:26,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:28,1
    - Dst: isBlackboardPointer
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:32,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - if_not_updated
    argTypes:
    - std::string
    - NodeConfig
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 20
    functionDepth: 1
    functionLinenumber: 20
    functionLinenumberEnd: 40
    functionName: BT::EntryUpdatedDecorator::EntryUpdatedDecorator
    functionSourceFile: /src/behaviortreecpp/src/decorators/updated_decorator.cpp
    functionUses: 0
    functionsReached:
    - input_ports::end
    - auto::second::empty
    - input_ports::find
    - LogicError
    - isBlackboardPointer
    linkageType: ''
    returnType: void
    signature: "void EntryUpdatedDecorator::EntryUpdatedDecorator(const std::string&
      name,\n                                             const NodeConfig& config,\n
      \                                            NodeStatus if_not_updated)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: child
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:47,1
    - Dst: config
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:52,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:52,1
    - Dst: child
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:69,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 72
    functionName: BT::EntryUpdatedDecorator::tick
    functionSourceFile: /src/behaviortreecpp/src/decorators/updated_decorator.cpp
    functionUses: 0
    functionsReached:
    - getEntry
    - config
    - child
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus EntryUpdatedDecorator::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::DecoratorNode::halt
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: BT::EntryUpdatedDecorator::halt
    functionSourceFile: /src/behaviortreecpp/src/decorators/updated_decorator.cpp
    functionUses: 0
    functionsReached:
    - BT::DecoratorNode::halt
    linkageType: ''
    returnType: void
    signature: void EntryUpdatedDecorator::halt()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: input_ports::find
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:25,1
    - Dst: input_ports::end
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:26,1
    - Dst: auto::second::empty
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:26,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:28,1
    - Dst: isBlackboardPointer
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:32,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 3
    argNames:
    - ' name'
    - ' config'
    - if_not_updated
    argTypes:
    - std::string
    - NodeConfig
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 20
    functionDepth: 1
    functionLinenumber: 20
    functionLinenumberEnd: 40
    functionName: BT::EntryUpdatedDecorator::EntryUpdatedDecorator
    functionSourceFile: /src/behaviortreecpp/src/decorators/updated_decorator.cpp
    functionUses: 0
    functionsReached:
    - input_ports::end
    - auto::second::empty
    - input_ports::find
    - LogicError
    - isBlackboardPointer
    linkageType: ''
    returnType: void
    signature: "void EntryUpdatedDecorator::EntryUpdatedDecorator(const std::string&
      name,\n                                             const NodeConfig& config,\n
      \                                            NodeStatus if_not_updated)"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: child
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:47,1
    - Dst: config
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:52,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:52,1
    - Dst: child
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:69,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 72
    functionName: BT::EntryUpdatedDecorator::tick
    functionSourceFile: /src/behaviortreecpp/src/decorators/updated_decorator.cpp
    functionUses: 0
    functionsReached:
    - getEntry
    - config
    - child
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus EntryUpdatedDecorator::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::DecoratorNode::halt
      Src: /src/behaviortreecpp/src/decorators/updated_decorator.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 2
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: BT::EntryUpdatedDecorator::halt
    functionSourceFile: /src/behaviortreecpp/src/decorators/updated_decorator.cpp
    functionUses: 0
    functionsReached:
    - BT::DecoratorNode::halt
    linkageType: ''
    returnType: void
    signature: void EntryUpdatedDecorator::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - NTries
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 26
    functionName: BT::RepeatNode::RepeatNode
    functionSourceFile: /src/behaviortreecpp/src/decorators/repeat_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void RepeatNode::RepeatNode(const std::string& name, int NTries)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 33
    functionName: BT::RepeatNode::RepeatNode
    functionSourceFile: /src/behaviortreecpp/src/decorators/repeat_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RepeatNode::RepeatNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:39,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:41,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:46,1
    - Dst: status
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:50,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:51,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:59,1
    - Dst: requiresWakeUp
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:63,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:65,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:73,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:83,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:89,1
    - Dst: name
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:89,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 96
    functionName: BT::RepeatNode::tick
    functionSourceFile: /src/behaviortreecpp/src/decorators/repeat_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - emitWakeUpSignal
    - status
    - getInput
    - LogicError
    - name
    - RuntimeError
    - executeTick
    - resetChild
    - requiresWakeUp
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus RepeatNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::DecoratorNode::halt
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 98
    functionDepth: 2
    functionLinenumber: 98
    functionLinenumberEnd: 102
    functionName: BT::RepeatNode::halt
    functionSourceFile: /src/behaviortreecpp/src/decorators/repeat_node.cpp
    functionUses: 0
    functionsReached:
    - BT::DecoratorNode::halt
    linkageType: ''
    returnType: void
    signature: void RepeatNode::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - NTries
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 26
    functionName: BT::RepeatNode::RepeatNode
    functionSourceFile: /src/behaviortreecpp/src/decorators/repeat_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void RepeatNode::RepeatNode(const std::string& name, int NTries)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 33
    functionName: BT::RepeatNode::RepeatNode
    functionSourceFile: /src/behaviortreecpp/src/decorators/repeat_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RepeatNode::RepeatNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:39,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:41,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:46,1
    - Dst: status
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:50,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:51,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:59,1
    - Dst: requiresWakeUp
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:63,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:65,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:73,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:83,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:89,1
    - Dst: name
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:89,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 96
    functionName: BT::RepeatNode::tick
    functionSourceFile: /src/behaviortreecpp/src/decorators/repeat_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - emitWakeUpSignal
    - status
    - getInput
    - LogicError
    - name
    - RuntimeError
    - executeTick
    - resetChild
    - requiresWakeUp
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus RepeatNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::DecoratorNode::halt
      Src: /src/behaviortreecpp/src/decorators/repeat_node.cpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 98
    functionDepth: 2
    functionLinenumber: 98
    functionLinenumberEnd: 102
    functionName: BT::RepeatNode::halt
    functionSourceFile: /src/behaviortreecpp/src/decorators/repeat_node.cpp
    functionUses: 0
    functionsReached:
    - BT::DecoratorNode::halt
    linkageType: ''
    returnType: void
    signature: void RepeatNode::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:20,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 21
    functionName: BT::WhileDoElseNode::WhileDoElseNode
    functionSourceFile: /src/behaviortreecpp/src/controls/while_do_else_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void WhileDoElseNode::WhileDoElseNode(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 23
    functionDepth: 2
    functionLinenumber: 23
    functionLinenumberEnd: 26
    functionName: BT::WhileDoElseNode::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/while_do_else_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    linkageType: ''
    returnType: void
    signature: void WhileDoElseNode::halt()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:30,1
    - Dst: std::logic_error
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:34,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:37,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:39,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:52,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:54,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:60,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:61,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:73,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 75
    functionName: BT::WhileDoElseNode::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/while_do_else_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - haltChild
    - size
    - std::logic_error
    - executeTick
    - resetChildren
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus WhileDoElseNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:20,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 21
    functionName: BT::WhileDoElseNode::WhileDoElseNode
    functionSourceFile: /src/behaviortreecpp/src/controls/while_do_else_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void WhileDoElseNode::WhileDoElseNode(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 23
    functionDepth: 2
    functionLinenumber: 23
    functionLinenumberEnd: 26
    functionName: BT::WhileDoElseNode::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/while_do_else_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    linkageType: ''
    returnType: void
    signature: void WhileDoElseNode::halt()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:30,1
    - Dst: std::logic_error
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:34,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:37,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:39,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:52,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:54,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:60,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:61,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/while_do_else_node.cpp:73,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 75
    functionName: BT::WhileDoElseNode::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/while_do_else_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - haltChild
    - size
    - std::logic_error
    - executeTick
    - resetChildren
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus WhileDoElseNode::tick()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ScriptingEnumsRegistry*::find
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:34,1
    - Dst: ScriptingEnumsRegistry*::end
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:35,1
    - Dst: data
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:42,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:42,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:43,1
    - Dst: data
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:43,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:44,1
    - Dst: std::stoi
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:49,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:50,1
    - Dst: ToInt
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:60,1
    - Dst: ToInt
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:60,1
    - Dst: ScriptingEnumsRegistry*::find
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:68,1
    - Dst: ScriptingEnumsRegistry*::end
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:69,1
    - Dst: data
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:76,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:76,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:77,1
    - Dst: data
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:77,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:78,1
    - Dst: std::stod
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:83,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:84,1
    - Dst: std::numeric_limits<float>::epsilon
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:94,1
    - Dst: ToReal
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:95,1
    - Dst: ToReal
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:95,1
    - Dst: std::abs
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:95,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 36
    argCount: 3
    argNames:
    - ' v1'
    - ' v2'
    - enums
    argTypes:
    - std::string
    - std::string
    - ScriptingEnumsRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 96
    functionName: BT::details::CheckStringEquality
    functionSourceFile: /src/behaviortreecpp/src/controls/switch_node.cpp
    functionUses: 0
    functionsReached:
    - std::from_chars
    - ScriptingEnumsRegistry*::end
    - ToInt
    - std::stod
    - std::abs
    - ScriptingEnumsRegistry*::find
    - ToReal
    - size
    - std::numeric_limits<float>::epsilon
    - data
    - std::errc
    - std::stoi
    linkageType: ''
    returnType: bool
    signature: "bool CheckStringEquality(const std::string& v1, const std::string&
      v2,\n                         const ScriptingEnumsRegistry* enums)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: ScriptingEnumsRegistry*::find
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:34,1
    - Dst: ScriptingEnumsRegistry*::end
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:35,1
    - Dst: data
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:42,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:42,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:43,1
    - Dst: data
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:43,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:44,1
    - Dst: std::stoi
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:49,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:50,1
    - Dst: ToInt
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:60,1
    - Dst: ToInt
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:60,1
    - Dst: ScriptingEnumsRegistry*::find
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:68,1
    - Dst: ScriptingEnumsRegistry*::end
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:69,1
    - Dst: data
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:76,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:76,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:77,1
    - Dst: data
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:77,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:78,1
    - Dst: std::stod
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:83,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:84,1
    - Dst: std::numeric_limits<float>::epsilon
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:94,1
    - Dst: ToReal
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:95,1
    - Dst: ToReal
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:95,1
    - Dst: std::abs
      Src: /src/behaviortreecpp/src/controls/switch_node.cpp:95,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 36
    argCount: 3
    argNames:
    - ' v1'
    - ' v2'
    - enums
    argTypes:
    - std::string
    - std::string
    - ScriptingEnumsRegistry*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 96
    functionName: BT::details::CheckStringEquality
    functionSourceFile: /src/behaviortreecpp/src/controls/switch_node.cpp
    functionUses: 0
    functionsReached:
    - std::from_chars
    - ScriptingEnumsRegistry*::end
    - ToInt
    - std::stod
    - std::abs
    - ScriptingEnumsRegistry*::find
    - ToReal
    - size
    - std::numeric_limits<float>::epsilon
    - data
    - std::errc
    - std::stoi
    linkageType: ''
    returnType: bool
    signature: "bool CheckStringEquality(const std::string& v1, const std::string&
      v2,\n                         const ScriptingEnumsRegistry* enums)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 28
    functionName: BT::ManualSelectorNode::ManualSelectorNode
    functionSourceFile: /src/behaviortreecpp/src/controls/manual_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void ManualSelectorNode::ManualSelectorNode(const std::string& name,
      const NodeConfig& config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:34,1
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 38
    functionName: BT::ManualSelectorNode::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/manual_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    - haltChild
    linkageType: ''
    returnType: void
    signature: void ManualSelectorNode::halt()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:42,1
    - Dst: BT::ManualSelectorNode::selectStatus
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:46,1
    - Dst: getInput
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:50,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:60,1
    - Dst: BT::ManualSelectorNode::selectChild
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:61,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:78,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 84
    functionName: BT::ManualSelectorNode::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/manual_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - getInput
    - BT::ManualSelectorNode::selectChild
    - size
    - executeTick
    - BT::ManualSelectorNode::selectStatus
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus ManualSelectorNode::tick()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: initscr
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:89,1
    - Dst: cbreak
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:90,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:92,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:93,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:94,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:95,1
    - Dst: wrefresh
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:97,1
    - Dst: noecho
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:98,1
    - Dst: keypad
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:99,1
    - Dst: curs_set
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:100,1
    - Dst: wgetch
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:121,1
    - Dst: werase
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:123,1
    - Dst: wrefresh
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:124,1
    - Dst: delwin
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:125,1
    - Dst: endwin
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:126,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 128
    functionName: BT::ManualSelectorNode::selectStatus
    functionSourceFile: /src/behaviortreecpp/src/controls/manual_node.cpp
    functionUses: 1
    functionsReached:
    - wrefresh
    - mvwprintw
    - noecho
    - wgetch
    - werase
    - cbreak
    - endwin
    - delwin
    - initscr
    - curs_set
    - keypad
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus ManualSelectorNode::selectStatus() const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:132,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:135,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:138,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:138,1
    - Dst: std::max
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:144,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:144,1
    - Dst: initscr
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:148,1
    - Dst: cbreak
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:149,1
    - Dst: newwin
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:151,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:151,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:153,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:154,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:155,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:156,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:159,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:161,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:161,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:161,1
    - Dst: wrefresh
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:164,1
    - Dst: noecho
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:165,1
    - Dst: keypad
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:166,1
    - Dst: curs_set
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:167,1
    - Dst: wattroff
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:174,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:175,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:175,1
    - Dst: wattron
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:206,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:207,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:207,1
    - Dst: wgetch
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:208,1
    - Dst: werase
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:211,1
    - Dst: wrefresh
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:212,1
    - Dst: delwin
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:213,1
    - Dst: endwin
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:214,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 53
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 216
    functionName: BT::ManualSelectorNode::selectChild
    functionSourceFile: /src/behaviortreecpp/src/controls/manual_node.cpp
    functionUses: 1
    functionsReached:
    - mvwprintw
    - std::vector::reserve
    - size
    - wgetch
    - wattroff
    - std::vector::size
    - initscr
    - curs_set
    - wattron
    - cbreak
    - endwin
    - keypad
    - newwin
    - noecho
    - werase
    - delwin
    - c_str
    - std::max
    - wrefresh
    - name
    - std::vector::push_back
    - static_cast<int>
    linkageType: ''
    returnType: uint8_t
    signature: uint8_t ManualSelectorNode::selectChild() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 28
    functionName: BT::ManualSelectorNode::ManualSelectorNode
    functionSourceFile: /src/behaviortreecpp/src/controls/manual_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void ManualSelectorNode::ManualSelectorNode(const std::string& name,
      const NodeConfig& config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:34,1
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 38
    functionName: BT::ManualSelectorNode::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/manual_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    - haltChild
    linkageType: ''
    returnType: void
    signature: void ManualSelectorNode::halt()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:42,1
    - Dst: BT::ManualSelectorNode::selectStatus
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:46,1
    - Dst: getInput
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:50,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:60,1
    - Dst: BT::ManualSelectorNode::selectChild
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:61,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:78,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 84
    functionName: BT::ManualSelectorNode::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/manual_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - getInput
    - BT::ManualSelectorNode::selectChild
    - size
    - executeTick
    - BT::ManualSelectorNode::selectStatus
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus ManualSelectorNode::tick()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: initscr
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:89,1
    - Dst: cbreak
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:90,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:92,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:93,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:94,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:95,1
    - Dst: wrefresh
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:97,1
    - Dst: noecho
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:98,1
    - Dst: keypad
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:99,1
    - Dst: curs_set
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:100,1
    - Dst: wgetch
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:121,1
    - Dst: werase
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:123,1
    - Dst: wrefresh
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:124,1
    - Dst: delwin
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:125,1
    - Dst: endwin
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:126,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 128
    functionName: BT::ManualSelectorNode::selectStatus
    functionSourceFile: /src/behaviortreecpp/src/controls/manual_node.cpp
    functionUses: 2
    functionsReached:
    - wrefresh
    - mvwprintw
    - noecho
    - wgetch
    - werase
    - cbreak
    - endwin
    - delwin
    - initscr
    - curs_set
    - keypad
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus ManualSelectorNode::selectStatus() const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:132,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:135,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:138,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:138,1
    - Dst: std::max
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:144,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:144,1
    - Dst: initscr
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:148,1
    - Dst: cbreak
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:149,1
    - Dst: newwin
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:151,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:151,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:153,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:154,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:155,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:156,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:159,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:161,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:161,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:161,1
    - Dst: wrefresh
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:164,1
    - Dst: noecho
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:165,1
    - Dst: keypad
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:166,1
    - Dst: curs_set
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:167,1
    - Dst: wattroff
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:174,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:175,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:175,1
    - Dst: wattron
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:206,1
    - Dst: mvwprintw
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:207,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:207,1
    - Dst: wgetch
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:208,1
    - Dst: werase
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:211,1
    - Dst: wrefresh
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:212,1
    - Dst: delwin
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:213,1
    - Dst: endwin
      Src: /src/behaviortreecpp/src/controls/manual_node.cpp:214,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 53
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 130
    functionDepth: 1
    functionLinenumber: 130
    functionLinenumberEnd: 216
    functionName: BT::ManualSelectorNode::selectChild
    functionSourceFile: /src/behaviortreecpp/src/controls/manual_node.cpp
    functionUses: 2
    functionsReached:
    - mvwprintw
    - std::vector::reserve
    - size
    - wgetch
    - wattroff
    - std::vector::size
    - initscr
    - curs_set
    - wattron
    - cbreak
    - endwin
    - keypad
    - newwin
    - noecho
    - werase
    - delwin
    - c_str
    - std::max
    - wrefresh
    - name
    - std::vector::push_back
    - static_cast<int>
    linkageType: ''
    returnType: uint8_t
    signature: uint8_t ManualSelectorNode::selectChild() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:24,1
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:28,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ' name'
    - make_async
    - ' conf'
    argTypes:
    - std::string
    - bool
    - NodeConfiguration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 30
    functionName: BT::SequenceNode::SequenceNode
    functionSourceFile: /src/behaviortreecpp/src/controls/sequence_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: "void SequenceNode::SequenceNode(const std::string& name, bool make_async,\n
      \                          const NodeConfiguration& conf)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: BT::SequenceNode::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/sequence_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    linkageType: ''
    returnType: void
    signature: void SequenceNode::halt()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:41,1
    - Dst: isStatusActive
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:43,1
    - Dst: status
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:43,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:48,1
    - Dst: TreeNode*::status
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:54,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:55,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:64,1
    - Dst: requiresWakeUp
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:72,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:75,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:89,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:89,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:98,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 104
    functionName: BT::SequenceNode::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/sequence_node.cpp
    functionUses: 0
    functionsReached:
    - TreeNode*::status
    - TreeNode*::executeTick
    - setStatus
    - emitWakeUpSignal
    - status
    - size
    - isStatusActive
    - LogicError
    - name
    - resetChildren
    - requiresWakeUp
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus SequenceNode::tick()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:24,1
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:28,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 3
    argNames:
    - ' name'
    - make_async
    - ' conf'
    argTypes:
    - std::string
    - bool
    - NodeConfiguration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 30
    functionName: BT::SequenceNode::SequenceNode
    functionSourceFile: /src/behaviortreecpp/src/controls/sequence_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: "void SequenceNode::SequenceNode(const std::string& name, bool make_async,\n
      \                          const NodeConfiguration& conf)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: BT::SequenceNode::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/sequence_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    linkageType: ''
    returnType: void
    signature: void SequenceNode::halt()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:41,1
    - Dst: isStatusActive
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:43,1
    - Dst: status
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:43,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:48,1
    - Dst: TreeNode*::status
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:54,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:55,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:64,1
    - Dst: requiresWakeUp
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:72,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:75,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:89,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:89,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/sequence_node.cpp:98,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 104
    functionName: BT::SequenceNode::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/sequence_node.cpp
    functionUses: 0
    functionsReached:
    - TreeNode*::status
    - TreeNode*::executeTick
    - setStatus
    - emitWakeUpSignal
    - status
    - size
    - isStatusActive
    - LogicError
    - name
    - resetChildren
    - requiresWakeUp
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus SequenceNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - enable
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 23
    functionName: BT::ReactiveSequence::EnableException
    functionSourceFile: /src/behaviortreecpp/src/controls/reactive_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ReactiveSequence::EnableException(bool enable)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: status
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:28,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:32,1
    - Dst: childrenCount
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:34,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:37,1
    - Dst: childrenCount
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:47,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:51,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:58,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:60,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:68,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:77,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:82,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:82,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:87,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 91
    functionName: BT::ReactiveSequence::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/reactive_sequence.cpp
    functionUses: 0
    functionsReached:
    - TreeNode*::executeTick
    - setStatus
    - haltChild
    - status
    - LogicError
    - name
    - childrenCount
    - resetChildren
    - static_cast<int>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus ReactiveSequence::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 97
    functionName: BT::ReactiveSequence::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/reactive_sequence.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    linkageType: ''
    returnType: void
    signature: void ReactiveSequence::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - enable
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 23
    functionName: BT::ReactiveSequence::EnableException
    functionSourceFile: /src/behaviortreecpp/src/controls/reactive_sequence.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ReactiveSequence::EnableException(bool enable)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: status
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:28,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:32,1
    - Dst: childrenCount
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:34,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:37,1
    - Dst: childrenCount
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:47,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:51,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:58,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:60,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:68,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:77,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:82,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:82,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:87,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 91
    functionName: BT::ReactiveSequence::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/reactive_sequence.cpp
    functionUses: 0
    functionsReached:
    - TreeNode*::executeTick
    - setStatus
    - haltChild
    - status
    - LogicError
    - name
    - childrenCount
    - resetChildren
    - static_cast<int>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus ReactiveSequence::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/reactive_sequence.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 97
    functionName: BT::ReactiveSequence::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/reactive_sequence.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    linkageType: ''
    returnType: void
    signature: void ReactiveSequence::halt()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:23,1
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:27,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' name'
    - make_asynch
    argTypes:
    - std::string
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 29
    functionName: BT::FallbackNode::FallbackNode
    functionSourceFile: /src/behaviortreecpp/src/controls/fallback_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void FallbackNode::FallbackNode(const std::string& name, bool make_asynch)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:33,1
    - Dst: isStatusActive
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:35,1
    - Dst: status
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:35,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:40,1
    - Dst: TreeNode*::status
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:46,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:47,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:55,1
    - Dst: requiresWakeUp
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:63,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:66,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:78,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:78,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:87,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 94
    functionName: BT::FallbackNode::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/fallback_node.cpp
    functionUses: 0
    functionsReached:
    - TreeNode*::status
    - TreeNode*::executeTick
    - setStatus
    - emitWakeUpSignal
    - status
    - size
    - isStatusActive
    - LogicError
    - name
    - resetChildren
    - requiresWakeUp
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus FallbackNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionName: BT::FallbackNode::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/fallback_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    linkageType: ''
    returnType: void
    signature: void FallbackNode::halt()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:23,1
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:27,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' name'
    - make_asynch
    argTypes:
    - std::string
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 29
    functionName: BT::FallbackNode::FallbackNode
    functionSourceFile: /src/behaviortreecpp/src/controls/fallback_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void FallbackNode::FallbackNode(const std::string& name, bool make_asynch)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:33,1
    - Dst: isStatusActive
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:35,1
    - Dst: status
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:35,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:40,1
    - Dst: TreeNode*::status
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:46,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:47,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:55,1
    - Dst: requiresWakeUp
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:63,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:66,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:78,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:78,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:87,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 94
    functionName: BT::FallbackNode::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/fallback_node.cpp
    functionUses: 0
    functionsReached:
    - TreeNode*::status
    - TreeNode*::executeTick
    - setStatus
    - emitWakeUpSignal
    - status
    - size
    - isStatusActive
    - LogicError
    - name
    - resetChildren
    - requiresWakeUp
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus FallbackNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/fallback_node.cpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 96
    functionDepth: 2
    functionLinenumber: 96
    functionLinenumberEnd: 101
    functionName: BT::FallbackNode::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/fallback_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    linkageType: ''
    returnType: void
    signature: void FallbackNode::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:20,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 21
    functionName: BT::TryCatchNode::TryCatchNode
    functionSourceFile: /src/behaviortreecpp/src/controls/try_catch_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void TryCatchNode::TryCatchNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:26,1
    - Dst: isStatusActive
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:30,1
    - Dst: status
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:30,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:31,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:34,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:36,1
    - Dst: back
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:41,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:42,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:45,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:45,1
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:52,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 23
    functionDepth: 2
    functionLinenumber: 23
    functionLinenumberEnd: 53
    functionName: BT::TryCatchNode::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/try_catch_node.cpp
    functionUses: 0
    functionsReached:
    - TreeNode*::executeTick
    - BT::ControlNode::halt
    - haltChild
    - status
    - getInput
    - size
    - isStatusActive
    - back
    linkageType: ''
    returnType: void
    signature: void TryCatchNode::halt()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:57,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:61,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:61,1
    - Dst: isStatusActive
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:64,1
    - Dst: status
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:64,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:70,1
    - Dst: back
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:77,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:78,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:86,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:96,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:105,1
    - Dst: BT::TryCatchNode::tick
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:108,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:120,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:120,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:127,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 132
    functionName: BT::TryCatchNode::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/try_catch_node.cpp
    functionUses: 1
    functionsReached:
    - TreeNode*::executeTick
    - BT::TryCatchNode::tick
    - setStatus
    - status
    - LogicError
    - name
    - size
    - isStatusActive
    - back
    - resetChildren
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus TryCatchNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:20,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 21
    functionName: BT::TryCatchNode::TryCatchNode
    functionSourceFile: /src/behaviortreecpp/src/controls/try_catch_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void TryCatchNode::TryCatchNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:26,1
    - Dst: isStatusActive
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:30,1
    - Dst: status
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:30,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:31,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:34,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:36,1
    - Dst: back
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:41,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:42,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:45,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:45,1
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:52,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 23
    functionDepth: 2
    functionLinenumber: 23
    functionLinenumberEnd: 53
    functionName: BT::TryCatchNode::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/try_catch_node.cpp
    functionUses: 0
    functionsReached:
    - TreeNode*::executeTick
    - BT::ControlNode::halt
    - haltChild
    - status
    - getInput
    - size
    - isStatusActive
    - back
    linkageType: ''
    returnType: void
    signature: void TryCatchNode::halt()
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:57,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:61,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:61,1
    - Dst: isStatusActive
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:64,1
    - Dst: status
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:64,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:70,1
    - Dst: back
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:77,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:78,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:86,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:96,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:105,1
    - Dst: BT::TryCatchNode::tick
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:108,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:120,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:120,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/try_catch_node.cpp:127,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 55
    functionDepth: 1
    functionLinenumber: 55
    functionLinenumberEnd: 132
    functionName: BT::TryCatchNode::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/try_catch_node.cpp
    functionUses: 2
    functionsReached:
    - TreeNode*::executeTick
    - BT::TryCatchNode::tick
    - setStatus
    - status
    - LogicError
    - name
    - size
    - isStatusActive
    - back
    - resetChildren
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus TryCatchNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 31
    functionName: BT::ParallelNode::ParallelNode
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void ParallelNode::ParallelNode(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 38
    functionName: BT::ParallelNode::ParallelNode
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParallelNode::ParallelNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:44,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:46,1
    - Dst: getInput
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:49,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:51,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:55,1
    - Dst: BT::ParallelNode::successThreshold
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:57,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:59,1
    - Dst: BT::ParallelNode::failureThreshold
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:62,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:64,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:67,1
    - Dst: count
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:74,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:77,1
    - Dst: insert
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:87,1
    - Dst: insert
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:93,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:104,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:104,1
    - Dst: BT::ParallelNode::successThreshold
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:109,1
    - Dst: BT::ParallelNode::clear
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:115,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:116,1
    - Dst: BT::ParallelNode::failureThreshold
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:123,1
    - Dst: BT::ParallelNode::clear
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:125,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:126,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 53
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 132
    functionName: BT::ParallelNode::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 0
    functionsReached:
    - TreeNode*::executeTick
    - BT::ParallelNode::clear
    - BT::ParallelNode::successThreshold
    - setStatus
    - count
    - getInput
    - LogicError
    - size
    - name
    - BT::ParallelNode::failureThreshold
    - RuntimeError
    - insert
    - resetChildren
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus ParallelNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ParallelNode::clear
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 139
    functionName: BT::ParallelNode::clear
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 2
    functionsReached:
    - BT::ParallelNode::clear
    linkageType: ''
    returnType: void
    signature: void ParallelNode::clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ParallelNode::clear
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:143,1
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 141
    functionDepth: 2
    functionLinenumber: 141
    functionLinenumberEnd: 145
    functionName: BT::ParallelNode::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    - BT::ParallelNode::clear
    linkageType: ''
    returnType: void
    signature: void ParallelNode::halt()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:151,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 157
    functionName: BT::ParallelNode::successThreshold
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - size
    linkageType: ''
    returnType: size_t
    signature: size_t ParallelNode::successThreshold() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:163,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 169
    functionName: BT::ParallelNode::failureThreshold
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - size
    linkageType: ''
    returnType: size_t
    signature: size_t ParallelNode::failureThreshold() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - threshold
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionName: BT::ParallelNode::setSuccessThreshold
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParallelNode::setSuccessThreshold(int threshold)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - threshold
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 179
    functionName: BT::ParallelNode::setFailureThreshold
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParallelNode::setFailureThreshold(int threshold)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 31
    functionName: BT::ParallelNode::ParallelNode
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void ParallelNode::ParallelNode(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 38
    functionName: BT::ParallelNode::ParallelNode
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParallelNode::ParallelNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:44,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:46,1
    - Dst: getInput
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:49,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:51,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:55,1
    - Dst: BT::ParallelNode::successThreshold
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:57,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:59,1
    - Dst: BT::ParallelNode::failureThreshold
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:62,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:64,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:67,1
    - Dst: count
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:74,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:77,1
    - Dst: insert
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:87,1
    - Dst: insert
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:93,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:104,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:104,1
    - Dst: BT::ParallelNode::successThreshold
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:109,1
    - Dst: BT::ParallelNode::clear
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:115,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:116,1
    - Dst: BT::ParallelNode::failureThreshold
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:123,1
    - Dst: BT::ParallelNode::clear
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:125,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:126,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 53
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 40
    functionDepth: 2
    functionLinenumber: 40
    functionLinenumberEnd: 132
    functionName: BT::ParallelNode::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 0
    functionsReached:
    - TreeNode*::executeTick
    - BT::ParallelNode::clear
    - BT::ParallelNode::successThreshold
    - setStatus
    - count
    - getInput
    - LogicError
    - size
    - name
    - BT::ParallelNode::failureThreshold
    - RuntimeError
    - insert
    - resetChildren
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus ParallelNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ParallelNode::clear
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 139
    functionName: BT::ParallelNode::clear
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 5
    functionsReached:
    - BT::ParallelNode::clear
    linkageType: ''
    returnType: void
    signature: void ParallelNode::clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ParallelNode::clear
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:143,1
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 141
    functionDepth: 2
    functionLinenumber: 141
    functionLinenumberEnd: 145
    functionName: BT::ParallelNode::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    - BT::ParallelNode::clear
    linkageType: ''
    returnType: void
    signature: void ParallelNode::halt()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:151,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 147
    functionDepth: 1
    functionLinenumber: 147
    functionLinenumberEnd: 157
    functionName: BT::ParallelNode::successThreshold
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 2
    functionsReached:
    - std::max
    - size
    linkageType: ''
    returnType: size_t
    signature: size_t ParallelNode::successThreshold() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:163,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/parallel_node.cpp:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 169
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 169
    functionName: BT::ParallelNode::failureThreshold
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 2
    functionsReached:
    - std::max
    - size
    linkageType: ''
    returnType: size_t
    signature: size_t ParallelNode::failureThreshold() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - threshold
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 174
    functionName: BT::ParallelNode::setSuccessThreshold
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParallelNode::setSuccessThreshold(int threshold)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - threshold
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 179
    functionName: BT::ParallelNode::setFailureThreshold
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParallelNode::setFailureThreshold(int threshold)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:20,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 21
    functionName: BT::IfThenElseNode::IfThenElseNode
    functionSourceFile: /src/behaviortreecpp/src/controls/if_then_else_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void IfThenElseNode::IfThenElseNode(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 23
    functionDepth: 2
    functionLinenumber: 23
    functionLinenumberEnd: 27
    functionName: BT::IfThenElseNode::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/if_then_else_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    linkageType: ''
    returnType: void
    signature: void IfThenElseNode::halt()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:31,1
    - Dst: std::logic_error
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:35,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:38,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:42,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:67,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:72,1
    - Dst: std::logic_error
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:77,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 78
    functionName: BT::IfThenElseNode::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/if_then_else_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - size
    - std::logic_error
    - executeTick
    - resetChildren
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus IfThenElseNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:20,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 21
    functionName: BT::IfThenElseNode::IfThenElseNode
    functionSourceFile: /src/behaviortreecpp/src/controls/if_then_else_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void IfThenElseNode::IfThenElseNode(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 23
    functionDepth: 2
    functionLinenumber: 23
    functionLinenumberEnd: 27
    functionName: BT::IfThenElseNode::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/if_then_else_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    linkageType: ''
    returnType: void
    signature: void IfThenElseNode::halt()
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:31,1
    - Dst: std::logic_error
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:35,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:38,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:42,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:67,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:72,1
    - Dst: std::logic_error
      Src: /src/behaviortreecpp/src/controls/if_then_else_node.cpp:77,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 29
    functionDepth: 1
    functionLinenumber: 29
    functionLinenumberEnd: 78
    functionName: BT::IfThenElseNode::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/if_then_else_node.cpp
    functionUses: 0
    functionsReached:
    - setStatus
    - size
    - std::logic_error
    - executeTick
    - resetChildren
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus IfThenElseNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - enable
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 23
    functionName: BT::ReactiveFallback::EnableException
    functionSourceFile: /src/behaviortreecpp/src/controls/reactive_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ReactiveFallback::EnableException(bool enable)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: status
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:28,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:32,1
    - Dst: childrenCount
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:34,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:37,1
    - Dst: childrenCount
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:47,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:51,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:56,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:58,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:60,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:71,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:77,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:82,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:82,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:87,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 91
    functionName: BT::ReactiveFallback::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/reactive_fallback.cpp
    functionUses: 0
    functionsReached:
    - TreeNode*::executeTick
    - setStatus
    - haltChild
    - status
    - LogicError
    - name
    - childrenCount
    - resetChildren
    - static_cast<int>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus ReactiveFallback::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 97
    functionName: BT::ReactiveFallback::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/reactive_fallback.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    linkageType: ''
    returnType: void
    signature: void ReactiveFallback::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - enable
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 23
    functionName: BT::ReactiveFallback::EnableException
    functionSourceFile: /src/behaviortreecpp/src/controls/reactive_fallback.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ReactiveFallback::EnableException(bool enable)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: status
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:28,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:32,1
    - Dst: childrenCount
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:34,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:37,1
    - Dst: childrenCount
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:47,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:51,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:56,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:58,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:60,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:71,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:77,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:82,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:82,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:87,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 91
    functionName: BT::ReactiveFallback::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/reactive_fallback.cpp
    functionUses: 0
    functionsReached:
    - TreeNode*::executeTick
    - setStatus
    - haltChild
    - status
    - LogicError
    - name
    - childrenCount
    - resetChildren
    - static_cast<int>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus ReactiveFallback::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/reactive_fallback.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 97
    functionName: BT::ReactiveFallback::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/reactive_fallback.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    linkageType: ''
    returnType: void
    signature: void ReactiveFallback::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:21,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 22
    functionName: BT::SequenceWithMemory::SequenceWithMemory
    functionSourceFile: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void SequenceWithMemory::SequenceWithMemory(const std::string& name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:26,1
    - Dst: isStatusActive
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:28,1
    - Dst: status
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:28,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:32,1
    - Dst: TreeNode*::status
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:38,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:39,1
    - Dst: childrenCount
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:48,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:50,1
    - Dst: requiresWakeUp
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:59,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:62,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:76,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:76,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:85,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 91
    functionName: BT::SequenceWithMemory::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp
    functionUses: 0
    functionsReached:
    - TreeNode*::status
    - TreeNode*::executeTick
    - setStatus
    - haltChild
    - emitWakeUpSignal
    - status
    - size
    - isStatusActive
    - LogicError
    - name
    - childrenCount
    - resetChildren
    - requiresWakeUp
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus SequenceWithMemory::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: BT::SequenceWithMemory::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    linkageType: ''
    returnType: void
    signature: void SequenceWithMemory::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:21,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 22
    functionName: BT::SequenceWithMemory::SequenceWithMemory
    functionSourceFile: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void SequenceWithMemory::SequenceWithMemory(const std::string& name)
  - BBCount: 9
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:26,1
    - Dst: isStatusActive
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:28,1
    - Dst: status
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:28,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:32,1
    - Dst: TreeNode*::status
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:38,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:39,1
    - Dst: childrenCount
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:48,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:50,1
    - Dst: requiresWakeUp
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:59,1
    - Dst: emitWakeUpSignal
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:62,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:76,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:76,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:85,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 40
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 91
    functionName: BT::SequenceWithMemory::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp
    functionUses: 0
    functionsReached:
    - TreeNode*::status
    - TreeNode*::executeTick
    - setStatus
    - haltChild
    - emitWakeUpSignal
    - status
    - size
    - isStatusActive
    - LogicError
    - name
    - childrenCount
    - resetChildren
    - requiresWakeUp
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus SequenceWithMemory::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 93
    functionDepth: 2
    functionLinenumber: 93
    functionLinenumberEnd: 98
    functionName: BT::SequenceWithMemory::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    linkageType: ''
    returnType: void
    signature: void SequenceWithMemory::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 21
    functionDepth: 0
    functionLinenumber: 21
    functionLinenumberEnd: 23
    functionName: BT::ParallelAllNode::ParallelAllNode
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_all_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParallelAllNode::ParallelAllNode(const std::string& name, const
      NodeConfig& config)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:28,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:30,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:32,1
    - Dst: BT::ParallelAllNode::setFailureThreshold
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:33,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:39,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:42,1
    - Dst: count
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:50,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:55,1
    - Dst: insert
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:60,1
    - Dst: insert
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:65,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:81,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:81,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:90,1
    - Dst: haltChildren
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:93,1
    - Dst: clear
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:94,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 25
    functionDepth: 1
    functionLinenumber: 25
    functionLinenumberEnd: 103
    functionName: BT::ParallelAllNode::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_all_node.cpp
    functionUses: 0
    functionsReached:
    - TreeNode*::executeTick
    - setStatus
    - count
    - getInput
    - LogicError
    - size
    - name
    - RuntimeError
    - insert
    - haltChildren
    - clear
    - BT::ParallelAllNode::setFailureThreshold
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus ParallelAllNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:107,1
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 105
    functionDepth: 2
    functionLinenumber: 105
    functionLinenumberEnd: 110
    functionName: BT::ParallelAllNode::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_all_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    - clear
    linkageType: ''
    returnType: void
    signature: void ParallelAllNode::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionName: BT::ParallelAllNode::failureThreshold
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_all_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t ParallelAllNode::failureThreshold() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:121,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - threshold
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 127
    functionName: BT::ParallelAllNode::setFailureThreshold
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_all_node.cpp
    functionUses: 1
    functionsReached:
    - std::max
    - size
    linkageType: ''
    returnType: void
    signature: void ParallelAllNode::setFailureThreshold(int threshold)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 21
    functionDepth: 0
    functionLinenumber: 21
    functionLinenumberEnd: 23
    functionName: BT::ParallelAllNode::ParallelAllNode
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_all_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParallelAllNode::ParallelAllNode(const std::string& name, const
      NodeConfig& config)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:28,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:30,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:32,1
    - Dst: BT::ParallelAllNode::setFailureThreshold
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:33,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:39,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:42,1
    - Dst: count
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:50,1
    - Dst: TreeNode*::executeTick
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:55,1
    - Dst: insert
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:60,1
    - Dst: insert
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:65,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:81,1
    - Dst: name
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:81,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:90,1
    - Dst: haltChildren
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:93,1
    - Dst: clear
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:94,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 25
    functionDepth: 2
    functionLinenumber: 25
    functionLinenumberEnd: 103
    functionName: BT::ParallelAllNode::tick
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_all_node.cpp
    functionUses: 0
    functionsReached:
    - TreeNode*::executeTick
    - setStatus
    - count
    - getInput
    - LogicError
    - size
    - name
    - RuntimeError
    - insert
    - haltChildren
    - clear
    - BT::ParallelAllNode::setFailureThreshold
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus ParallelAllNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:107,1
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:109,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 105
    functionDepth: 2
    functionLinenumber: 105
    functionLinenumberEnd: 110
    functionName: BT::ParallelAllNode::halt
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_all_node.cpp
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    - clear
    linkageType: ''
    returnType: void
    signature: void ParallelAllNode::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 115
    functionName: BT::ParallelAllNode::failureThreshold
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_all_node.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t ParallelAllNode::failureThreshold() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::max
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:121,1
    - Dst: size
      Src: /src/behaviortreecpp/src/controls/parallel_all_node.cpp:121,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - threshold
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 127
    functionName: BT::ParallelAllNode::setFailureThreshold
    functionSourceFile: /src/behaviortreecpp/src/controls/parallel_all_node.cpp
    functionUses: 2
    functionsReached:
    - std::max
    - size
    linkageType: ''
    returnType: void
    signature: void ParallelAllNode::setFailureThreshold(int threshold)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sqlite3_exec
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:20,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:20,1
    - Dst: sqlite3_free
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:27,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:29,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - db
    - ' sql'
    argTypes:
    - sqlite3*
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 31
    functionName: BT::execSQL
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - RuntimeError
    - c_str
    - sqlite3_exec
    - sqlite3_free
    linkageType: ''
    returnType: void
    signature: void execSQL(sqlite3* db, const std::string& sql)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sqlite3_prepare_v2
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:37,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:37,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:40,1
    - Dst: string
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:40,1
    - Dst: sqlite3_errmsg
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - db
    - ' sql'
    argTypes:
    - sqlite3*
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 43
    functionName: BT::prepareStatement
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - sqlite3_errmsg
    - string
    - RuntimeError
    - sqlite3_prepare_v2
    - c_str
    linkageType: ''
    returnType: sqlite3_stmt
    signature: sqlite3_stmt * prepareStatement(sqlite3* db, const std::string& sql)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sqlite3_step
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:48,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:51,1
    - Dst: string
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:51,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:51,1
    - Dst: sqlite3_finalize
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:53,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - stmt
    argTypes:
    - sqlite3_stmt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: BT::execStatement
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - sqlite3_step
    - string
    - sqlite3_finalize
    - to_string
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void execStatement(sqlite3_stmt* stmt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sqlite3_exec
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:20,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:20,1
    - Dst: sqlite3_free
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:27,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:29,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - db
    - ' sql'
    argTypes:
    - sqlite3*
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 31
    functionName: BT::execSQL
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - RuntimeError
    - c_str
    - sqlite3_exec
    - sqlite3_free
    linkageType: ''
    returnType: void
    signature: void execSQL(sqlite3* db, const std::string& sql)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sqlite3_prepare_v2
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:37,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:37,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:40,1
    - Dst: string
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:40,1
    - Dst: sqlite3_errmsg
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - db
    - ' sql'
    argTypes:
    - sqlite3*
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 43
    functionName: BT::prepareStatement
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - sqlite3_errmsg
    - string
    - RuntimeError
    - sqlite3_prepare_v2
    - c_str
    linkageType: ''
    returnType: sqlite3_stmt
    signature: sqlite3_stmt * prepareStatement(sqlite3* db, const std::string& sql)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sqlite3_step
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:48,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:51,1
    - Dst: string
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:51,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:51,1
    - Dst: sqlite3_finalize
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:53,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - stmt
    argTypes:
    - sqlite3_stmt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: BT::execStatement
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - sqlite3_step
    - string
    - sqlite3_finalize
    - to_string
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void execStatement(sqlite3_stmt* stmt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: filename
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:62,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:65,1
    - Dst: enableTransitionToIdle
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:68,1
    - Dst: sqlite3_open
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:71,1
    - Dst: string
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:71,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:74,1
    - Dst: string
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:74,1
    - Dst: sqlite3_errmsg
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:74,1
    - Dst: execSQL
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:78,1
    - Dst: execSQL
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:86,1
    - Dst: execSQL
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:91,1
    - Dst: execSQL
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:98,1
    - Dst: execSQL
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:99,1
    - Dst: execSQL
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:100,1
    - Dst: WriteTreeToXML
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:104,1
    - Dst: prepareStatement
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:105,1
    - Dst: sqlite3_bind_text
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:107,1
    - Dst: auto::c_str
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:107,1
    - Dst: execStatement
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:108,1
    - Dst: prepareStatement
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:111,1
    - Dst: sqlite3_step
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:112,1
    - Dst: sqlite3_column_int
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:114,1
    - Dst: sqlite3_finalize
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:116,1
    - Dst: prepareStatement
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:123,1
    - Dst: sqlite3_bind_int
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:124,1
    - Dst: sqlite3_bind_text
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:125,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:125,1
    - Dst: sqlite3_bind_int
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:126,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:126,1
    - Dst: execStatement
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:127,1
    - Dst: std::thread
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:131,1
    - Dst: wait
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:136,1
    - Dst: load
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:136,1
    - Dst: subscribeToTreeChanges
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:138,1
    - Dst: rootNode
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:138,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 3
    argNames:
    - ' tree'
    - ' filepath'
    - append
    argTypes:
    - Tree
    - std::filesystem::path
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 139
    functionName: BT::SqliteLogger::SqliteLogger
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - UID
    - execStatement
    - filename
    - sqlite3_finalize
    - fullPath
    - sqlite3_bind_int
    - sqlite3_column_int
    - sqlite3_step
    - sqlite3_errmsg
    - std::thread
    - string
    - wait
    - sqlite3_open
    - prepareStatement
    - rootNode
    - RuntimeError
    - subscribeToTreeChanges
    - auto::c_str
    - sqlite3_bind_text
    - WriteTreeToXML
    - load
    - execSQL
    - enableTransitionToIdle
    linkageType: ''
    returnType: void
    signature: "void SqliteLogger::SqliteLogger(const Tree& tree, std::filesystem::path
      const& filepath,\n                           bool append)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unsubscribeFromTreeChanges
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:144,1
    - Dst: notify_one
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:149,1
    - Dst: join
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:150,1
    - Dst: flush
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:151,1
    - Dst: execSQL
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:152,1
    - Dst: what
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:156,1
    - Dst: sqlite3_close
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:158,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 159
    functionName: SqliteLogger::~SqliteLogger()
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - join
    - flush
    - sqlite3_close
    - notify_one
    - unsubscribeFromTreeChanges
    - what
    - execSQL
    linkageType: ''
    returnType: void
    signature: void SqliteLogger::~SqliteLogger()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - func
    argTypes:
    - ExtraCallback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 164
    functionName: BT::SqliteLogger::setAdditionalCallback
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SqliteLogger::setAdditionalCallback(ExtraCallback func)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: duration_cast<microseconds>
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:170,1
    - Dst: std::max
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:171,1
    - Dst: find
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:183,1
    - Dst: end
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:184,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:193,1
    - Dst: extra_func_
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:198,1
    - Dst: push_back
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:203,1
    - Dst: notify_one
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:205,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 4
    argNames:
    - timestamp
    - ' node'
    - prev_status
    - status
    argTypes:
    - Duration
    - TreeNode
    - NodeStatus
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 206
    functionName: BT::SqliteLogger::callback
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - UID
    - find
    - notify_one
    - push_back
    - extra_func_
    - end
    - duration_cast<microseconds>
    - std::max
    linkageType: ''
    returnType: void
    signature: "void SqliteLogger::callback(Duration timestamp, const TreeNode& node,\n
      \                           NodeStatus prev_status, NodeStatus status)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: execSQL
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - statement
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 211
    functionName: BT::SqliteLogger::execSqlStatement
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - execSQL
    linkageType: ''
    returnType: void
    signature: void SqliteLogger::execSqlStatement(std::string statement)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: store
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:220,1
    - Dst: notify_one
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:222,1
    - Dst: std::deque::clear
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:226,1
    - Dst: wait
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:229,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:229,1
    - Dst: swap
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:230,1
    - Dst: std::deque::empty
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:233,1
    - Dst: std::deque::front
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:235,1
    - Dst: std::deque::pop_front
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:236,1
    - Dst: prepareStatement
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:238,1
    - Dst: sqlite3_bind_int64
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:240,1
    - Dst: sqlite3_bind_int
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:241,1
    - Dst: sqlite3_bind_int
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:242,1
    - Dst: sqlite3_bind_int64
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:243,1
    - Dst: sqlite3_bind_int
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:244,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:244,1
    - Dst: sqlite3_bind_text
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:245,1
    - Dst: auto::extra_data::c_str
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:245,1
    - Dst: execStatement
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:246,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 213
    functionDepth: 1
    functionLinenumber: 213
    functionLinenumberEnd: 249
    functionName: BT::SqliteLogger::writerLoop
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - std::deque::front
    - auto::extra_data::c_str
    - sqlite3_bind_int64
    - std::deque::pop_front
    - wait
    - execStatement
    - notify_one
    - sqlite3_bind_text
    - std::deque::clear
    - store
    - std::deque::empty
    - swap
    - sqlite3_bind_int
    - empty
    - prepareStatement
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void SqliteLogger::writerLoop()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sqlite3_db_cacheflush
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:253,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 254
    functionName: BT::SqliteLogger::flush()
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - sqlite3_db_cacheflush
    linkageType: ''
    returnType: void
    signature: void BT::SqliteLogger::flush()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sqlite3_exec
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:20,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:20,1
    - Dst: sqlite3_free
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:27,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:29,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - db
    - ' sql'
    argTypes:
    - sqlite3*
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 31
    functionName: BT::execSQL
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - RuntimeError
    - c_str
    - sqlite3_exec
    - sqlite3_free
    linkageType: ''
    returnType: void
    signature: void execSQL(sqlite3* db, const std::string& sql)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sqlite3_prepare_v2
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:37,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:37,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:40,1
    - Dst: string
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:40,1
    - Dst: sqlite3_errmsg
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - db
    - ' sql'
    argTypes:
    - sqlite3*
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 43
    functionName: BT::prepareStatement
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - sqlite3_errmsg
    - string
    - RuntimeError
    - sqlite3_prepare_v2
    - c_str
    linkageType: ''
    returnType: sqlite3_stmt
    signature: sqlite3_stmt * prepareStatement(sqlite3* db, const std::string& sql)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sqlite3_step
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:48,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:51,1
    - Dst: string
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:51,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:51,1
    - Dst: sqlite3_finalize
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:53,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - stmt
    argTypes:
    - sqlite3_stmt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: BT::execStatement
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - sqlite3_step
    - string
    - sqlite3_finalize
    - to_string
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void execStatement(sqlite3_stmt* stmt)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: sqlite3_exec
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:20,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:20,1
    - Dst: sqlite3_free
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:27,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:29,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - db
    - ' sql'
    argTypes:
    - sqlite3*
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 31
    functionName: BT::execSQL
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - RuntimeError
    - c_str
    - sqlite3_exec
    - sqlite3_free
    linkageType: ''
    returnType: void
    signature: void execSQL(sqlite3* db, const std::string& sql)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sqlite3_prepare_v2
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:37,1
    - Dst: c_str
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:37,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:40,1
    - Dst: string
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:40,1
    - Dst: sqlite3_errmsg
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:40,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - db
    - ' sql'
    argTypes:
    - sqlite3*
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 34
    functionDepth: 1
    functionLinenumber: 34
    functionLinenumberEnd: 43
    functionName: BT::prepareStatement
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - sqlite3_errmsg
    - string
    - RuntimeError
    - sqlite3_prepare_v2
    - c_str
    linkageType: ''
    returnType: sqlite3_stmt
    signature: sqlite3_stmt * prepareStatement(sqlite3* db, const std::string& sql)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sqlite3_step
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:48,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:51,1
    - Dst: string
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:51,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:51,1
    - Dst: sqlite3_finalize
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:53,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 1
    argNames:
    - stmt
    argTypes:
    - sqlite3_stmt*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: BT::execStatement
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - sqlite3_step
    - string
    - sqlite3_finalize
    - to_string
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void execStatement(sqlite3_stmt* stmt)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: filename
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:62,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:65,1
    - Dst: enableTransitionToIdle
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:68,1
    - Dst: sqlite3_open
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:71,1
    - Dst: string
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:71,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:74,1
    - Dst: string
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:74,1
    - Dst: sqlite3_errmsg
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:74,1
    - Dst: execSQL
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:78,1
    - Dst: execSQL
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:86,1
    - Dst: execSQL
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:91,1
    - Dst: execSQL
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:98,1
    - Dst: execSQL
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:99,1
    - Dst: execSQL
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:100,1
    - Dst: WriteTreeToXML
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:104,1
    - Dst: prepareStatement
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:105,1
    - Dst: sqlite3_bind_text
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:107,1
    - Dst: auto::c_str
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:107,1
    - Dst: execStatement
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:108,1
    - Dst: prepareStatement
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:111,1
    - Dst: sqlite3_step
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:112,1
    - Dst: sqlite3_column_int
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:114,1
    - Dst: sqlite3_finalize
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:116,1
    - Dst: prepareStatement
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:123,1
    - Dst: sqlite3_bind_int
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:124,1
    - Dst: sqlite3_bind_text
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:125,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:125,1
    - Dst: sqlite3_bind_int
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:126,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:126,1
    - Dst: execStatement
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:127,1
    - Dst: std::thread
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:131,1
    - Dst: wait
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:136,1
    - Dst: load
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:136,1
    - Dst: subscribeToTreeChanges
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:138,1
    - Dst: rootNode
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:138,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 36
    argCount: 3
    argNames:
    - ' tree'
    - ' filepath'
    - append
    argTypes:
    - Tree
    - std::filesystem::path
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 139
    functionName: BT::SqliteLogger::SqliteLogger
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - UID
    - execStatement
    - filename
    - sqlite3_finalize
    - fullPath
    - sqlite3_bind_int
    - sqlite3_column_int
    - sqlite3_step
    - sqlite3_errmsg
    - std::thread
    - string
    - wait
    - sqlite3_open
    - prepareStatement
    - rootNode
    - RuntimeError
    - subscribeToTreeChanges
    - auto::c_str
    - sqlite3_bind_text
    - WriteTreeToXML
    - load
    - execSQL
    - enableTransitionToIdle
    linkageType: ''
    returnType: void
    signature: "void SqliteLogger::SqliteLogger(const Tree& tree, std::filesystem::path
      const& filepath,\n                           bool append)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unsubscribeFromTreeChanges
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:144,1
    - Dst: notify_one
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:149,1
    - Dst: join
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:150,1
    - Dst: flush
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:151,1
    - Dst: execSQL
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:152,1
    - Dst: what
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:156,1
    - Dst: sqlite3_close
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:158,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 159
    functionName: SqliteLogger::~SqliteLogger()
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - join
    - flush
    - sqlite3_close
    - notify_one
    - unsubscribeFromTreeChanges
    - what
    - execSQL
    linkageType: ''
    returnType: void
    signature: void SqliteLogger::~SqliteLogger()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - func
    argTypes:
    - ExtraCallback
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 164
    functionName: BT::SqliteLogger::setAdditionalCallback
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SqliteLogger::setAdditionalCallback(ExtraCallback func)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: duration_cast<microseconds>
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:170,1
    - Dst: std::max
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:171,1
    - Dst: find
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:183,1
    - Dst: end
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:184,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:193,1
    - Dst: extra_func_
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:198,1
    - Dst: push_back
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:203,1
    - Dst: notify_one
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:205,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 21
    argCount: 4
    argNames:
    - timestamp
    - ' node'
    - prev_status
    - status
    argTypes:
    - Duration
    - TreeNode
    - NodeStatus
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 166
    functionDepth: 1
    functionLinenumber: 166
    functionLinenumberEnd: 206
    functionName: BT::SqliteLogger::callback
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - UID
    - find
    - notify_one
    - push_back
    - extra_func_
    - end
    - duration_cast<microseconds>
    - std::max
    linkageType: ''
    returnType: void
    signature: "void SqliteLogger::callback(Duration timestamp, const TreeNode& node,\n
      \                           NodeStatus prev_status, NodeStatus status)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: execSQL
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - statement
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 211
    functionName: BT::SqliteLogger::execSqlStatement
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - execSQL
    linkageType: ''
    returnType: void
    signature: void SqliteLogger::execSqlStatement(std::string statement)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: store
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:220,1
    - Dst: notify_one
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:222,1
    - Dst: std::deque::clear
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:226,1
    - Dst: wait
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:229,1
    - Dst: empty
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:229,1
    - Dst: swap
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:230,1
    - Dst: std::deque::empty
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:233,1
    - Dst: std::deque::front
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:235,1
    - Dst: std::deque::pop_front
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:236,1
    - Dst: prepareStatement
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:238,1
    - Dst: sqlite3_bind_int64
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:240,1
    - Dst: sqlite3_bind_int
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:241,1
    - Dst: sqlite3_bind_int
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:242,1
    - Dst: sqlite3_bind_int64
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:243,1
    - Dst: sqlite3_bind_int
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:244,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:244,1
    - Dst: sqlite3_bind_text
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:245,1
    - Dst: auto::extra_data::c_str
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:245,1
    - Dst: execStatement
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:246,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 213
    functionDepth: 1
    functionLinenumber: 213
    functionLinenumberEnd: 249
    functionName: BT::SqliteLogger::writerLoop
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - std::deque::front
    - auto::extra_data::c_str
    - sqlite3_bind_int64
    - std::deque::pop_front
    - wait
    - execStatement
    - notify_one
    - sqlite3_bind_text
    - std::deque::clear
    - store
    - std::deque::empty
    - swap
    - sqlite3_bind_int
    - empty
    - prepareStatement
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void SqliteLogger::writerLoop()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sqlite3_db_cacheflush
      Src: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp:253,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 251
    functionDepth: 0
    functionLinenumber: 251
    functionLinenumberEnd: 254
    functionName: BT::SqliteLogger::flush()
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
    functionUses: 0
    functionsReached:
    - sqlite3_db_cacheflush
    linkageType: ''
    returnType: void
    signature: void BT::SqliteLogger::flush()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<PImpl>
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:21,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 21
    functionDepth: 0
    functionLinenumber: 21
    functionLinenumberEnd: 22
    functionName: BT::StatusChangeLogger::StatusChangeLogger
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<PImpl>
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger::StatusChangeLogger()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::StatusChangeLogger::subscribeToTreeChanges
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - root_node
    argTypes:
    - TreeNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 24
    functionDepth: 1
    functionLinenumber: 24
    functionLinenumberEnd: 27
    functionName: BT::StatusChangeLogger::StatusChangeLogger
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached:
    - BT::StatusChangeLogger::subscribeToTreeChanges
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger::StatusChangeLogger(TreeNode* root_node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unsubscribeFromTreeChanges
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: StatusChangeLogger::~StatusChangeLogger()
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached:
    - unsubscribeFromTreeChanges
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger::~StatusChangeLogger()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - enabled
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: BT::StatusChangeLogger::setEnabled
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger::setEnabled(bool enabled)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - TimestampType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionName: BT::StatusChangeLogger::setTimestampType
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger::setTimestampType(TimestampType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: BT::StatusChangeLogger::enabled
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool StatusChangeLogger::enabled() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: BT::StatusChangeLogger::showsTransitionToIdle
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool StatusChangeLogger::showsTransitionToIdle() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - enable
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 62
    functionName: BT::StatusChangeLogger::enableTransitionToIdle
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger::enableTransitionToIdle(bool enable)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::chrono::high_resolution_clock::now
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:66,1
    - Dst: tryStart
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:71,1
    - Dst: BT::StatusChangeLogger::handleStatusChange
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:76,1
    - Dst: subscribers::push_back
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:80,1
    - Dst: subscribeToStatusChange
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:81,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:81,1
    - Dst: applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - root_node
    argTypes:
    - TreeNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 85
    functionName: BT::StatusChangeLogger::subscribeToTreeChanges
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 1
    functionsReached:
    - std::move
    - tryStart
    - std::chrono::high_resolution_clock::now
    - BT::StatusChangeLogger::handleStatusChange
    - subscribeToStatusChange
    - applyRecursiveVisitor
    - subscribers::push_back
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger::subscribeToTreeChanges(TreeNode* root_node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TimePoint::time_since_epoch
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:100,1
    - Dst: BT::StatusChangeLogger::callback
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:107,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 4
    argNames:
    - timestamp
    - ' node'
    - prev
    - status
    argTypes:
    - TimePoint
    - TreeNode
    - NodeStatus
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 109
    functionName: BT::StatusChangeLogger::handleStatusChange
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 1
    functionsReached:
    - BT::StatusChangeLogger::callback
    - TimePoint::time_since_epoch
    linkageType: ''
    returnType: void
    signature: "void StatusChangeLogger::handleStatusChange(TimePoint timestamp, const
      TreeNode& node,\n                                            NodeStatus prev,
      NodeStatus status)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: callback_gate::closeAndDrain
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:113,1
    - Dst: subscribers::clear
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 115
    functionName: BT::StatusChangeLogger::unsubscribeFromTreeChanges
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached:
    - subscribers::clear
    - callback_gate::closeAndDrain
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger::unsubscribeFromTreeChanges()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<PImpl>
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:21,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 21
    functionDepth: 0
    functionLinenumber: 21
    functionLinenumberEnd: 22
    functionName: BT::StatusChangeLogger::StatusChangeLogger
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached:
    - std::make_unique<PImpl>
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger::StatusChangeLogger()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::StatusChangeLogger::subscribeToTreeChanges
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - root_node
    argTypes:
    - TreeNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 24
    functionDepth: 2
    functionLinenumber: 24
    functionLinenumberEnd: 27
    functionName: BT::StatusChangeLogger::StatusChangeLogger
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached:
    - BT::StatusChangeLogger::subscribeToTreeChanges
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger::StatusChangeLogger(TreeNode* root_node)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unsubscribeFromTreeChanges
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: StatusChangeLogger::~StatusChangeLogger()
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached:
    - unsubscribeFromTreeChanges
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger::~StatusChangeLogger()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - enabled
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 38
    functionName: BT::StatusChangeLogger::setEnabled
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger::setEnabled(bool enabled)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - TimestampType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 44
    functionName: BT::StatusChangeLogger::setTimestampType
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger::setTimestampType(TimestampType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: BT::StatusChangeLogger::enabled
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool StatusChangeLogger::enabled() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 56
    functionName: BT::StatusChangeLogger::showsTransitionToIdle
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool StatusChangeLogger::showsTransitionToIdle() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - enable
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 62
    functionName: BT::StatusChangeLogger::enableTransitionToIdle
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger::enableTransitionToIdle(bool enable)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::chrono::high_resolution_clock::now
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:66,1
    - Dst: tryStart
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:71,1
    - Dst: BT::StatusChangeLogger::handleStatusChange
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:76,1
    - Dst: subscribers::push_back
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:80,1
    - Dst: subscribeToStatusChange
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:81,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:81,1
    - Dst: applyRecursiveVisitor
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:84,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - root_node
    argTypes:
    - TreeNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 85
    functionName: BT::StatusChangeLogger::subscribeToTreeChanges
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 2
    functionsReached:
    - std::move
    - tryStart
    - std::chrono::high_resolution_clock::now
    - BT::StatusChangeLogger::handleStatusChange
    - subscribeToStatusChange
    - applyRecursiveVisitor
    - subscribers::push_back
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger::subscribeToTreeChanges(TreeNode* root_node)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TimePoint::time_since_epoch
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:100,1
    - Dst: BT::StatusChangeLogger::callback
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:107,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 4
    argNames:
    - timestamp
    - ' node'
    - prev
    - status
    argTypes:
    - TimePoint
    - TreeNode
    - NodeStatus
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 109
    functionName: BT::StatusChangeLogger::handleStatusChange
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 2
    functionsReached:
    - BT::StatusChangeLogger::callback
    - TimePoint::time_since_epoch
    linkageType: ''
    returnType: void
    signature: "void StatusChangeLogger::handleStatusChange(TimePoint timestamp, const
      TreeNode& node,\n                                            NodeStatus prev,
      NodeStatus status)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: callback_gate::closeAndDrain
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:113,1
    - Dst: subscribers::clear
      Src: /src/behaviortreecpp/src/loggers/abstract_logger.cpp:114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 115
    functionName: BT::StatusChangeLogger::unsubscribeFromTreeChanges
    functionSourceFile: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    functionUses: 0
    functionsReached:
    - subscribers::clear
    - callback_gate::closeAndDrain
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger::unsubscribeFromTreeChanges()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rootNode
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:11,1
    - Dst: mtr_register_sigint_handler
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:13,1
    - Dst: mtr_init
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:14,1
    - Dst: BT::MinitraceLogger::enableTransitionToIdle
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:15,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' tree'
    - filename_json
    argTypes:
    - Tree
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16
      start: 10
    functionDepth: 1
    functionLinenumber: 10
    functionLinenumberEnd: 16
    functionName: BT::MinitraceLogger::MinitraceLogger
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp
    functionUses: 0
    functionsReached:
    - mtr_init
    - mtr_register_sigint_handler
    - BT::MinitraceLogger::enableTransitionToIdle
    - rootNode
    linkageType: ''
    returnType: void
    signature: void MinitraceLogger::MinitraceLogger(const Tree& tree, const char*
      filename_json)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unsubscribeFromTreeChanges
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:21,1
    - Dst: mtr_flush
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:23,1
    - Dst: mtr_shutdown
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:24,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 18
    functionDepth: 1
    functionLinenumber: 18
    functionLinenumberEnd: 25
    functionName: MinitraceLogger::~MinitraceLogger()
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp
    functionUses: 0
    functionsReached:
    - mtr_flush
    - unsubscribeFromTreeChanges
    - mtr_shutdown
    linkageType: ''
    returnType: void
    signature: void MinitraceLogger::~MinitraceLogger()
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - type
    argTypes:
    - NodeType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 46
    functionName: BT::toConstStr
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * toConstStr(NodeType type)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - type
    argTypes:
    - NodeType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 46
    functionName: BT::toConstStr
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * toConstStr(NodeType type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:52,1
    - Dst: toConstStr
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:54,1
    - Dst: type
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:54,1
    - Dst: name
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:55,1
    - Dst: MTR_INSTANT
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:59,1
    - Dst: MTR_BEGIN
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:63,1
    - Dst: MTR_END
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:67,1
    - Dst: mtr_flush
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:69,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 3
    argNames:
    - ' node'
    - prev_status
    - status
    argTypes:
    - TreeNode
    - NodeStatus
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 70
    functionName: BT::MinitraceLogger::callback
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp
    functionUses: 0
    functionsReached:
    - MTR_INSTANT
    - toConstStr
    - MTR_END
    - isStatusCompleted
    - name
    - mtr_flush
    - MTR_BEGIN
    - type
    linkageType: ''
    returnType: void
    signature: "void MinitraceLogger::callback(Duration /*timestamp*/, const TreeNode&
      node,\n                               NodeStatus prev_status, NodeStatus status)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mtr_flush
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: BT::MinitraceLogger::flush
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp
    functionUses: 0
    functionsReached:
    - mtr_flush
    linkageType: ''
    returnType: void
    signature: void MinitraceLogger::flush()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rootNode
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:11,1
    - Dst: mtr_register_sigint_handler
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:13,1
    - Dst: mtr_init
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:14,1
    - Dst: BT::MinitraceLogger::enableTransitionToIdle
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:15,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' tree'
    - filename_json
    argTypes:
    - Tree
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16
      start: 10
    functionDepth: 1
    functionLinenumber: 10
    functionLinenumberEnd: 16
    functionName: BT::MinitraceLogger::MinitraceLogger
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp
    functionUses: 0
    functionsReached:
    - mtr_init
    - mtr_register_sigint_handler
    - BT::MinitraceLogger::enableTransitionToIdle
    - rootNode
    linkageType: ''
    returnType: void
    signature: void MinitraceLogger::MinitraceLogger(const Tree& tree, const char*
      filename_json)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unsubscribeFromTreeChanges
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:21,1
    - Dst: mtr_flush
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:23,1
    - Dst: mtr_shutdown
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:24,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 18
    functionDepth: 1
    functionLinenumber: 18
    functionLinenumberEnd: 25
    functionName: MinitraceLogger::~MinitraceLogger()
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp
    functionUses: 0
    functionsReached:
    - mtr_flush
    - unsubscribeFromTreeChanges
    - mtr_shutdown
    linkageType: ''
    returnType: void
    signature: void MinitraceLogger::~MinitraceLogger()
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - type
    argTypes:
    - NodeType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 46
    functionName: BT::toConstStr
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * toConstStr(NodeType type)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - type
    argTypes:
    - NodeType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 46
    functionName: BT::toConstStr
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * toConstStr(NodeType type)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:52,1
    - Dst: toConstStr
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:54,1
    - Dst: type
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:54,1
    - Dst: name
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:55,1
    - Dst: MTR_INSTANT
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:59,1
    - Dst: MTR_BEGIN
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:63,1
    - Dst: MTR_END
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:67,1
    - Dst: mtr_flush
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:69,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 11
    argCount: 3
    argNames:
    - ' node'
    - prev_status
    - status
    argTypes:
    - TreeNode
    - NodeStatus
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 49
    functionDepth: 1
    functionLinenumber: 49
    functionLinenumberEnd: 70
    functionName: BT::MinitraceLogger::callback
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp
    functionUses: 0
    functionsReached:
    - MTR_INSTANT
    - toConstStr
    - MTR_END
    - isStatusCompleted
    - name
    - mtr_flush
    - MTR_BEGIN
    - type
    linkageType: ''
    returnType: void
    signature: "void MinitraceLogger::callback(Duration /*timestamp*/, const TreeNode&
      node,\n                               NodeStatus prev_status, NodeStatus status)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mtr_flush
      Src: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: BT::MinitraceLogger::flush
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp
    functionUses: 0
    functionsReached:
    - mtr_flush
    linkageType: ''
    returnType: void
    signature: void MinitraceLogger::flush()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: rootNode
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:8,1
    - Dst: dynamic_cast<const ControlNode*>
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:13,1
    - Dst: auto::children
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:15,1
    - Dst: recursiveStep
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:17,1
    - Dst: dynamic_cast<const DecoratorNode*>
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:20,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:22,1
    - Dst: recursiveStep
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:24,1
    - Dst: auto::child
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:24,1
    - Dst: count
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:28,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:28,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:30,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:32,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:32,1
    - Dst: recursiveStep
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:37,1
    - Dst: nodes::front
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:37,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 1
    argNames:
    - ' tree'
    argTypes:
    - BT::Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 8
    functionDepth: 1
    functionLinenumber: 8
    functionLinenumberEnd: 45
    functionName: BT::TreeObserver::TreeObserver
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_observer.cpp
    functionUses: 0
    functionsReached:
    - UID
    - auto::type
    - recursiveStep
    - auto::children
    - auto::child
    - dynamic_cast<const ControlNode*>
    - count
    - LogicError
    - rootNode
    - nodes::front
    - fullPath
    - dynamic_cast<const DecoratorNode*>
    linkageType: ''
    returnType: void
    signature: void TreeObserver::TreeObserver(const BT::Tree& tree)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unsubscribeFromTreeChanges
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: TreeObserver::~TreeObserver()
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_observer.cpp
    functionUses: 0
    functionsReached:
    - unsubscribeFromTreeChanges
    linkageType: ''
    returnType: void
    signature: void TreeObserver::~TreeObserver()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:56,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - timestamp
    - ' node'
    - status
    argTypes:
    - Duration
    - TreeNode
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 81
    functionName: BT::TreeObserver::callback
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_observer.cpp
    functionUses: 0
    functionsReached:
    - UID
    linkageType: ''
    returnType: void
    signature: "void TreeObserver::callback(Duration timestamp, const TreeNode& node,\n
      \                           NodeStatus /*prev_status*/, NodeStatus status)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:86,1
    - Dst: end
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:87,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:89,1
    - Dst: getStatistics
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:91,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 92
    functionName: '&

      TreeObserver::getStatistics(const std::string& path) const'
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_observer.cpp
    functionUses: 0
    functionsReached:
    - find
    - end
    - getStatistics
    - RuntimeError
    linkageType: ''
    returnType: TreeObserver::NodeStatistics
    signature: 'TreeObserver::NodeStatistics &

      TreeObserver::getStatistics(const std::string& path) const'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:96,1
    - Dst: end
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:97,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:99,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - uid
    argTypes:
    - uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 102
    functionName: '& TreeObserver::getStatistics(uint16_t uid) const'
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_observer.cpp
    functionUses: 0
    functionsReached:
    - find
    - end
    - RuntimeError
    linkageType: ''
    returnType: TreeObserver::NodeStatistics
    signature: TreeObserver::NodeStatistics & TreeObserver::getStatistics(uint16_t
      uid) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 108
    functionName: '&

      TreeObserver::statistics() const'
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_observer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::unordered_map<uint16_t, TreeObserver::NodeStatistics>
    signature: 'std::unordered_map<uint16_t, TreeObserver::NodeStatistics> &

      TreeObserver::statistics() const'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: '& TreeObserver::pathToUID() const'
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_observer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::unordered_map<std::string, uint16_t>
    signature: std::unordered_map<std::string, uint16_t> & TreeObserver::pathToUID()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: '& TreeObserver::uidToPath() const'
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_observer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::map<uint16_t, std::string>
    signature: std::map<uint16_t, std::string> & TreeObserver::uidToPath() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: rootNode
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:8,1
    - Dst: dynamic_cast<const ControlNode*>
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:13,1
    - Dst: auto::children
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:15,1
    - Dst: recursiveStep
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:17,1
    - Dst: dynamic_cast<const DecoratorNode*>
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:20,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:22,1
    - Dst: recursiveStep
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:24,1
    - Dst: auto::child
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:24,1
    - Dst: count
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:28,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:28,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:30,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:32,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:32,1
    - Dst: recursiveStep
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:37,1
    - Dst: nodes::front
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:37,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 1
    argNames:
    - ' tree'
    argTypes:
    - BT::Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 8
    functionDepth: 1
    functionLinenumber: 8
    functionLinenumberEnd: 45
    functionName: BT::TreeObserver::TreeObserver
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_observer.cpp
    functionUses: 0
    functionsReached:
    - UID
    - auto::type
    - recursiveStep
    - auto::children
    - auto::child
    - dynamic_cast<const ControlNode*>
    - count
    - LogicError
    - rootNode
    - nodes::front
    - fullPath
    - dynamic_cast<const DecoratorNode*>
    linkageType: ''
    returnType: void
    signature: void TreeObserver::TreeObserver(const BT::Tree& tree)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unsubscribeFromTreeChanges
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 51
    functionName: TreeObserver::~TreeObserver()
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_observer.cpp
    functionUses: 0
    functionsReached:
    - unsubscribeFromTreeChanges
    linkageType: ''
    returnType: void
    signature: void TreeObserver::~TreeObserver()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:56,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - timestamp
    - ' node'
    - status
    argTypes:
    - Duration
    - TreeNode
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 81
    functionName: BT::TreeObserver::callback
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_observer.cpp
    functionUses: 0
    functionsReached:
    - UID
    linkageType: ''
    returnType: void
    signature: "void TreeObserver::callback(Duration timestamp, const TreeNode& node,\n
      \                           NodeStatus /*prev_status*/, NodeStatus status)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:86,1
    - Dst: end
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:87,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:89,1
    - Dst: getStatistics
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:91,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' path'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 83
    functionDepth: 1
    functionLinenumber: 83
    functionLinenumberEnd: 92
    functionName: '&

      TreeObserver::getStatistics(const std::string& path) const'
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_observer.cpp
    functionUses: 0
    functionsReached:
    - find
    - end
    - getStatistics
    - RuntimeError
    linkageType: ''
    returnType: TreeObserver::NodeStatistics
    signature: 'TreeObserver::NodeStatistics &

      TreeObserver::getStatistics(const std::string& path) const'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:96,1
    - Dst: end
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:97,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_observer.cpp:99,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - uid
    argTypes:
    - uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 102
    functionName: '& TreeObserver::getStatistics(uint16_t uid) const'
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_observer.cpp
    functionUses: 0
    functionsReached:
    - find
    - end
    - RuntimeError
    linkageType: ''
    returnType: TreeObserver::NodeStatistics
    signature: TreeObserver::NodeStatistics & TreeObserver::getStatistics(uint16_t
      uid) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 108
    functionName: '&

      TreeObserver::statistics() const'
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_observer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::unordered_map<uint16_t, TreeObserver::NodeStatistics>
    signature: 'std::unordered_map<uint16_t, TreeObserver::NodeStatistics> &

      TreeObserver::statistics() const'
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 113
    functionName: '& TreeObserver::pathToUID() const'
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_observer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::unordered_map<std::string, uint16_t>
    signature: std::unordered_map<std::string, uint16_t> & TreeObserver::pathToUID()
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 118
    functionName: '& TreeObserver::uidToPath() const'
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_observer.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::map<uint16_t, std::string>
    signature: std::map<uint16_t, std::string> & TreeObserver::uidToPath() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:45,1
    - Dst: reinterpret_cast<uint32_t*>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:49,1
    - Dst: dist
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:49,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:52,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 60
    functionName: BT::CreateRandomUUID
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - reinterpret_cast<uint32_t*>
    - static_cast<char>
    - dist
    - std::array::data
    linkageType: ''
    returnType: std::array<char, 16>
    signature: std::array<char, 16> CreateRandomUUID()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:45,1
    - Dst: reinterpret_cast<uint32_t*>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:49,1
    - Dst: dist
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:49,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:52,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 60
    functionName: BT::CreateRandomUUID
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - reinterpret_cast<uint32_t*>
    - static_cast<char>
    - dist
    - std::array::data
    linkageType: ''
    returnType: std::array<char, 16>
    signature: std::array<char, 16> CreateRandomUUID()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:67,1
    - Dst: set
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:68,1
    - Dst: set
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:71,1
    - Dst: set
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:72,1
    - Dst: set
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:75,1
    - Dst: set
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 77
    functionName: BT::PImpl
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - set
    linkageType: ''
    returnType: void
    signature: void PImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<PImpl>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:124,1
    - Dst: WriteTreeToXML
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:127,1
    - Dst: nodes::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:134,1
    - Dst: status_buffer::resize
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:136,1
    - Dst: status_buffer::data
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:139,1
    - Dst: instance_name::empty
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:144,1
    - Dst: subtrees::insert
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:145,1
    - Dst: nodes_by_uid::insert
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:149,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:149,1
    - Dst: BT::Monitor::Serialize
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:151,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:151,1
    - Dst: status_buffermap::insert
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:152,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:152,1
    - Dst: BT::Monitor::Serialize
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:153,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:157,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:157,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:158,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:158,1
    - Dst: server::bind
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:160,1
    - Dst: server_address::c_str
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:160,1
    - Dst: publisher::bind
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:161,1
    - Dst: publisher_address::c_str
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:161,1
    - Dst: std::thread
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:163,1
    - Dst: std::thread
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:164,1
    - Dst: subscribeToTreeChanges
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:167,1
    - Dst: rootNode
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:167,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - ' tree'
    - server_port
    argTypes:
    - BT::Tree
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 168
    functionName: BT::Groot2Publisher::Groot2Publisher
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - UID
    - std::make_unique<PImpl>
    - status_buffer::data
    - subtrees::insert
    - std::thread
    - server::bind
    - publisher::bind
    - publisher_address::c_str
    - nodes::size
    - status_buffer::resize
    - nodes_by_uid::insert
    - BT::Monitor::Serialize
    - rootNode
    - to_string
    - instance_name::empty
    - subscribeToTreeChanges
    - WriteTreeToXML
    - status_buffermap::insert
    - StrCat
    - server_address::c_str
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher::Groot2Publisher(const BT::Tree& tree, unsigned
      server_port)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - delay
    argTypes:
    - std::chrono::milliseconds
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 174
    functionName: BT::Groot2Publisher::setMaxHeartbeatDelay
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher::setMaxHeartbeatDelay(std::chrono::milliseconds
      delay)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 180
    functionName: BT::Groot2Publisher::maxHeartbeatDelay
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::chrono::milliseconds
    signature: std::chrono::milliseconds Groot2Publisher::maxHeartbeatDelay() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unsubscribeFromTreeChanges
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:185,1
    - Dst: hook_gate::close
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:188,1
    - Dst: context::shutdown
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:196,1
    - Dst: server_thread::joinable
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:199,1
    - Dst: server_thread::join
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:201,1
    - Dst: heartbeat_thread::joinable
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:204,1
    - Dst: heartbeat_thread::join
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:206,1
    - Dst: removeAllHooks
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:211,1
    - Dst: hook_gate::closeAndDrain
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:212,1
    - Dst: flush
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:214,1
    - Dst: server::close
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:218,1
    - Dst: publisher::close
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:219,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 220
    functionName: Groot2Publisher::~Groot2Publisher()
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - flush
    - removeAllHooks
    - server::close
    - hook_gate::close
    - publisher::close
    - unsubscribeFromTreeChanges
    - context::shutdown
    - server_thread::joinable
    - heartbeat_thread::joinable
    - heartbeat_thread::join
    - server_thread::join
    - hook_gate::closeAndDrain
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher::~Groot2Publisher()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:226,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:230,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:230,1
    - Dst: status_buffermap::at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:232,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:232,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:237,1
    - Dst: static_cast<uint8_t>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:238,1
    - Dst: std::chrono::duration_cast<std::chrono::microseconds>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:241,1
    - Dst: transitions_buffer::push_back
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:242,1
    - Dst: transitions_buffer::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:243,1
    - Dst: transitions_buffer::pop_front
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:245,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - ts
    - ' node'
    - prev_status
    - new_status
    argTypes:
    - Duration
    - TreeNode
    - NodeStatus
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 248
    functionName: BT::Groot2Publisher::callback
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - UID
    - static_cast<char>
    - transitions_buffer::pop_front
    - status_buffermap::at
    - transitions_buffer::size
    - std::chrono::duration_cast<std::chrono::microseconds>
    - transitions_buffer::push_back
    - static_cast<uint8_t>
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: "void Groot2Publisher::callback(Duration ts, const TreeNode& node,
      NodeStatus prev_status,\n                               NodeStatus new_status)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 253
    functionName: BT::Groot2Publisher::flush
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher::flush()
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: CreateRandomUUID
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:257,1
    - Dst: zmq::multipart_t::multipart_t
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:264,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:265,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:266,1
    - Dst: zmq::multipart_t::send
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:267,1
    - Dst: zmq::multipart_t::multipart_t
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:277,1
    - Dst: zmq::multipart_t::recv
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:280,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:280,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:294,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:297,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:298,1
    - Dst: BT::Monitor::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:298,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:300,1
    - Dst: BT::Monitor::DeserializeRequestHeader
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:304,1
    - Dst: zmq::multipart_t::multipart_t
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:311,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:312,1
    - Dst: BT::Monitor::SerializeHeader
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:312,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:319,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:325,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:330,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:332,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:335,1
    - Dst: BT::Groot2Publisher::generateBlackboardsDump
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:336,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:339,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:339,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:342,1
    - Dst: zmq::multipart_t::addmem
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:343,1
    - Dst: data
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:343,1
    - Dst: size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:343,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:348,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:350,1
    - Dst: at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:355,1
    - Dst: static_cast<Position>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:356,1
    - Dst: at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:356,1
    - Dst: BT::Groot2Publisher::getHook
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:358,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:363,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:369,1
    - Dst: auto::wakeup::notify_all
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:370,1
    - Dst: std::make_shared<Monitor::Hook>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:375,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:376,1
    - Dst: BT::Groot2Publisher::insertHook
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:377,1
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:381,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:381,1
    - Dst: auto::is_array
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:384,1
    - Dst: InsertHook
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:388,1
    - Dst: InsertHook
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:393,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:399,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:401,1
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:405,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:405,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:406,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:407,1
    - Dst: static_cast<Position>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:408,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:408,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:409,1
    - Dst: BT::Groot2Publisher::unlockBreakpoint
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:421,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:423,1
    - Dst: BT::Groot2Publisher::removeAllHooks
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:430,1
    - Dst: enableAllHooks
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:435,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:440,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:442,1
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:446,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:446,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:447,1
    - Dst: static_cast<Position>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:448,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:448,1
    - Dst: BT::Groot2Publisher::removeHook
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:450,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:452,1
    - Dst: make_array
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:459,1
    - Dst: auto::push_back
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:467,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:470,1
    - Dst: auto::dump
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:470,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:475,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:477,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:481,1
    - Dst: std::chrono::duration_cast<std::chrono::microseconds>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:488,1
    - Dst: std::chrono::high_resolution_clock::now
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:489,1
    - Dst: transitions_buffer::clear
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:490,1
    - Dst: std::chrono::duration_cast<std::chrono::microseconds>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:494,1
    - Dst: std::chrono::system_clock::now
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:495,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:496,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:496,1
    - Dst: auto::count
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:496,1
    - Dst: swap
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:512,1
    - Dst: std::string::resize
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:515,1
    - Dst: std::deque::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:515,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:519,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:521,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:523,1
    - Dst: std::string::resize
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:526,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:527,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:532,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:539,1
    - Dst: what
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:539,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:547,1
    - Dst: zmq::multipart_t::send
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:556,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 171
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 564
    functionName: BT::Groot2Publisher::serverLoop
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - zmq::multipart_t::send
    - size
    - CreateRandomUUID
    - std::memcpy
    - BT::Groot2Publisher::insertHook
    - BT::Groot2Publisher::removeAllHooks
    - BT::Monitor::from_json
    - auto::count
    - BT::Groot2Publisher::unlockBreakpoint
    - std::unique_lock::unlock
    - make_array
    - BT::Monitor::SerializeHeader
    - zmq::multipart_t::size
    - std::chrono::high_resolution_clock::now
    - transitions_buffer::clear
    - std::chrono::system_clock::now
    - std::make_shared<Monitor::Hook>
    - std::deque::size
    - BT::Groot2Publisher::generateBlackboardsDump
    - static_cast<Position>
    - zmq::multipart_t::addmem
    - data
    - zmq::multipart_t::multipart_t
    - enableAllHooks
    - BT::Monitor::DeserializeRequestHeader
    - BT::Monitor::size
    - auto::at
    - zmq::multipart_t::addstr
    - auto::wakeup::notify_all
    - std::chrono::steady_clock::now
    - auto::push_back
    - BT::Groot2Publisher::getHook
    - to_string
    - zmq::multipart_t::recv
    - InsertHook
    - std::chrono::duration_cast<std::chrono::microseconds>
    - swap
    - BT::Groot2Publisher::removeHook
    - at
    - auto::dump
    - what
    - parser::parse
    - std::string::size
    - auto::value
    - auto::error
    - std::string::resize
    - sendErrorReply
    - auto::is_array
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher::serverLoop()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:581,1
    - Dst: wakeup::notify_all
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:582,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - enable
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 566
    functionDepth: 0
    functionLinenumber: 566
    functionLinenumberEnd: 586
    functionName: BT::Groot2Publisher::enableAllHooks(bool enable)
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - std::unique_lock::unlock
    - wakeup::notify_all
    linkageType: ''
    returnType: void
    signature: void BT::Groot2Publisher::enableAllHooks(bool enable)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:594,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:594,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:596,1
    - Dst: enableAllHooks
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:607,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 610
      start: 588
    functionDepth: 0
    functionLinenumber: 588
    functionLinenumberEnd: 610
    functionName: BT::Groot2Publisher::heartbeatLoop
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - std::this_thread::sleep_for
    - std::chrono::steady_clock::now
    - std::chrono::milliseconds
    - enableAllHooks
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher::heartbeatLoop()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:615,1
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:618,1
    - Dst: subtrees::find
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:622,1
    - Dst: subtrees::end
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:624,1
    - Dst: auto::second::lock
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:627,1
    - Dst: auto::blackboard::get
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:629,1
    - Dst: auto::blackboard::rootBlackboard
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:630,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:636,1
    - Dst: ExportBlackboardToJSON
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:641,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:651,1
    - Dst: auto::contains
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:654,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:656,1
    - Dst: ExportBlackboardToJSON
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:660,1
    - Dst: to_msgpack
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:666,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - ' bb_list'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 612
    functionDepth: 2
    functionLinenumber: 612
    functionLinenumberEnd: 667
    functionName: BT::Groot2Publisher::generateBlackboardsDump
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 1
    functionsReached:
    - auto::contains
    - to_msgpack
    - subtrees::end
    - auto::blackboard::get
    - auto::blackboard::rootBlackboard
    - nonstd::make_unexpected
    - BT::splitString
    - ExportBlackboardToJSON
    - subtrees::find
    - auto::second::lock
    - BT::Monitor::to_json
    linkageType: ''
    returnType: Expected<std::vector<uint8_t>>
    signature: Expected<std::vector<uint8_t>> Groot2Publisher::generateBlackboardsDump(const
      std::string& bb_list)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: nodes_by_uid::find
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:672,1
    - Dst: nodes_by_uid::end
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:673,1
    - Dst: auto::second::lock
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:677,1
    - Dst: tryStart
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:684,1
    - Dst: runHook
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:689,1
    - Dst: TreeNode::Ptr::setPreTickFunction
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:696,1
    - Dst: TreeNode::Ptr::setPostTickFunction
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:701,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:701,1
    - Dst: BT::Groot2Publisher::callback
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:702,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - hook
    argTypes:
    - std::shared_ptr<Monitor::Hook>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 669
    functionDepth: 2
    functionLinenumber: 669
    functionLinenumberEnd: 706
    functionName: BT::Groot2Publisher::insertHook
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 1
    functionsReached:
    - TreeNode::Ptr::setPostTickFunction
    - std::move
    - tryStart
    - runHook
    - nodes_by_uid::end
    - TreeNode::Ptr::setPreTickFunction
    - nodes_by_uid::find
    - BT::Groot2Publisher::callback
    - auto::second::lock
    linkageType: ''
    returnType: bool
    signature: bool Groot2Publisher::insertHook(std::shared_ptr<Monitor::Hook> hook)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::multipart_t
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:724,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:725,1
    - Dst: BT::Monitor::SerializeHeader
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:725,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:726,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:726,1
    - Dst: zmq::multipart_t::send
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:727,1
    - Dst: wakeup::wait
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:743,1
    - Dst: auto*::find
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:770,1
    - Dst: auto*::end
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:771,1
    - Dst: auto*::erase
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:773,1
    - Dst: setPreTickFunction
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:776,1
    - Dst: setPostTickFunction
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:780,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 2
    argNames:
    - ' hook'
    - ' node'
    argTypes:
    - Monitor::Hook::Ptr
    - TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 785
      start: 708
    functionDepth: 1
    functionLinenumber: 708
    functionLinenumberEnd: 785
    functionName: Groot2Publisher::PImpl::runHook(const Monitor::Hook::Ptr& hook,
      TreeNode& node)
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - zmq::multipart_t::addstr
    - BT::Monitor::SerializeHeader
    - zmq::multipart_t::send
    - auto*::find
    - auto*::erase
    - to_string
    - auto*::end
    - zmq::multipart_t::multipart_t
    - setPreTickFunction
    - wakeup::wait
    - setPostTickFunction
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus Groot2Publisher::PImpl::runHook(const Monitor::Hook::Ptr&
      hook, TreeNode& node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: nodes_by_uid::find
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:790,1
    - Dst: nodes_by_uid::end
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:791,1
    - Dst: auto::second::lock
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:795,1
    - Dst: BT::Groot2Publisher::getHook
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:801,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:814,1
    - Dst: auto::wakeup::notify_all
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:815,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 4
    argNames:
    - pos
    - node_uid
    - result
    - remove
    argTypes:
    - Position
    - uint16_t
    - NodeStatus
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 787
    functionDepth: 1
    functionLinenumber: 787
    functionLinenumberEnd: 819
    functionName: BT::Groot2Publisher::unlockBreakpoint
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 1
    functionsReached:
    - auto::wakeup::notify_all
    - nodes_by_uid::end
    - BT::Groot2Publisher::getHook
    - nodes_by_uid::find
    - auto::second::lock
    - std::unique_lock::unlock
    linkageType: ''
    returnType: bool
    signature: "bool Groot2Publisher::unlockBreakpoint(Position pos, uint16_t node_uid,
      NodeStatus result,\n                                       bool remove)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: nodes_by_uid::find
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:823,1
    - Dst: nodes_by_uid::end
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:824,1
    - Dst: auto::second::lock
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:828,1
    - Dst: auto*::find
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:839,1
    - Dst: auto*::end
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:840,1
    - Dst: auto*::erase
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:854,1
    - Dst: TreeNode::Ptr::setPreTickFunction
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:857,1
    - Dst: TreeNode::Ptr::setPostTickFunction
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:861,1
    - Dst: Monitor::Hook::Ptr::wakeup::notify_all
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:868,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - pos
    - node_uid
    argTypes:
    - Position
    - uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 871
      start: 821
    functionDepth: 1
    functionLinenumber: 821
    functionLinenumberEnd: 871
    functionName: BT::Groot2Publisher::removeHook
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 1
    functionsReached:
    - TreeNode::Ptr::setPostTickFunction
    - auto*::find
    - auto*::erase
    - nodes_by_uid::end
    - TreeNode::Ptr::setPreTickFunction
    - auto*::end
    - nodes_by_uid::find
    - auto::second::lock
    - Monitor::Hook::Ptr::wakeup::notify_all
    linkageType: ''
    returnType: bool
    signature: bool Groot2Publisher::removeHook(Position pos, uint16_t node_uid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::clear
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:879,1
    - Dst: auto*::empty
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:882,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:884,1
    - Dst: auto*::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:884,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:888,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:891,1
    - Dst: BT::Groot2Publisher::removeHook
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:894,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 898
      start: 873
    functionDepth: 2
    functionLinenumber: 873
    functionLinenumberEnd: 898
    functionName: BT::Groot2Publisher::removeAllHooks
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 1
    functionsReached:
    - auto*::empty
    - auto*::size
    - std::vector::reserve
    - std::vector::clear
    - BT::Groot2Publisher::removeHook
    - std::vector::push_back
    - std::unique_lock::unlock
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher::removeAllHooks()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: auto*::find
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:904,1
    - Dst: auto*::end
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:905,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - pos
    - node_uid
    argTypes:
    - Position
    - uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 910
      start: 900
    functionDepth: 1
    functionLinenumber: 900
    functionLinenumberEnd: 910
    functionName: BT::Groot2Publisher::getHook
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 2
    functionsReached:
    - auto*::find
    - auto*::end
    linkageType: ''
    returnType: Monitor::Hook::Ptr
    signature: Monitor::Hook::Ptr Groot2Publisher::getHook(Position pos, uint16_t
      node_uid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:45,1
    - Dst: reinterpret_cast<uint32_t*>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:49,1
    - Dst: dist
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:49,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:52,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 60
    functionName: BT::CreateRandomUUID
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - reinterpret_cast<uint32_t*>
    - static_cast<char>
    - dist
    - std::array::data
    linkageType: ''
    returnType: std::array<char, 16>
    signature: std::array<char, 16> CreateRandomUUID()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:45,1
    - Dst: reinterpret_cast<uint32_t*>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:49,1
    - Dst: dist
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:49,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:52,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:53,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 60
    functionName: BT::CreateRandomUUID
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - reinterpret_cast<uint32_t*>
    - static_cast<char>
    - dist
    - std::array::data
    linkageType: ''
    returnType: std::array<char, 16>
    signature: std::array<char, 16> CreateRandomUUID()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:67,1
    - Dst: set
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:68,1
    - Dst: set
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:71,1
    - Dst: set
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:72,1
    - Dst: set
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:75,1
    - Dst: set
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 65
    functionDepth: 1
    functionLinenumber: 65
    functionLinenumberEnd: 77
    functionName: BT::PImpl
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - set
    linkageType: ''
    returnType: void
    signature: void PImpl()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<PImpl>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:124,1
    - Dst: WriteTreeToXML
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:127,1
    - Dst: nodes::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:134,1
    - Dst: status_buffer::resize
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:136,1
    - Dst: status_buffer::data
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:139,1
    - Dst: instance_name::empty
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:144,1
    - Dst: subtrees::insert
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:145,1
    - Dst: nodes_by_uid::insert
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:149,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:149,1
    - Dst: BT::Monitor::Serialize
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:151,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:151,1
    - Dst: status_buffermap::insert
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:152,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:152,1
    - Dst: BT::Monitor::Serialize
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:153,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:157,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:157,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:158,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:158,1
    - Dst: server::bind
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:160,1
    - Dst: server_address::c_str
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:160,1
    - Dst: publisher::bind
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:161,1
    - Dst: publisher_address::c_str
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:161,1
    - Dst: std::thread
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:163,1
    - Dst: std::thread
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:164,1
    - Dst: subscribeToTreeChanges
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:167,1
    - Dst: rootNode
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:167,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 20
    argCount: 2
    argNames:
    - ' tree'
    - server_port
    argTypes:
    - BT::Tree
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 168
    functionName: BT::Groot2Publisher::Groot2Publisher
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - UID
    - std::make_unique<PImpl>
    - status_buffer::data
    - subtrees::insert
    - std::thread
    - server::bind
    - publisher::bind
    - publisher_address::c_str
    - nodes::size
    - status_buffer::resize
    - nodes_by_uid::insert
    - BT::Monitor::Serialize
    - rootNode
    - to_string
    - instance_name::empty
    - subscribeToTreeChanges
    - WriteTreeToXML
    - status_buffermap::insert
    - StrCat
    - server_address::c_str
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher::Groot2Publisher(const BT::Tree& tree, unsigned
      server_port)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - delay
    argTypes:
    - std::chrono::milliseconds
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 174
    functionName: BT::Groot2Publisher::setMaxHeartbeatDelay
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher::setMaxHeartbeatDelay(std::chrono::milliseconds
      delay)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 180
    functionName: BT::Groot2Publisher::maxHeartbeatDelay
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::chrono::milliseconds
    signature: std::chrono::milliseconds Groot2Publisher::maxHeartbeatDelay() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: unsubscribeFromTreeChanges
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:185,1
    - Dst: hook_gate::close
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:188,1
    - Dst: context::shutdown
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:196,1
    - Dst: server_thread::joinable
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:199,1
    - Dst: server_thread::join
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:201,1
    - Dst: heartbeat_thread::joinable
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:204,1
    - Dst: heartbeat_thread::join
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:206,1
    - Dst: removeAllHooks
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:211,1
    - Dst: hook_gate::closeAndDrain
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:212,1
    - Dst: flush
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:214,1
    - Dst: server::close
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:218,1
    - Dst: publisher::close
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:219,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 220
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 220
    functionName: Groot2Publisher::~Groot2Publisher()
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - flush
    - removeAllHooks
    - server::close
    - hook_gate::close
    - publisher::close
    - unsubscribeFromTreeChanges
    - context::shutdown
    - server_thread::joinable
    - heartbeat_thread::joinable
    - heartbeat_thread::join
    - server_thread::join
    - hook_gate::closeAndDrain
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher::~Groot2Publisher()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:226,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:230,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:230,1
    - Dst: status_buffermap::at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:232,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:232,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:237,1
    - Dst: static_cast<uint8_t>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:238,1
    - Dst: std::chrono::duration_cast<std::chrono::microseconds>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:241,1
    - Dst: transitions_buffer::push_back
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:242,1
    - Dst: transitions_buffer::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:243,1
    - Dst: transitions_buffer::pop_front
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:245,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 4
    argNames:
    - ts
    - ' node'
    - prev_status
    - new_status
    argTypes:
    - Duration
    - TreeNode
    - NodeStatus
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 248
    functionName: BT::Groot2Publisher::callback
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 1
    functionsReached:
    - UID
    - static_cast<char>
    - transitions_buffer::pop_front
    - status_buffermap::at
    - transitions_buffer::size
    - std::chrono::duration_cast<std::chrono::microseconds>
    - transitions_buffer::push_back
    - static_cast<uint8_t>
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: "void Groot2Publisher::callback(Duration ts, const TreeNode& node,
      NodeStatus prev_status,\n                               NodeStatus new_status)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 253
    functionName: BT::Groot2Publisher::flush
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher::flush()
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: CreateRandomUUID
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:257,1
    - Dst: zmq::multipart_t::multipart_t
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:264,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:265,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:266,1
    - Dst: zmq::multipart_t::send
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:267,1
    - Dst: zmq::multipart_t::multipart_t
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:277,1
    - Dst: zmq::multipart_t::recv
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:280,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:280,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:294,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:297,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:298,1
    - Dst: BT::Monitor::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:298,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:300,1
    - Dst: BT::Monitor::DeserializeRequestHeader
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:304,1
    - Dst: zmq::multipart_t::multipart_t
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:311,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:312,1
    - Dst: BT::Monitor::SerializeHeader
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:312,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:319,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:325,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:330,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:332,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:335,1
    - Dst: BT::Groot2Publisher::generateBlackboardsDump
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:336,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:339,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:339,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:342,1
    - Dst: zmq::multipart_t::addmem
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:343,1
    - Dst: data
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:343,1
    - Dst: size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:343,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:348,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:350,1
    - Dst: at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:355,1
    - Dst: static_cast<Position>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:356,1
    - Dst: at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:356,1
    - Dst: BT::Groot2Publisher::getHook
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:358,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:363,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:369,1
    - Dst: auto::wakeup::notify_all
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:370,1
    - Dst: std::make_shared<Monitor::Hook>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:375,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:376,1
    - Dst: BT::Groot2Publisher::insertHook
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:377,1
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:381,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:381,1
    - Dst: auto::is_array
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:384,1
    - Dst: InsertHook
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:388,1
    - Dst: InsertHook
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:393,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:399,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:401,1
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:405,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:405,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:406,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:407,1
    - Dst: static_cast<Position>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:408,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:408,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:409,1
    - Dst: BT::Groot2Publisher::unlockBreakpoint
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:421,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:423,1
    - Dst: BT::Groot2Publisher::removeAllHooks
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:430,1
    - Dst: enableAllHooks
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:435,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:440,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:442,1
    - Dst: parser::parse
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:446,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:446,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:447,1
    - Dst: static_cast<Position>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:448,1
    - Dst: auto::at
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:448,1
    - Dst: BT::Groot2Publisher::removeHook
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:450,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:452,1
    - Dst: make_array
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:459,1
    - Dst: auto::push_back
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:467,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:470,1
    - Dst: auto::dump
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:470,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:475,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:477,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:481,1
    - Dst: std::chrono::duration_cast<std::chrono::microseconds>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:488,1
    - Dst: std::chrono::high_resolution_clock::now
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:489,1
    - Dst: transitions_buffer::clear
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:490,1
    - Dst: std::chrono::duration_cast<std::chrono::microseconds>
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:494,1
    - Dst: std::chrono::system_clock::now
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:495,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:496,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:496,1
    - Dst: auto::count
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:496,1
    - Dst: swap
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:512,1
    - Dst: std::string::resize
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:515,1
    - Dst: std::deque::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:515,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:519,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:521,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:523,1
    - Dst: std::string::resize
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:526,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:527,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:532,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:539,1
    - Dst: what
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:539,1
    - Dst: sendErrorReply
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:547,1
    - Dst: zmq::multipart_t::send
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:556,1
    CyclomaticComplexity: 59
    EdgeCount: 59
    ICount: 171
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 255
    functionDepth: 3
    functionLinenumber: 255
    functionLinenumberEnd: 564
    functionName: BT::Groot2Publisher::serverLoop
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - zmq::multipart_t::send
    - size
    - CreateRandomUUID
    - std::memcpy
    - BT::Groot2Publisher::insertHook
    - BT::Groot2Publisher::removeAllHooks
    - BT::Monitor::from_json
    - auto::count
    - BT::Groot2Publisher::unlockBreakpoint
    - std::unique_lock::unlock
    - make_array
    - BT::Monitor::SerializeHeader
    - zmq::multipart_t::size
    - std::chrono::high_resolution_clock::now
    - transitions_buffer::clear
    - std::chrono::system_clock::now
    - std::make_shared<Monitor::Hook>
    - std::deque::size
    - BT::Groot2Publisher::generateBlackboardsDump
    - static_cast<Position>
    - zmq::multipart_t::addmem
    - data
    - zmq::multipart_t::multipart_t
    - enableAllHooks
    - BT::Monitor::DeserializeRequestHeader
    - BT::Monitor::size
    - auto::at
    - zmq::multipart_t::addstr
    - auto::wakeup::notify_all
    - std::chrono::steady_clock::now
    - auto::push_back
    - BT::Groot2Publisher::getHook
    - to_string
    - zmq::multipart_t::recv
    - InsertHook
    - std::chrono::duration_cast<std::chrono::microseconds>
    - swap
    - BT::Groot2Publisher::removeHook
    - at
    - auto::dump
    - what
    - parser::parse
    - std::string::size
    - auto::value
    - auto::error
    - std::string::resize
    - sendErrorReply
    - auto::is_array
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher::serverLoop()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:581,1
    - Dst: wakeup::notify_all
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:582,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - enable
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 566
    functionDepth: 0
    functionLinenumber: 566
    functionLinenumberEnd: 586
    functionName: BT::Groot2Publisher::enableAllHooks(bool enable)
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - std::unique_lock::unlock
    - wakeup::notify_all
    linkageType: ''
    returnType: void
    signature: void BT::Groot2Publisher::enableAllHooks(bool enable)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:594,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:594,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:596,1
    - Dst: enableAllHooks
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:607,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 610
      start: 588
    functionDepth: 0
    functionLinenumber: 588
    functionLinenumberEnd: 610
    functionName: BT::Groot2Publisher::heartbeatLoop
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - std::this_thread::sleep_for
    - std::chrono::steady_clock::now
    - std::chrono::milliseconds
    - enableAllHooks
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher::heartbeatLoop()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:615,1
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:618,1
    - Dst: subtrees::find
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:622,1
    - Dst: subtrees::end
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:624,1
    - Dst: auto::second::lock
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:627,1
    - Dst: auto::blackboard::get
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:629,1
    - Dst: auto::blackboard::rootBlackboard
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:630,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:636,1
    - Dst: ExportBlackboardToJSON
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:641,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:651,1
    - Dst: auto::contains
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:654,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:656,1
    - Dst: ExportBlackboardToJSON
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:660,1
    - Dst: to_msgpack
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:666,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 24
    argCount: 1
    argNames:
    - ' bb_list'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 667
      start: 612
    functionDepth: 2
    functionLinenumber: 612
    functionLinenumberEnd: 667
    functionName: BT::Groot2Publisher::generateBlackboardsDump
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 2
    functionsReached:
    - auto::contains
    - to_msgpack
    - subtrees::end
    - auto::blackboard::get
    - auto::blackboard::rootBlackboard
    - nonstd::make_unexpected
    - BT::splitString
    - ExportBlackboardToJSON
    - subtrees::find
    - auto::second::lock
    - BT::Monitor::to_json
    linkageType: ''
    returnType: Expected<std::vector<uint8_t>>
    signature: Expected<std::vector<uint8_t>> Groot2Publisher::generateBlackboardsDump(const
      std::string& bb_list)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: nodes_by_uid::find
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:672,1
    - Dst: nodes_by_uid::end
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:673,1
    - Dst: auto::second::lock
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:677,1
    - Dst: tryStart
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:684,1
    - Dst: runHook
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:689,1
    - Dst: TreeNode::Ptr::setPreTickFunction
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:696,1
    - Dst: TreeNode::Ptr::setPostTickFunction
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:701,1
    - Dst: std::move
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:701,1
    - Dst: BT::Groot2Publisher::callback
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:702,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 22
    argCount: 1
    argNames:
    - hook
    argTypes:
    - std::shared_ptr<Monitor::Hook>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 669
    functionDepth: 2
    functionLinenumber: 669
    functionLinenumberEnd: 706
    functionName: BT::Groot2Publisher::insertHook
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 2
    functionsReached:
    - TreeNode::Ptr::setPostTickFunction
    - std::move
    - tryStart
    - runHook
    - nodes_by_uid::end
    - TreeNode::Ptr::setPreTickFunction
    - nodes_by_uid::find
    - BT::Groot2Publisher::callback
    - auto::second::lock
    linkageType: ''
    returnType: bool
    signature: bool Groot2Publisher::insertHook(std::shared_ptr<Monitor::Hook> hook)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::multipart_t
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:724,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:725,1
    - Dst: BT::Monitor::SerializeHeader
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:725,1
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:726,1
    - Dst: to_string
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:726,1
    - Dst: zmq::multipart_t::send
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:727,1
    - Dst: wakeup::wait
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:743,1
    - Dst: auto*::find
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:770,1
    - Dst: auto*::end
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:771,1
    - Dst: auto*::erase
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:773,1
    - Dst: setPreTickFunction
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:776,1
    - Dst: setPostTickFunction
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:780,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 2
    argNames:
    - ' hook'
    - ' node'
    argTypes:
    - Monitor::Hook::Ptr
    - TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 785
      start: 708
    functionDepth: 1
    functionLinenumber: 708
    functionLinenumberEnd: 785
    functionName: Groot2Publisher::PImpl::runHook(const Monitor::Hook::Ptr& hook,
      TreeNode& node)
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 0
    functionsReached:
    - zmq::multipart_t::addstr
    - BT::Monitor::SerializeHeader
    - zmq::multipart_t::send
    - auto*::find
    - auto*::erase
    - to_string
    - auto*::end
    - zmq::multipart_t::multipart_t
    - setPreTickFunction
    - wakeup::wait
    - setPostTickFunction
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus Groot2Publisher::PImpl::runHook(const Monitor::Hook::Ptr&
      hook, TreeNode& node)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: nodes_by_uid::find
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:790,1
    - Dst: nodes_by_uid::end
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:791,1
    - Dst: auto::second::lock
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:795,1
    - Dst: BT::Groot2Publisher::getHook
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:801,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:814,1
    - Dst: auto::wakeup::notify_all
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:815,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 4
    argNames:
    - pos
    - node_uid
    - result
    - remove
    argTypes:
    - Position
    - uint16_t
    - NodeStatus
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 819
      start: 787
    functionDepth: 2
    functionLinenumber: 787
    functionLinenumberEnd: 819
    functionName: BT::Groot2Publisher::unlockBreakpoint
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 2
    functionsReached:
    - auto::wakeup::notify_all
    - nodes_by_uid::end
    - BT::Groot2Publisher::getHook
    - nodes_by_uid::find
    - auto::second::lock
    - std::unique_lock::unlock
    linkageType: ''
    returnType: bool
    signature: "bool Groot2Publisher::unlockBreakpoint(Position pos, uint16_t node_uid,
      NodeStatus result,\n                                       bool remove)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: nodes_by_uid::find
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:823,1
    - Dst: nodes_by_uid::end
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:824,1
    - Dst: auto::second::lock
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:828,1
    - Dst: auto*::find
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:839,1
    - Dst: auto*::end
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:840,1
    - Dst: auto*::erase
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:854,1
    - Dst: TreeNode::Ptr::setPreTickFunction
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:857,1
    - Dst: TreeNode::Ptr::setPostTickFunction
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:861,1
    - Dst: Monitor::Hook::Ptr::wakeup::notify_all
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:868,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 25
    argCount: 2
    argNames:
    - pos
    - node_uid
    argTypes:
    - Position
    - uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 871
      start: 821
    functionDepth: 1
    functionLinenumber: 821
    functionLinenumberEnd: 871
    functionName: BT::Groot2Publisher::removeHook
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 3
    functionsReached:
    - TreeNode::Ptr::setPostTickFunction
    - auto*::find
    - auto*::erase
    - nodes_by_uid::end
    - TreeNode::Ptr::setPreTickFunction
    - auto*::end
    - nodes_by_uid::find
    - auto::second::lock
    - Monitor::Hook::Ptr::wakeup::notify_all
    linkageType: ''
    returnType: bool
    signature: bool Groot2Publisher::removeHook(Position pos, uint16_t node_uid)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::clear
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:879,1
    - Dst: auto*::empty
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:882,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:884,1
    - Dst: auto*::size
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:884,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:888,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:891,1
    - Dst: BT::Groot2Publisher::removeHook
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:894,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 898
      start: 873
    functionDepth: 2
    functionLinenumber: 873
    functionLinenumberEnd: 898
    functionName: BT::Groot2Publisher::removeAllHooks
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 2
    functionsReached:
    - auto*::empty
    - auto*::size
    - std::vector::reserve
    - std::vector::clear
    - BT::Groot2Publisher::removeHook
    - std::vector::push_back
    - std::unique_lock::unlock
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher::removeAllHooks()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: auto*::find
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:904,1
    - Dst: auto*::end
      Src: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp:905,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - pos
    - node_uid
    argTypes:
    - Position
    - uint16_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 910
      start: 900
    functionDepth: 1
    functionLinenumber: 900
    functionLinenumberEnd: 910
    functionName: BT::Groot2Publisher::getHook
    functionSourceFile: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    functionUses: 4
    functionsReached:
    - auto*::find
    - auto*::end
    linkageType: ''
    returnType: Monitor::Hook::Ptr
    signature: Monitor::Hook::Ptr Groot2Publisher::getHook(Position pos, uint16_t
      node_uid)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::chrono::duration_cast<std::chrono::microseconds>
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:22,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ts
    argTypes:
    - Duration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 23
    functionName: BT::ToUsec
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
    functionUses: 0
    functionsReached:
    - std::chrono::duration_cast<std::chrono::microseconds>
    linkageType: ''
    returnType: int64_t
    signature: int64_t ToUsec(Duration ts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::chrono::duration_cast<std::chrono::microseconds>
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:22,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ts
    argTypes:
    - Duration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 23
    functionName: BT::ToUsec
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
    functionUses: 0
    functionsReached:
    - std::chrono::duration_cast<std::chrono::microseconds>
    linkageType: ''
    returnType: int64_t
    signature: int64_t ToUsec(Duration ts)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<Pimpl>
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:45,1
    - Dst: filename
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:47,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:49,1
    - Dst: enableTransitionToIdle
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:52,1
    - Dst: file_stream::open
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:55,1
    - Dst: file_stream::is_open
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:57,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:59,1
    - Dst: WriteTreeToXML
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:68,1
    - Dst: flatbuffers::WriteScalar
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:72,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:72,1
    - Dst: static_cast<int32_t>
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:72,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:72,1
    - Dst: file_stream::write
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:73,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:73,1
    - Dst: file_stream::write
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:76,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:76,1
    - Dst: static_cast<std::streamsize>
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:76,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:76,1
    - Dst: std::chrono::system_clock::now
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:78,1
    - Dst: ToUsec
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:81,1
    - Dst: flatbuffers::WriteScalar
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:82,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:82,1
    - Dst: file_stream::write
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:83,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:83,1
    - Dst: std::thread
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:85,1
    - Dst: queue_cv::wait
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:90,1
    - Dst: writer_ready::load
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:90,1
    - Dst: subscribeToTreeChanges
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:92,1
    - Dst: rootNode
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:92,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - ' tree'
    - ' filepath'
    argTypes:
    - BT::Tree
    - std::filesystem::path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 93
    functionName: BT::FileLogger2::FileLogger2
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
    functionUses: 0
    functionsReached:
    - file_stream::open
    - flatbuffers::WriteScalar
    - writer_ready::load
    - filename
    - static_cast<int32_t>
    - file_stream::write
    - std::thread
    - std::array::data
    - std::chrono::system_clock::now
    - ToUsec
    - static_cast<std::streamsize>
    - file_stream::is_open
    - rootNode
    - RuntimeError
    - subscribeToTreeChanges
    - queue_cv::wait
    - std::make_unique<Pimpl>
    - std::string::size
    - std::string::data
    - WriteTreeToXML
    - enableTransitionToIdle
    linkageType: ''
    returnType: void
    signature: void FileLogger2::FileLogger2(const BT::Tree& tree, std::filesystem::path
      const& filepath)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unsubscribeFromTreeChanges
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:98,1
    - Dst: queue_cv::notify_one
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:101,1
    - Dst: writer_thread::join
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:102,1
    - Dst: file_stream::close
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 104
    functionName: FileLogger2::~FileLogger2()
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
    functionUses: 0
    functionsReached:
    - queue_cv::notify_one
    - writer_thread::join
    - file_stream::close
    - unsubscribeFromTreeChanges
    linkageType: ''
    returnType: void
    signature: void FileLogger2::~FileLogger2()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ToUsec
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:110,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:111,1
    - Dst: static_cast<uint64_t>
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:112,1
    - Dst: transitions_queue::push_back
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:115,1
    - Dst: queue_cv::notify_one
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - timestamp
    - ' node'
    - status
    argTypes:
    - Duration
    - TreeNode
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 118
    functionName: BT::FileLogger2::callback
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
    functionUses: 0
    functionsReached:
    - UID
    - ToUsec
    - static_cast<uint64_t>
    - queue_cv::notify_one
    - transitions_queue::push_back
    linkageType: ''
    returnType: void
    signature: "void FileLogger2::callback(Duration timestamp, const TreeNode& node,\n
      \                          NodeStatus /*prev_status*/, NodeStatus status)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_stream::flush
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 124
    functionName: BT::FileLogger2::flush
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
    functionUses: 0
    functionsReached:
    - file_stream::flush
    linkageType: ''
    returnType: void
    signature: void FileLogger2::flush()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: writer_ready::store
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:134,1
    - Dst: queue_cv::notify_one
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:136,1
    - Dst: std::deque::clear
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:140,1
    - Dst: queue_cv::wait_for
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:143,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:143,1
    - Dst: transitions_queue::empty
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:144,1
    - Dst: swap
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:147,1
    - Dst: std::deque::empty
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:151,1
    - Dst: std::deque::front
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:153,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:155,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:155,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:156,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:156,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:157,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:157,1
    - Dst: file_stream::write
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:159,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:159,1
    - Dst: std::deque::pop_front
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:160,1
    - Dst: file_stream::flush
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:162,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 165
    functionName: BT::FileLogger2::writerLoop
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
    functionUses: 0
    functionsReached:
    - queue_cv::notify_one
    - writer_ready::store
    - std::deque::front
    - file_stream::write
    - transitions_queue::empty
    - std::array::data
    - std::deque::pop_front
    - std::deque::clear
    - std::memcpy
    - std::deque::empty
    - swap
    - std::chrono::milliseconds
    - queue_cv::wait_for
    - file_stream::flush
    linkageType: ''
    returnType: void
    signature: void FileLogger2::writerLoop()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::chrono::duration_cast<std::chrono::microseconds>
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:22,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ts
    argTypes:
    - Duration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 23
    functionName: BT::ToUsec
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
    functionUses: 0
    functionsReached:
    - std::chrono::duration_cast<std::chrono::microseconds>
    linkageType: ''
    returnType: int64_t
    signature: int64_t ToUsec(Duration ts)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::chrono::duration_cast<std::chrono::microseconds>
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:22,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ts
    argTypes:
    - Duration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 23
    functionName: BT::ToUsec
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
    functionUses: 0
    functionsReached:
    - std::chrono::duration_cast<std::chrono::microseconds>
    linkageType: ''
    returnType: int64_t
    signature: int64_t ToUsec(Duration ts)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::make_unique<Pimpl>
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:45,1
    - Dst: filename
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:47,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:49,1
    - Dst: enableTransitionToIdle
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:52,1
    - Dst: file_stream::open
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:55,1
    - Dst: file_stream::is_open
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:57,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:59,1
    - Dst: WriteTreeToXML
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:68,1
    - Dst: flatbuffers::WriteScalar
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:72,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:72,1
    - Dst: static_cast<int32_t>
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:72,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:72,1
    - Dst: file_stream::write
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:73,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:73,1
    - Dst: file_stream::write
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:76,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:76,1
    - Dst: static_cast<std::streamsize>
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:76,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:76,1
    - Dst: std::chrono::system_clock::now
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:78,1
    - Dst: ToUsec
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:81,1
    - Dst: flatbuffers::WriteScalar
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:82,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:82,1
    - Dst: file_stream::write
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:83,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:83,1
    - Dst: std::thread
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:85,1
    - Dst: queue_cv::wait
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:90,1
    - Dst: writer_ready::load
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:90,1
    - Dst: subscribeToTreeChanges
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:92,1
    - Dst: rootNode
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:92,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 23
    argCount: 2
    argNames:
    - ' tree'
    - ' filepath'
    argTypes:
    - BT::Tree
    - std::filesystem::path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 93
    functionName: BT::FileLogger2::FileLogger2
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
    functionUses: 0
    functionsReached:
    - file_stream::open
    - flatbuffers::WriteScalar
    - writer_ready::load
    - filename
    - static_cast<int32_t>
    - file_stream::write
    - std::thread
    - std::array::data
    - std::chrono::system_clock::now
    - ToUsec
    - static_cast<std::streamsize>
    - file_stream::is_open
    - rootNode
    - RuntimeError
    - subscribeToTreeChanges
    - queue_cv::wait
    - std::make_unique<Pimpl>
    - std::string::size
    - std::string::data
    - WriteTreeToXML
    - enableTransitionToIdle
    linkageType: ''
    returnType: void
    signature: void FileLogger2::FileLogger2(const BT::Tree& tree, std::filesystem::path
      const& filepath)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unsubscribeFromTreeChanges
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:98,1
    - Dst: queue_cv::notify_one
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:101,1
    - Dst: writer_thread::join
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:102,1
    - Dst: file_stream::close
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 104
    functionName: FileLogger2::~FileLogger2()
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
    functionUses: 0
    functionsReached:
    - queue_cv::notify_one
    - writer_thread::join
    - file_stream::close
    - unsubscribeFromTreeChanges
    linkageType: ''
    returnType: void
    signature: void FileLogger2::~FileLogger2()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ToUsec
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:110,1
    - Dst: UID
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:111,1
    - Dst: static_cast<uint64_t>
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:112,1
    - Dst: transitions_queue::push_back
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:115,1
    - Dst: queue_cv::notify_one
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:117,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - timestamp
    - ' node'
    - status
    argTypes:
    - Duration
    - TreeNode
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 106
    functionDepth: 1
    functionLinenumber: 106
    functionLinenumberEnd: 118
    functionName: BT::FileLogger2::callback
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
    functionUses: 0
    functionsReached:
    - UID
    - ToUsec
    - static_cast<uint64_t>
    - queue_cv::notify_one
    - transitions_queue::push_back
    linkageType: ''
    returnType: void
    signature: "void FileLogger2::callback(Duration timestamp, const TreeNode& node,\n
      \                          NodeStatus /*prev_status*/, NodeStatus status)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_stream::flush
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:123,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 124
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 124
    functionName: BT::FileLogger2::flush
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
    functionUses: 0
    functionsReached:
    - file_stream::flush
    linkageType: ''
    returnType: void
    signature: void FileLogger2::flush()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: writer_ready::store
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:134,1
    - Dst: queue_cv::notify_one
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:136,1
    - Dst: std::deque::clear
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:140,1
    - Dst: queue_cv::wait_for
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:143,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:143,1
    - Dst: transitions_queue::empty
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:144,1
    - Dst: swap
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:147,1
    - Dst: std::deque::empty
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:151,1
    - Dst: std::deque::front
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:153,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:155,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:155,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:156,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:156,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:157,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:157,1
    - Dst: file_stream::write
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:159,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:159,1
    - Dst: std::deque::pop_front
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:160,1
    - Dst: file_stream::flush
      Src: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp:162,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 126
    functionDepth: 1
    functionLinenumber: 126
    functionLinenumberEnd: 165
    functionName: BT::FileLogger2::writerLoop
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
    functionUses: 0
    functionsReached:
    - queue_cv::notify_one
    - writer_ready::store
    - std::deque::front
    - file_stream::write
    - transitions_queue::empty
    - std::array::data
    - std::deque::pop_front
    - std::deque::clear
    - std::memcpy
    - std::deque::empty
    - swap
    - std::chrono::milliseconds
    - queue_cv::wait_for
    - file_stream::flush
    linkageType: ''
    returnType: void
    signature: void FileLogger2::writerLoop()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rootNode
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:6,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tree'
    argTypes:
    - BT::Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7
      start: 6
    functionDepth: 0
    functionLinenumber: 6
    functionLinenumberEnd: 7
    functionName: BT::StdCoutLogger::StdCoutLogger
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp
    functionUses: 0
    functionsReached:
    - rootNode
    linkageType: ''
    returnType: void
    signature: void StdCoutLogger::StdCoutLogger(const BT::Tree& tree)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unsubscribeFromTreeChanges
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:11,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12
      start: 8
    functionDepth: 0
    functionLinenumber: 8
    functionLinenumberEnd: 12
    functionName: StdCoutLogger::~StdCoutLogger()
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp
    functionUses: 0
    functionsReached:
    - unsubscribeFromTreeChanges
    linkageType: ''
    returnType: void
    signature: void StdCoutLogger::~StdCoutLogger()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: duration<double>
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:22,1
    - Dst: printf
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:23,1
    - Dst: name
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:23,1
    - Dst: std::min
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:24,1
    - Dst: name
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:24,1
    - Dst: toStr
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:25,1
    - Dst: toStr
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - timestamp
    - ' node'
    - prev_status
    - status
    argTypes:
    - Duration
    - TreeNode
    - NodeStatus
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 27
    functionName: BT::StdCoutLogger::callback
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp
    functionUses: 0
    functionsReached:
    - std::min
    - toStr
    - name
    - duration<double>
    - printf
    linkageType: ''
    returnType: void
    signature: "void StdCoutLogger::callback(Duration timestamp, const TreeNode& node,\n
      \                            NodeStatus prev_status, NodeStatus status)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: BT::StdCoutLogger::flush
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StdCoutLogger::flush()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rootNode
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:6,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' tree'
    argTypes:
    - BT::Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7
      start: 6
    functionDepth: 0
    functionLinenumber: 6
    functionLinenumberEnd: 7
    functionName: BT::StdCoutLogger::StdCoutLogger
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp
    functionUses: 0
    functionsReached:
    - rootNode
    linkageType: ''
    returnType: void
    signature: void StdCoutLogger::StdCoutLogger(const BT::Tree& tree)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unsubscribeFromTreeChanges
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:11,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12
      start: 8
    functionDepth: 0
    functionLinenumber: 8
    functionLinenumberEnd: 12
    functionName: StdCoutLogger::~StdCoutLogger()
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp
    functionUses: 0
    functionsReached:
    - unsubscribeFromTreeChanges
    linkageType: ''
    returnType: void
    signature: void StdCoutLogger::~StdCoutLogger()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: duration<double>
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:22,1
    - Dst: printf
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:23,1
    - Dst: name
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:23,1
    - Dst: std::min
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:24,1
    - Dst: name
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:24,1
    - Dst: toStr
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:25,1
    - Dst: toStr
      Src: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp:25,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 4
    argNames:
    - timestamp
    - ' node'
    - prev_status
    - status
    argTypes:
    - Duration
    - TreeNode
    - NodeStatus
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 27
    functionName: BT::StdCoutLogger::callback
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp
    functionUses: 0
    functionsReached:
    - std::min
    - toStr
    - name
    - duration<double>
    - printf
    linkageType: ''
    returnType: void
    signature: "void StdCoutLogger::callback(Duration timestamp, const TreeNode& node,\n
      \                            NodeStatus prev_status, NodeStatus status)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: BT::StdCoutLogger::flush
    functionSourceFile: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StdCoutLogger::flush()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 20
    functionName: DummyNodes::GripperInterface::GripperInterface
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GripperInterface()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: DummyNodes::ApproachObject::ApproachObject
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ApproachObject(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: DummyNodes::SaySomething::SaySomething
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SaySomething(const std::string& name, const BT::NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: DummyNodes::SaySomething::providedPorts
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached:
    - BT::InputPort<std::string>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: DummyNodes::SleepNode::SleepNode
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SleepNode(const std::string& name, const BT::NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<int>
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: DummyNodes::SleepNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached:
    - BT::InputPort<int>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:83,1
    - Dst: system_clock::now
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:93,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 96
    functionName: DummyNodes::SleepNode::onStart
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached:
    - milliseconds
    - system_clock::now
    - getInput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus onStart() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::chrono::system_clock::now
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 109
    functionName: DummyNodes::SleepNode::onRunning
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached:
    - std::chrono::system_clock::now
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus onRunning() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 115
    functionName: DummyNodes::SleepNode::onHalted
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void onHalted() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerSimpleCondition
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:125,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:125,1
    - Dst: registerSimpleCondition
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:126,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:126,1
    - Dst: registerSimpleAction
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:127,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:127,1
    - Dst: registerSimpleAction
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:128,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:129,1
    - Dst: registerSimpleAction
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:130,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:131,1
    - Dst: registerNodeType
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:132,1
    - Dst: registerNodeType
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - ' factory'
    argTypes:
    - BT::BehaviorTreeFactory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 134
    functionName: DummyNodes::RegisterNodes
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached:
    - std::bind
    - registerSimpleAction
    - registerNodeType
    - registerSimpleCondition
    linkageType: ''
    returnType: void
    signature: void RegisterNodes(BT::BehaviorTreeFactory& factory)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 20
    functionName: DummyNodes::GripperInterface::GripperInterface
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GripperInterface()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 38
    functionName: DummyNodes::ApproachObject::ApproachObject
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ApproachObject(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: DummyNodes::SaySomething::SaySomething
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SaySomething(const std::string& name, const BT::NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 60
    functionName: DummyNodes::SaySomething::providedPorts
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached:
    - BT::InputPort<std::string>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 72
    functionName: DummyNodes::SleepNode::SleepNode
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SleepNode(const std::string& name, const BT::NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<int>
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 78
    functionName: DummyNodes::SleepNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached:
    - BT::InputPort<int>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:83,1
    - Dst: system_clock::now
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:93,1
    - Dst: milliseconds
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:93,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 96
    functionName: DummyNodes::SleepNode::onStart
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached:
    - milliseconds
    - system_clock::now
    - getInput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus onStart() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::chrono::system_clock::now
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 109
    functionName: DummyNodes::SleepNode::onRunning
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached:
    - std::chrono::system_clock::now
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus onRunning() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 115
    functionName: DummyNodes::SleepNode::onHalted
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void onHalted() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerSimpleCondition
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:125,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:125,1
    - Dst: registerSimpleCondition
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:126,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:126,1
    - Dst: registerSimpleAction
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:127,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:127,1
    - Dst: registerSimpleAction
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:128,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:129,1
    - Dst: registerSimpleAction
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:130,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:131,1
    - Dst: registerNodeType
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:132,1
    - Dst: registerNodeType
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.h:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - ' factory'
    argTypes:
    - BT::BehaviorTreeFactory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 134
    functionName: DummyNodes::RegisterNodes
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
    functionUses: 0
    functionsReached:
    - std::bind
    - registerSimpleAction
    - registerNodeType
    - registerSimpleCondition
    linkageType: ''
    returnType: void
    signature: void RegisterNodes(BT::BehaviorTreeFactory& factory)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DummyNodes::RegisterNodes
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:8,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9
      start: 6
    functionDepth: 1
    functionLinenumber: 6
    functionLinenumberEnd: 9
    functionName: BT_REGISTER_NODES
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached:
    - DummyNodes::RegisterNodes
    linkageType: ''
    returnType: void
    signature: void BT_REGISTER_NODES(factory)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 18
    functionName: DummyNodes::CheckBattery
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus CheckBattery()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 24
    functionName: DummyNodes::CheckTemperature
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus CheckTemperature()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: DummyNodes::SayHello
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus SayHello()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: DummyNodes::GripperInterface::open
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus GripperInterface::open()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: DummyNodes::GripperInterface::close
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus GripperInterface::close()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DummyNodes::ApproachObject::name
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: DummyNodes::ApproachObject::tick
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached:
    - DummyNodes::ApproachObject::name
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus ApproachObject::tick()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<std::string>
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:54,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:57,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:57,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 62
    functionName: DummyNodes::SaySomething::tick
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached:
    - auto::error
    - throwRuntimeError
    - getInput<std::string>
    - auto::value
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus SaySomething::tick()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:66,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:69,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:69,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:72,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' self'
    argTypes:
    - BT::TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 74
    functionName: DummyNodes::SaySomethingSimple
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached:
    - auto::value
    - throwRuntimeError
    - auto::error
    - getInput
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus SaySomethingSimple(BT::TreeNode& self)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 18
    functionName: DummyNodes::CheckBattery
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus CheckBattery()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 24
    functionName: DummyNodes::CheckTemperature
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus CheckTemperature()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: DummyNodes::SayHello
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus SayHello()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 37
    functionName: DummyNodes::GripperInterface::open
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus GripperInterface::open()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 44
    functionName: DummyNodes::GripperInterface::close
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus GripperInterface::close()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DummyNodes::ApproachObject::name
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 50
    functionName: DummyNodes::ApproachObject::tick
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached:
    - DummyNodes::ApproachObject::name
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus ApproachObject::tick()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<std::string>
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:54,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:57,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:57,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:60,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 52
    functionDepth: 2
    functionLinenumber: 52
    functionLinenumberEnd: 62
    functionName: DummyNodes::SaySomething::tick
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached:
    - auto::error
    - throwRuntimeError
    - getInput<std::string>
    - auto::value
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus SaySomething::tick()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:66,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:69,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:69,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp:72,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' self'
    argTypes:
    - BT::TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 64
    functionDepth: 2
    functionLinenumber: 64
    functionLinenumberEnd: 74
    functionName: DummyNodes::SaySomethingSimple
    functionSourceFile: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
    functionUses: 0
    functionsReached:
    - auto::value
    - throwRuntimeError
    - auto::error
    - getInput
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus SaySomethingSimple(BT::TreeNode& self)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerNodeType
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.cpp:10,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11
      start: 8
    functionDepth: 0
    functionLinenumber: 8
    functionLinenumberEnd: 11
    functionName: BT_REGISTER_NODES
    functionSourceFile: /src/behaviortreecpp/sample_nodes/movebase_node.cpp
    functionUses: 0
    functionsReached:
    - registerNodeType
    linkageType: ''
    returnType: void
    signature: void BT_REGISTER_NODES(factory)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<Pose2D>
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.cpp:15,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.cpp:17,1
    - Dst: printf
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.cpp:19,1
    - Dst: chr::system_clock::now
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.cpp:24,1
    - Dst: chr::milliseconds
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.cpp:24,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 13
    functionDepth: 2
    functionLinenumber: 13
    functionLinenumberEnd: 27
    functionName: MoveBaseAction::onStart
    functionSourceFile: /src/behaviortreecpp/sample_nodes/movebase_node.cpp
    functionUses: 0
    functionsReached:
    - chr::milliseconds
    - throwRuntimeError
    - printf
    - getInput<Pose2D>
    - chr::system_clock::now
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus MoveBaseAction::onStart()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.cpp:33,1
    - Dst: chr::milliseconds
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.cpp:33,1
    - Dst: chr::system_clock::now
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.cpp:37,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 43
    functionName: MoveBaseAction::onRunning
    functionSourceFile: /src/behaviortreecpp/sample_nodes/movebase_node.cpp
    functionUses: 0
    functionsReached:
    - std::this_thread::sleep_for
    - chr::milliseconds
    - chr::system_clock::now
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus MoveBaseAction::onRunning()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.cpp:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: MoveBaseAction::onHalted
    functionSourceFile: /src/behaviortreecpp/sample_nodes/movebase_node.cpp
    functionUses: 0
    functionsReached:
    - printf
    linkageType: ''
    returnType: void
    signature: void MoveBaseAction::onHalted()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:8,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:8,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ms
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9
      start: 6
    functionDepth: 0
    functionLinenumber: 6
    functionLinenumberEnd: 9
    functionName: SleepMS
    functionSourceFile: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp
    functionUses: 0
    functionsReached:
    - std::this_thread::sleep_for
    - std::chrono::milliseconds
    linkageType: ''
    returnType: void
    signature: void SleepMS(int ms)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:8,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:8,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ms
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9
      start: 6
    functionDepth: 0
    functionLinenumber: 6
    functionLinenumberEnd: 9
    functionName: SleepMS
    functionSourceFile: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp
    functionUses: 0
    functionsReached:
    - std::this_thread::sleep_for
    - std::chrono::milliseconds
    linkageType: ''
    returnType: void
    signature: void SleepMS(int ms)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SleepMS
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:17,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19
      start: 15
    functionDepth: 1
    functionLinenumber: 15
    functionLinenumberEnd: 19
    functionName: CrossDoor::isDoorClosed
    functionSourceFile: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp
    functionUses: 0
    functionsReached:
    - SleepMS
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus CrossDoor::isDoorClosed()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SleepMS
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:23,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 21
    functionDepth: 1
    functionLinenumber: 21
    functionLinenumberEnd: 25
    functionName: CrossDoor::passThroughDoor
    functionSourceFile: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp
    functionUses: 0
    functionsReached:
    - SleepMS
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus CrossDoor::passThroughDoor()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SleepMS
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:29,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 27
    functionDepth: 1
    functionLinenumber: 27
    functionLinenumberEnd: 39
    functionName: CrossDoor::openDoor
    functionSourceFile: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp
    functionUses: 0
    functionsReached:
    - SleepMS
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus CrossDoor::openDoor()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SleepMS
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 51
    functionName: CrossDoor::pickLock
    functionSourceFile: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp
    functionUses: 0
    functionsReached:
    - SleepMS
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus CrossDoor::pickLock()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 59
    functionName: CrossDoor::smashDoor
    functionSourceFile: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus CrossDoor::smashDoor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerSimpleCondition
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:63,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:64,1
    - Dst: registerSimpleAction
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:66,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:67,1
    - Dst: registerSimpleAction
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:69,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:69,1
    - Dst: registerSimpleAction
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:71,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:71,1
    - Dst: registerSimpleCondition
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:73,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' factory'
    argTypes:
    - BT::BehaviorTreeFactory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 74
    functionName: CrossDoor::registerNodes
    functionSourceFile: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp
    functionUses: 2
    functionsReached:
    - std::bind
    - registerSimpleAction
    - registerSimpleCondition
    linkageType: ''
    returnType: void
    signature: void CrossDoor::registerNodes(BT::BehaviorTreeFactory& factory)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 81
    functionName: CrossDoor::reset
    functionSourceFile: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CrossDoor::reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CrossDoor::registerNodes
      Src: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp:89,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 90
    functionName: BT_REGISTER_NODES
    functionSourceFile: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp
    functionUses: 0
    functionsReached:
    - CrossDoor::registerNodes
    linkageType: ''
    returnType: void
    signature: void BT_REGISTER_NODES(factory)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: add_field
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.h:21,1
    - Dst: add_field
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.h:22,1
    - Dst: add_field
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.h:23,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 24
    functionName: BT_JSON_CONVERTER
    functionSourceFile: /src/behaviortreecpp/sample_nodes/movebase_node.h
    functionUses: 0
    functionsReached:
    - add_field
    linkageType: ''
    returnType: void
    signature: void BT_JSON_CONVERTER(Pose2D, pose)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.h:38,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.h:39,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.h:41,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.h:46,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.h:47,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.h:48,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - key
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 51
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/sample_nodes/movebase_node.h
    functionUses: 24
    functionsReached:
    - throwRuntimeError
    - auto::size
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: Pose2D
    signature: Pose2D convertFromString(StringView key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.h:38,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.h:39,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.h:41,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.h:46,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.h:47,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.h:48,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - key
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 51
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/sample_nodes/movebase_node.h
    functionUses: 25
    functionsReached:
    - throwRuntimeError
    - auto::size
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: Pose2D
    signature: Pose2D convertFromString(StringView key)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 63
    functionName: MoveBaseAction::MoveBaseAction
    functionSourceFile: /src/behaviortreecpp/sample_nodes/movebase_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MoveBaseAction(const std::string& name, const BT::NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<Pose2D>
      Src: /src/behaviortreecpp/sample_nodes/movebase_node.h:68,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: MoveBaseAction::providedPorts
    functionSourceFile: /src/behaviortreecpp/sample_nodes/movebase_node.h
    functionUses: 0
    functionsReached:
    - BT::InputPort<Pose2D>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: BT::Parser::Parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_parser.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Parser()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: ~Parser()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_parser.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Parser()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Parser
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: BT::Parser::Parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_parser.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Parser(const Parser& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Parser
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: '& operator=(const Parser& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_parser.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Parser
    signature: Parser & operator=(const Parser& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Parser
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: BT::Parser::Parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_parser.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Parser(Parser&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Parser
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: '& operator=(Parser&& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_parser.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Parser
    signature: Parser & operator=(Parser&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: BT::Parser::Parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_parser.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Parser()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: ~Parser()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_parser.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Parser()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Parser
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: BT::Parser::Parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_parser.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Parser(const Parser& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Parser
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: '& operator=(const Parser& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_parser.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Parser
    signature: Parser & operator=(const Parser& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Parser
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: BT::Parser::Parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_parser.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Parser(Parser&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Parser
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: '& operator=(Parser&& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_parser.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Parser
    signature: Parser & operator=(Parser&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TreeNode::Instantiate<T, Args...>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 41
    functionName: BT::CreateBuilder
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 0
    functionsReached:
    - TreeNode::Instantiate<T, Args...>
    linkageType: ''
    returnType: NodeBuilder
    signature: NodeBuilder CreateBuilder(Args... args)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::getProvidedPorts
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:45,1
    - Dst: BT::getType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:49,1
    - Dst: ActionWithMetadata::metadata
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:49,1
    - Dst: BT::getType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' ID'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 52
    functionName: BT::CreateManifest
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 0
    functionsReached:
    - BT::getProvidedPorts
    - ActionWithMetadata::metadata
    - BT::getType
    linkageType: ''
    returnType: TreeNodeManifest
    signature: "TreeNodeManifest CreateManifest(const std::string& ID,\n                                       PortsList
      portlist = getProvidedPorts<T>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - factory
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: BT_REGISTER_NODES
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BT_REGISTER_NODES(factory)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 113
    functionName: BT::Tree::Tree
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Tree(const Tree&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: '& operator=(const Tree&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Tree
    signature: Tree & operator=(const Tree&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 116
    functionName: BT::Tree::Tree
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Tree(Tree&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 117
    functionName: '& operator=(Tree&& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Tree
    signature: Tree & operator=(Tree&& other)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const NodeType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:191,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:191,1
    - Dst: WildcardMatch
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:193,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:193,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:195,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:195,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - wildcard_filter
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 201
    functionName: BT::Tree::getNodesByPath
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 0
    functionsReached:
    - get
    - dynamic_cast<const NodeType*>
    - WildcardMatch
    - fullPath
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<const TreeNode*>
    signature: std::vector<const TreeNode*> getNodesByPath(StringView wildcard_filter)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - BehaviorTreeFactory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 240
    functionName: BT::BehaviorTreeFactory::BehaviorTreeFactory
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 66
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory(const BehaviorTreeFactory& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - BehaviorTreeFactory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 241
    functionName: '& operator=(const BehaviorTreeFactory& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BehaviorTreeFactory
    signature: BehaviorTreeFactory & operator=(const BehaviorTreeFactory& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CreateManifest<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:259,1
    - Dst: BT::BehaviorTreeFactory::registerBuilder
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' ID'
    - ' builder'
    argTypes:
    - std::string
    - NodeBuilder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 261
    functionName: BT::BehaviorTreeFactory::registerBuilder
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 8
    functionsReached:
    - BT::BehaviorTreeFactory::registerBuilder
    - CreateManifest<T>
    linkageType: ''
    returnType: void
    signature: void registerBuilder(const std::string& ID, const NodeBuilder& builder)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::registerBuilder
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:377,1
    - Dst: CreateManifest<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:377,1
    - Dst: CreateBuilder<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:377,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 2
    argNames:
    - ' ID'
    - ' ports'
    argTypes:
    - std::string
    - PortsList
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 350
    functionDepth: 0
    functionLinenumber: 350
    functionLinenumberEnd: 378
    functionName: BT::BehaviorTreeFactory::registerNodeType
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 15
    functionsReached:
    - BT::BehaviorTreeFactory::registerBuilder
    - CreateBuilder<T>
    - CreateManifest<T>
    linkageType: ''
    returnType: void
    signature: void registerNodeType(const std::string& ID, const PortsList& ports,
      ExtraArgs... args)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:426,1
    - Dst: getProvidedPorts<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:426,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 5
    argCount: 1
    argNames:
    - ' ID'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 386
    functionDepth: 1
    functionLinenumber: 386
    functionLinenumberEnd: 427
    functionName: BT::BehaviorTreeFactory::registerNodeType
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 16
    functionsReached:
    - BT::BehaviorTreeFactory::registerNodeType
    - getProvidedPorts<T>
    linkageType: ''
    returnType: void
    signature: void registerNodeType(const std::string& ID, ExtraArgs... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::enum_entries<EnumType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:501,1
    - Dst: BT::BehaviorTreeFactory::registerScriptingEnum
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:504,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:504,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 499
    functionDepth: 2
    functionLinenumber: 499
    functionLinenumberEnd: 506
    functionName: BT::BehaviorTreeFactory::registerScriptingEnums
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 2
    functionsReached:
    - magic_enum::enum_entries<EnumType>
    - BT::BehaviorTreeFactory::registerScriptingEnum
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void registerScriptingEnums()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: polymorphicCastRegistry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:558,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 556
    functionDepth: 0
    functionLinenumber: 556
    functionLinenumberEnd: 559
    functionName: BT::BehaviorTreeFactory::registerPolymorphicCast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 0
    functionsReached:
    - polymorphicCastRegistry
    linkageType: ''
    returnType: void
    signature: void registerPolymorphicCast()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TreeNode::Instantiate<T, Args...>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 41
    functionName: BT::CreateBuilder
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 0
    functionsReached:
    - TreeNode::Instantiate<T, Args...>
    linkageType: ''
    returnType: NodeBuilder
    signature: NodeBuilder CreateBuilder(Args... args)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::getProvidedPorts
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:45,1
    - Dst: BT::getType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:49,1
    - Dst: ActionWithMetadata::metadata
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:49,1
    - Dst: BT::getType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:51,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' ID'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 44
    functionDepth: 2
    functionLinenumber: 44
    functionLinenumberEnd: 52
    functionName: BT::CreateManifest
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 0
    functionsReached:
    - BT::getProvidedPorts
    - ActionWithMetadata::metadata
    - BT::getType
    linkageType: ''
    returnType: TreeNodeManifest
    signature: "TreeNodeManifest CreateManifest(const std::string& ID,\n                                       PortsList
      portlist = getProvidedPorts<T>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - factory
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 85
    functionName: BT_REGISTER_NODES
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BT_REGISTER_NODES(factory)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 113
    functionDepth: 0
    functionLinenumber: 113
    functionLinenumberEnd: 113
    functionName: BT::Tree::Tree
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Tree(const Tree&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 114
    functionName: '& operator=(const Tree&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Tree
    signature: Tree & operator=(const Tree&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 116
    functionName: BT::Tree::Tree
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Tree(Tree&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 117
    functionName: '& operator=(Tree&& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Tree
    signature: Tree & operator=(Tree&& other)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<const NodeType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:191,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:191,1
    - Dst: WildcardMatch
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:193,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:193,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:195,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:195,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 9
    argCount: 1
    argNames:
    - wildcard_filter
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 183
    functionDepth: 1
    functionLinenumber: 183
    functionLinenumberEnd: 201
    functionName: BT::Tree::getNodesByPath
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 0
    functionsReached:
    - get
    - dynamic_cast<const NodeType*>
    - WildcardMatch
    - fullPath
    - std::vector::push_back
    linkageType: ''
    returnType: std::vector<const TreeNode*>
    signature: std::vector<const TreeNode*> getNodesByPath(StringView wildcard_filter)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - BehaviorTreeFactory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 240
    functionDepth: 0
    functionLinenumber: 240
    functionLinenumberEnd: 240
    functionName: BT::BehaviorTreeFactory::BehaviorTreeFactory
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 66
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeFactory(const BehaviorTreeFactory& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - BehaviorTreeFactory
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 241
    functionDepth: 0
    functionLinenumber: 241
    functionLinenumberEnd: 241
    functionName: '& operator=(const BehaviorTreeFactory& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BehaviorTreeFactory
    signature: BehaviorTreeFactory & operator=(const BehaviorTreeFactory& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CreateManifest<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:259,1
    - Dst: BT::BehaviorTreeFactory::registerBuilder
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' ID'
    - ' builder'
    argTypes:
    - std::string
    - NodeBuilder
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 257
    functionDepth: 0
    functionLinenumber: 257
    functionLinenumberEnd: 261
    functionName: BT::BehaviorTreeFactory::registerBuilder
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 10
    functionsReached:
    - BT::BehaviorTreeFactory::registerBuilder
    - CreateManifest<T>
    linkageType: ''
    returnType: void
    signature: void registerBuilder(const std::string& ID, const NodeBuilder& builder)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::registerBuilder
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:377,1
    - Dst: CreateManifest<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:377,1
    - Dst: CreateBuilder<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:377,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 2
    argNames:
    - ' ID'
    - ' ports'
    argTypes:
    - std::string
    - PortsList
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 378
      start: 350
    functionDepth: 0
    functionLinenumber: 350
    functionLinenumberEnd: 378
    functionName: BT::BehaviorTreeFactory::registerNodeType
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 16
    functionsReached:
    - BT::BehaviorTreeFactory::registerBuilder
    - CreateBuilder<T>
    - CreateManifest<T>
    linkageType: ''
    returnType: void
    signature: void registerNodeType(const std::string& ID, const PortsList& ports,
      ExtraArgs... args)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:426,1
    - Dst: getProvidedPorts<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:426,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 5
    argCount: 1
    argNames:
    - ' ID'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 427
      start: 386
    functionDepth: 1
    functionLinenumber: 386
    functionLinenumberEnd: 427
    functionName: BT::BehaviorTreeFactory::registerNodeType
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 17
    functionsReached:
    - BT::BehaviorTreeFactory::registerNodeType
    - getProvidedPorts<T>
    linkageType: ''
    returnType: void
    signature: void registerNodeType(const std::string& ID, ExtraArgs... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::enum_entries<EnumType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:501,1
    - Dst: BT::BehaviorTreeFactory::registerScriptingEnum
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:504,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:504,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 499
    functionDepth: 2
    functionLinenumber: 499
    functionLinenumberEnd: 506
    functionName: BT::BehaviorTreeFactory::registerScriptingEnums
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 2
    functionsReached:
    - magic_enum::enum_entries<EnumType>
    - BT::BehaviorTreeFactory::registerScriptingEnum
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void registerScriptingEnums()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: polymorphicCastRegistry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h:558,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 559
      start: 556
    functionDepth: 0
    functionLinenumber: 556
    functionLinenumberEnd: 559
    functionName: BT::BehaviorTreeFactory::registerPolymorphicCast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    functionUses: 0
    functionsReached:
    - polymorphicCastRegistry
    linkageType: ''
    returnType: void
    signature: void registerPolymorphicCast()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: ~ConditionNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ConditionNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: BT::ConditionNode::ConditionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ConditionNode(const ConditionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: '& operator=(const ConditionNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ConditionNode
    signature: ConditionNode & operator=(const ConditionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: BT::ConditionNode::ConditionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ConditionNode(ConditionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: '& operator=(ConditionNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ConditionNode
    signature: ConditionNode & operator=(ConditionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resetStatus
      Src: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: BT::ConditionNode::halt
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached:
    - resetStatus
    linkageType: ''
    returnType: void
    signature: void halt() override final
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: BT::ConditionNode::type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeType
    signature: NodeType type() const override final
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: ~SimpleConditionNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SimpleConditionNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: BT::SimpleConditionNode::SimpleConditionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleConditionNode(const SimpleConditionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: '& operator=(const SimpleConditionNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleConditionNode
    signature: SimpleConditionNode & operator=(const SimpleConditionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: BT::SimpleConditionNode::SimpleConditionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleConditionNode(SimpleConditionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: '& operator=(SimpleConditionNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleConditionNode
    signature: SimpleConditionNode & operator=(SimpleConditionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: ~ConditionNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ConditionNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: BT::ConditionNode::ConditionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ConditionNode(const ConditionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: '& operator=(const ConditionNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ConditionNode
    signature: ConditionNode & operator=(const ConditionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: BT::ConditionNode::ConditionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ConditionNode(ConditionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: '& operator=(ConditionNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ConditionNode
    signature: ConditionNode & operator=(ConditionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resetStatus
      Src: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: BT::ConditionNode::halt
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached:
    - resetStatus
    linkageType: ''
    returnType: void
    signature: void halt() override final
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: BT::ConditionNode::type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeType
    signature: NodeType type() const override final
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 74
    functionName: ~SimpleConditionNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SimpleConditionNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: BT::SimpleConditionNode::SimpleConditionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleConditionNode(const SimpleConditionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 77
    functionName: '& operator=(const SimpleConditionNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleConditionNode
    signature: SimpleConditionNode & operator=(const SimpleConditionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: BT::SimpleConditionNode::SimpleConditionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleConditionNode(SimpleConditionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: '& operator=(SimpleConditionNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleConditionNode
    signature: SimpleConditionNode & operator=(SimpleConditionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 26
    functionName: ~DecoratorNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~DecoratorNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 28
    functionName: BT::DecoratorNode::DecoratorNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DecoratorNode(const DecoratorNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 29
    functionName: '& operator=(const DecoratorNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DecoratorNode
    signature: DecoratorNode & operator=(const DecoratorNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: BT::DecoratorNode::DecoratorNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DecoratorNode(DecoratorNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: '& operator=(DecoratorNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DecoratorNode
    signature: DecoratorNode & operator=(DecoratorNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: BT::DecoratorNode::type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeType
    signature: NodeType type() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: ~SimpleDecoratorNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SimpleDecoratorNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: BT::SimpleDecoratorNode::SimpleDecoratorNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleDecoratorNode(const SimpleDecoratorNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: '& operator=(const SimpleDecoratorNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleDecoratorNode
    signature: SimpleDecoratorNode & operator=(const SimpleDecoratorNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: BT::SimpleDecoratorNode::SimpleDecoratorNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleDecoratorNode(SimpleDecoratorNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: '& operator=(SimpleDecoratorNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleDecoratorNode
    signature: SimpleDecoratorNode & operator=(SimpleDecoratorNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 26
    functionName: ~DecoratorNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~DecoratorNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 28
    functionName: BT::DecoratorNode::DecoratorNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DecoratorNode(const DecoratorNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 29
    functionName: '& operator=(const DecoratorNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DecoratorNode
    signature: DecoratorNode & operator=(const DecoratorNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: BT::DecoratorNode::DecoratorNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DecoratorNode(DecoratorNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: '& operator=(DecoratorNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DecoratorNode
    signature: DecoratorNode & operator=(DecoratorNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: BT::DecoratorNode::type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeType
    signature: NodeType type() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: ~SimpleDecoratorNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SimpleDecoratorNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 78
    functionName: BT::SimpleDecoratorNode::SimpleDecoratorNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleDecoratorNode(const SimpleDecoratorNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: '& operator=(const SimpleDecoratorNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleDecoratorNode
    signature: SimpleDecoratorNode & operator=(const SimpleDecoratorNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 80
    functionName: BT::SimpleDecoratorNode::SimpleDecoratorNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleDecoratorNode(SimpleDecoratorNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: '& operator=(SimpleDecoratorNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleDecoratorNode
    signature: SimpleDecoratorNode & operator=(SimpleDecoratorNode&&)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 95
    functionName: BT::getType
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/behavior_tree.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: NodeType
    signature: NodeType getType()
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 95
    functionName: BT::getType
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/behavior_tree.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: NodeType
    signature: NodeType getType()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: ~JsonExporter()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~JsonExporter()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: BT::JsonExporter::JsonExporter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JsonExporter(const JsonExporter&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: '& operator=(const JsonExporter&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JsonExporter
    signature: JsonExporter & operator=(const JsonExporter&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: BT::JsonExporter::JsonExporter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JsonExporter(JsonExporter&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: '& operator=(JsonExporter&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JsonExporter
    signature: JsonExporter & operator=(JsonExporter&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: BT::JsonExporter::JsonExporter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JsonExporter()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::JsonExporter::fromJson
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:134,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:137,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:137,1
    - Dst: auto::first::tryCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:139,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:142,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:142,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' source'
    argTypes:
    - nlohmann::json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 145
    functionName: BT::JsonExporter::fromJson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 1
    functionsReached:
    - auto::first::tryCast
    - auto::error
    - nonstd::make_unexpected
    - BT::JsonExporter::fromJson
    linkageType: ''
    returnType: Expected<T>
    signature: Expected<T> JsonExporter::fromJson(const nlohmann::json& source) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nlohmann::json::contains
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:155,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:157,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:157,1
    - Dst: BT::TypeInfo::Create<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:157,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:159,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:159,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:159,1
    - Dst: BT::TypeInfo::Create<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:159,1
    - Dst: const_cast<BT::Any&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:162,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:164,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:164,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:167,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:168,1
    - Dst: BT::TypeInfo::Create<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:168,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:171,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:171,1
    - Dst: const_cast<BT::Any&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:175,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:177,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:177,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:183,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:183,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:185,1
    - Dst: BT::TypeInfo::Create<std::vector<T>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:185,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:187,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:187,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 150
    functionDepth: 3
    functionLinenumber: 150
    functionLinenumberEnd: 188
    functionName: BT::JsonExporter::addConverter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached:
    - get
    - BT::demangle
    - typeid
    - const_cast<BT::Any&>
    - string
    - nlohmann::json::contains
    - std::vector::push_back
    - BT::TypeInfo::Create<T>
    - BT::TypeInfo::Create<std::vector<T>>
    - insert
    - BT::Blackboard::getAny
    linkageType: ''
    returnType: void
    signature: void JsonExporter::addConverter()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: func
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:195,1
    - Dst: cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:195,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:198,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:198,1
    - Dst: const_cast<BT::Any&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:204,1
    - Dst: converter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:208,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:208,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:209,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:212,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:212,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:212,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:213,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:213,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:213,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - func
    - add_type
    argTypes:
    - std::function<void(const T&, nlohmann::json&)>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 191
    functionDepth: 3
    functionLinenumber: 191
    functionLinenumberEnd: 214
    functionName: BT::JsonExporter::addConverter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached:
    - cast
    - typeid
    - const_cast<BT::Any&>
    - BT::demangle
    - std::move
    - func
    - push_back
    - insert
    - BT::Blackboard::getAny
    - converter
    linkageType: ''
    returnType: void
    signature: "void JsonExporter::addConverter(\n    std::function<void(const T&,
      nlohmann::json&)> func, bool add_type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: func
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:222,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:223,1
    - Dst: BT::TypeInfo::Create<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:223,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:225,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:225,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:225,1
    - Dst: BT::TypeInfo::Create<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:225,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:226,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:226,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:226,1
    - Dst: func
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:234,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:235,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:237,1
    - Dst: BT::TypeInfo::Create<std::vector<T>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:237,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:239,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:239,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - func
    argTypes:
    - std::function<void(const nlohmann::json&, T&)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 217
    functionDepth: 3
    functionLinenumber: 217
    functionLinenumberEnd: 240
    functionName: BT::JsonExporter::addConverter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached:
    - BT::demangle
    - typeid
    - std::move
    - std::vector::push_back
    - func
    - BT::TypeInfo::Create<T>
    - BT::TypeInfo::Create<std::vector<T>>
    - insert
    - BT::Blackboard::getAny
    linkageType: ''
    returnType: void
    signature: void JsonExporter::addConverter(std::function<void(const nlohmann::json&,
      T&)> func)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 246
    functionName: BT::RegisterJsonDefinition
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached:
    - BT::Blackboard::get
    linkageType: ''
    returnType: void
    signature: void RegisterJsonDefinition()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 53
    functionName: ~JsonExporter()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~JsonExporter()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: BT::JsonExporter::JsonExporter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JsonExporter(const JsonExporter&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: '& operator=(const JsonExporter&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JsonExporter
    signature: JsonExporter & operator=(const JsonExporter&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: BT::JsonExporter::JsonExporter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JsonExporter(JsonExporter&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: '& operator=(JsonExporter&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JsonExporter
    signature: JsonExporter & operator=(JsonExporter&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: BT::JsonExporter::JsonExporter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JsonExporter()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::JsonExporter::fromJson
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:134,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:137,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:137,1
    - Dst: auto::first::tryCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:139,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:142,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:142,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' source'
    argTypes:
    - nlohmann::json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 145
    functionName: BT::JsonExporter::fromJson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 2
    functionsReached:
    - auto::first::tryCast
    - auto::error
    - nonstd::make_unexpected
    - BT::JsonExporter::fromJson
    linkageType: ''
    returnType: Expected<T>
    signature: Expected<T> JsonExporter::fromJson(const nlohmann::json& source) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nlohmann::json::contains
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:155,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:157,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:157,1
    - Dst: BT::TypeInfo::Create<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:157,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:159,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:159,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:159,1
    - Dst: BT::TypeInfo::Create<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:159,1
    - Dst: const_cast<BT::Any&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:162,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:164,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:164,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:167,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:168,1
    - Dst: BT::TypeInfo::Create<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:168,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:171,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:171,1
    - Dst: const_cast<BT::Any&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:175,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:177,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:177,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:183,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:183,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:185,1
    - Dst: BT::TypeInfo::Create<std::vector<T>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:185,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:187,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:187,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 150
    functionDepth: 3
    functionLinenumber: 150
    functionLinenumberEnd: 188
    functionName: BT::JsonExporter::addConverter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached:
    - get
    - BT::demangle
    - typeid
    - const_cast<BT::Any&>
    - string
    - nlohmann::json::contains
    - std::vector::push_back
    - BT::TypeInfo::Create<T>
    - BT::TypeInfo::Create<std::vector<T>>
    - insert
    - BT::Blackboard::getAny
    linkageType: ''
    returnType: void
    signature: void JsonExporter::addConverter()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: func
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:195,1
    - Dst: cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:195,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:198,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:198,1
    - Dst: const_cast<BT::Any&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:204,1
    - Dst: converter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:208,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:208,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:209,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:212,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:212,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:212,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:213,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:213,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:213,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 2
    argNames:
    - func
    - add_type
    argTypes:
    - std::function<void(const T&, nlohmann::json&)>
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 191
    functionDepth: 3
    functionLinenumber: 191
    functionLinenumberEnd: 214
    functionName: BT::JsonExporter::addConverter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached:
    - cast
    - typeid
    - const_cast<BT::Any&>
    - BT::demangle
    - std::move
    - func
    - push_back
    - insert
    - BT::Blackboard::getAny
    - converter
    linkageType: ''
    returnType: void
    signature: "void JsonExporter::addConverter(\n    std::function<void(const T&,
      nlohmann::json&)> func, bool add_type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: func
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:222,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:223,1
    - Dst: BT::TypeInfo::Create<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:223,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:225,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:225,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:225,1
    - Dst: BT::TypeInfo::Create<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:225,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:226,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:226,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:226,1
    - Dst: func
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:234,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:235,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:237,1
    - Dst: BT::TypeInfo::Create<std::vector<T>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:237,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:239,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:239,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 1
    argNames:
    - func
    argTypes:
    - std::function<void(const nlohmann::json&, T&)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 217
    functionDepth: 3
    functionLinenumber: 217
    functionLinenumberEnd: 240
    functionName: BT::JsonExporter::addConverter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached:
    - BT::demangle
    - typeid
    - std::move
    - std::vector::push_back
    - func
    - BT::TypeInfo::Create<T>
    - BT::TypeInfo::Create<std::vector<T>>
    - insert
    - BT::Blackboard::getAny
    linkageType: ''
    returnType: void
    signature: void JsonExporter::addConverter(std::function<void(const nlohmann::json&,
      T&)> func)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 246
      start: 243
    functionDepth: 0
    functionLinenumber: 243
    functionLinenumberEnd: 246
    functionName: BT::RegisterJsonDefinition
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached:
    - BT::Blackboard::get
    linkageType: ''
    returnType: void
    signature: void RegisterJsonDefinition()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - Type
    - ','
    - value
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 275
      start: 256
    functionDepth: 0
    functionLinenumber: 256
    functionLinenumberEnd: 275
    functionName: BT_JSON_CONVERTER
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: BT_JSON_CONVERTER(Type, value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: ~ControlNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ControlNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: BT::ControlNode::ControlNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ControlNode(const ControlNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& operator=(const ControlNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ControlNode
    signature: ControlNode & operator=(const ControlNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: BT::ControlNode::ControlNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ControlNode(ControlNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: '& operator=(ControlNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ControlNode
    signature: ControlNode & operator=(ControlNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: children
      Src: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: BT::ControlNode::child
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h
    functionUses: 0
    functionsReached:
    - children
    linkageType: ''
    returnType: TreeNode
    signature: TreeNode * child(size_t index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: BT::ControlNode::type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeType
    signature: NodeType type() const override final
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: ~ControlNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ControlNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: BT::ControlNode::ControlNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ControlNode(const ControlNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& operator=(const ControlNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ControlNode
    signature: ControlNode & operator=(const ControlNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: BT::ControlNode::ControlNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ControlNode(ControlNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: '& operator=(ControlNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ControlNode
    signature: ControlNode & operator=(ControlNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: children
      Src: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: BT::ControlNode::child
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h
    functionUses: 0
    functionsReached:
    - children
    linkageType: ''
    returnType: TreeNode
    signature: TreeNode * child(size_t index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: BT::ControlNode::type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeType
    signature: NodeType type() const override final
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - XMLParser
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 23
    functionName: BT::XMLParser::XMLParser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/xml_parsing.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLParser(const XMLParser& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - XMLParser
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 24
    functionName: '& operator=(const XMLParser& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/xml_parsing.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: XMLParser
    signature: XMLParser & operator=(const XMLParser& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - XMLParser
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 23
    functionName: BT::XMLParser::XMLParser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/xml_parsing.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLParser(const XMLParser& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - XMLParser
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 24
    functionName: '& operator=(const XMLParser& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/xml_parsing.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: XMLParser
    signature: XMLParser & operator=(const XMLParser& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 25
    functionName: BT::LeafNode::LeafNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/leaf_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LeafNode(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 27
    functionName: ~LeafNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/leaf_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LeafNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 29
    functionName: BT::LeafNode::LeafNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/leaf_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LeafNode(const LeafNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: '& operator=(const LeafNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/leaf_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: LeafNode
    signature: LeafNode & operator=(const LeafNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: BT::LeafNode::LeafNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/leaf_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LeafNode(LeafNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: '& operator=(LeafNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/leaf_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: LeafNode
    signature: LeafNode & operator=(LeafNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 25
    functionName: BT::LeafNode::LeafNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/leaf_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LeafNode(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 27
    functionName: ~LeafNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/leaf_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~LeafNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 29
    functionName: BT::LeafNode::LeafNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/leaf_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LeafNode(const LeafNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: '& operator=(const LeafNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/leaf_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: LeafNode
    signature: LeafNode & operator=(const LeafNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: BT::LeafNode::LeafNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/leaf_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LeafNode(LeafNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: '& operator=(LeafNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/leaf_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: LeafNode
    signature: LeafNode & operator=(LeafNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - parent
    argTypes:
    - Blackboard::Ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: BT::Blackboard::Blackboard
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Blackboard(Blackboard::Ptr parent)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: BT::Blackboard::Blackboard
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Blackboard(const Blackboard&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: '& operator=(const Blackboard&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Blackboard
    signature: Blackboard & operator=(const Blackboard&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: BT::Blackboard::Blackboard
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Blackboard(Blackboard&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: '& operator=(Blackboard&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Blackboard
    signature: Blackboard & operator=(Blackboard&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' _info'
    argTypes:
    - TypeInfo
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: BT::Blackboard::Entry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Entry(const TypeInfo& _info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: ~Entry()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Entry()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: BT::Blackboard::Entry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Entry(const Entry&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: '& operator=(const Entry&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Entry
    signature: Entry & operator=(const Entry&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: BT::Blackboard::Entry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Entry(Entry&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: '& operator=(Entry&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Entry
    signature: Entry & operator=(Entry&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::shared_ptr<Blackboard>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:76,1
    - Dst: Blackboard::Blackboard
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: BT::Blackboard::create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 66
    functionsReached:
    - Blackboard::Blackboard
    - std::shared_ptr<Blackboard>
    linkageType: ''
    returnType: Blackboard::Ptr
    signature: Blackboard::Ptr create(Blackboard::Ptr parent = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: ~Blackboard()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Blackboard()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - registry
    argTypes:
    - std::shared_ptr<PolymorphicCastRegistry>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: BT::Blackboard::setPolymorphicCastRegistry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void setPolymorphicCastRegistry(std::shared_ptr<PolymorphicCastRegistry>
      registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionName: BT::Blackboard::polymorphicCastRegistry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached:
    - BT::Blackboard::get
    linkageType: ''
    returnType: PolymorphicCastRegistry
    signature: PolymorphicCastRegistry * polymorphicCastRegistry() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Any*::tryCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:213,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:216,1
    - Dst: Any*::tryCastWithRegistry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:224,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:227,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:232,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:232,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - any
    argTypes:
    - Any*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 233
    functionName: BT::Blackboard::tryCastWithPolymorphicFallback
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached:
    - Any*::tryCastWithRegistry
    - auto::value
    - auto::error
    - nonstd::make_unexpected
    - Any*::tryCast
    linkageType: ''
    returnType: Expected<T>
    signature: Expected<T> Blackboard::tryCastWithPolymorphicFallback(const Any* any)
      const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::getAnyLocked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:238,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:240,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:241,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:243,1
    - Dst: BT::Blackboard::tryCastWithPolymorphicFallback
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:246,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:249,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:249,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:251,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:253,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 236
    functionDepth: 2
    functionLinenumber: 236
    functionLinenumberEnd: 254
    functionName: BT::Blackboard::get
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 19
    functionsReached:
    - auto::value
    - auto::error
    - BT::Blackboard::getAnyLocked
    - BT::Blackboard::tryCastWithPolymorphicFallback
    - auto::get
    - RuntimeError
    - std::runtime_error
    - empty
    linkageType: ''
    returnType: T
    signature: T Blackboard::get(const std::string& key) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:261,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:262,1
    - Dst: erase
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:268,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 269
    functionName: BT::Blackboard::unset
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached:
    - erase
    - find
    - end
    linkageType: ''
    returnType: void
    signature: void Blackboard::unset(const std::string& key)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: StartWith
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:274,1
    - Dst: rootBlackboard
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:276,1
    - Dst: substr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:276,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:276,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:282,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:283,1
    - Dst: std::shared_lock::unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:287,1
    - Dst: BT::Blackboard::createEntryImpl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:292,1
    - Dst: PortInfo
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:292,1
    - Dst: Any::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:296,1
    - Dst: GetAnyFromStringFunctor<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:297,1
    - Dst: BT::Blackboard::createEntryImpl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:298,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:306,1
    - Dst: std::shared_lock::unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:315,1
    - Dst: std::shared_ptr::info::isStronglyTyped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:324,1
    - Dst: TypeInfo::Create<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:327,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:329,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:330,1
    - Dst: std::shared_ptr::info::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:334,1
    - Dst: std::type_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:337,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:337,1
    - Dst: Any::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:337,1
    - Dst: std::shared_ptr::info::parseString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:342,1
    - Dst: Any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:343,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:346,1
    - Dst: isCastingSafe
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:354,1
    - Dst: BT::Blackboard::debugMessage
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:362,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:364,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:368,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:369,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:369,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:370,1
    - Dst: Any::copyInto
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:381,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:384,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 49
    argCount: 2
    argNames:
    - ' key'
    - ' value'
    argTypes:
    - std::string
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 272
    functionDepth: 2
    functionLinenumber: 272
    functionLinenumberEnd: 386
    functionName: BT::Blackboard::set
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached:
    - find
    - PortInfo
    - size
    - Any::type
    - std::shared_ptr::info::isStronglyTyped
    - GetAnyFromStringFunctor<T>
    - TypeInfo::Create<T>
    - BT::Blackboard::debugMessage
    - std::shared_lock::unlock
    - StartWith
    - BT::Blackboard::createEntryImpl
    - Any::empty
    - rootBlackboard
    - std::chrono::steady_clock::now
    - end
    - typeid
    - std::move
    - BT::demangle
    - std::type_index
    - isCastingSafe
    - substr
    - LogicError
    - StrCat
    - std::shared_ptr::info::type
    - std::shared_ptr::info::parseString
    - Any::copyInto
    linkageType: ''
    returnType: void
    signature: void Blackboard::set(const std::string& key, const T& value)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::getAnyLocked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:391,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:393,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:394,1
    - Dst: BT::Blackboard::tryCastWithPolymorphicFallback
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:398,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:401,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:401,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:403,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - ' key'
    - ' value'
    argTypes:
    - std::string
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 389
    functionDepth: 2
    functionLinenumber: 389
    functionLinenumberEnd: 407
    functionName: BT::Blackboard::get
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 19
    functionsReached:
    - auto::value
    - auto::error
    - BT::Blackboard::getAnyLocked
    - BT::Blackboard::tryCastWithPolymorphicFallback
    - auto::get
    - std::runtime_error
    - empty
    linkageType: ''
    returnType: bool
    signature: bool Blackboard::get(const std::string& key, T& value) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::getEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:412,1
    - Dst: auto::value::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:415,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:417,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:417,1
    - Dst: BT::Blackboard::tryCastWithPolymorphicFallback
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:420,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:423,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:426,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:426,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:428,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:429,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ' key'
    - ' value'
    argTypes:
    - std::string
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 410
    functionDepth: 2
    functionLinenumber: 410
    functionLinenumberEnd: 430
    functionName: BT::Blackboard::getStamped
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached:
    - BT::Blackboard::getEntry
    - auto::value
    - auto::error
    - nonstd::make_unexpected
    - BT::Blackboard::tryCastWithPolymorphicFallback
    - auto::value::empty
    - StrCat
    linkageType: ''
    returnType: Expected<Timestamp>
    signature: Expected<Timestamp> Blackboard::getStamped(const std::string& key,
      T& value) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::getStamped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:436,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:443,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:443,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 433
    functionDepth: 1
    functionLinenumber: 433
    functionLinenumberEnd: 445
    functionName: BT::Blackboard::getStamped
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 1
    functionsReached:
    - nonstd::make_unexpected
    - auto::error
    - BT::Blackboard::getStamped
    linkageType: ''
    returnType: Expected<StampedValue<T>>
    signature: Expected<StampedValue<T>> Blackboard::getStamped(const std::string&
      key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - parent
    argTypes:
    - Blackboard::Ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 42
    functionName: BT::Blackboard::Blackboard
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Blackboard(Blackboard::Ptr parent)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: BT::Blackboard::Blackboard
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Blackboard(const Blackboard&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: '& operator=(const Blackboard&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Blackboard
    signature: Blackboard & operator=(const Blackboard&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: BT::Blackboard::Blackboard
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Blackboard(Blackboard&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: '& operator=(Blackboard&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Blackboard
    signature: Blackboard & operator=(Blackboard&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' _info'
    argTypes:
    - TypeInfo
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 62
    functionName: BT::Blackboard::Entry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Entry(const TypeInfo& _info)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: ~Entry()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Entry()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: BT::Blackboard::Entry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Entry(const Entry&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: '& operator=(const Entry&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Entry
    signature: Entry & operator=(const Entry&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: BT::Blackboard::Entry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Entry(Entry&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 68
    functionName: '& operator=(Entry&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Entry
    signature: Entry & operator=(Entry&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::shared_ptr<Blackboard>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:76,1
    - Dst: Blackboard::Blackboard
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:76,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: BT::Blackboard::create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 66
    functionsReached:
    - Blackboard::Blackboard
    - std::shared_ptr<Blackboard>
    linkageType: ''
    returnType: Blackboard::Ptr
    signature: Blackboard::Ptr create(Blackboard::Ptr parent = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 79
    functionDepth: 0
    functionLinenumber: 79
    functionLinenumberEnd: 79
    functionName: ~Blackboard()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Blackboard()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:159,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - registry
    argTypes:
    - std::shared_ptr<PolymorphicCastRegistry>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 160
    functionName: BT::Blackboard::setPolymorphicCastRegistry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void setPolymorphicCastRegistry(std::shared_ptr<PolymorphicCastRegistry>
      registry)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 168
      start: 165
    functionDepth: 0
    functionLinenumber: 165
    functionLinenumberEnd: 168
    functionName: BT::Blackboard::polymorphicCastRegistry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached:
    - BT::Blackboard::get
    linkageType: ''
    returnType: PolymorphicCastRegistry
    signature: PolymorphicCastRegistry * polymorphicCastRegistry() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Any*::tryCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:213,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:216,1
    - Dst: Any*::tryCastWithRegistry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:224,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:227,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:232,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:232,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - any
    argTypes:
    - Any*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 233
      start: 210
    functionDepth: 1
    functionLinenumber: 210
    functionLinenumberEnd: 233
    functionName: BT::Blackboard::tryCastWithPolymorphicFallback
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 3
    functionsReached:
    - Any*::tryCastWithRegistry
    - auto::value
    - auto::error
    - nonstd::make_unexpected
    - Any*::tryCast
    linkageType: ''
    returnType: Expected<T>
    signature: Expected<T> Blackboard::tryCastWithPolymorphicFallback(const Any* any)
      const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::getAnyLocked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:238,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:240,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:241,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:243,1
    - Dst: BT::Blackboard::tryCastWithPolymorphicFallback
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:246,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:249,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:249,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:251,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:253,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 254
      start: 236
    functionDepth: 2
    functionLinenumber: 236
    functionLinenumberEnd: 254
    functionName: BT::Blackboard::get
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 20
    functionsReached:
    - auto::value
    - auto::error
    - BT::Blackboard::getAnyLocked
    - BT::Blackboard::tryCastWithPolymorphicFallback
    - auto::get
    - RuntimeError
    - std::runtime_error
    - empty
    linkageType: ''
    returnType: T
    signature: T Blackboard::get(const std::string& key) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:261,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:262,1
    - Dst: erase
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:268,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 256
    functionDepth: 1
    functionLinenumber: 256
    functionLinenumberEnd: 269
    functionName: BT::Blackboard::unset
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached:
    - erase
    - find
    - end
    linkageType: ''
    returnType: void
    signature: void Blackboard::unset(const std::string& key)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: StartWith
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:274,1
    - Dst: rootBlackboard
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:276,1
    - Dst: substr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:276,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:276,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:282,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:283,1
    - Dst: std::shared_lock::unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:287,1
    - Dst: BT::Blackboard::createEntryImpl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:292,1
    - Dst: PortInfo
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:292,1
    - Dst: Any::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:296,1
    - Dst: GetAnyFromStringFunctor<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:297,1
    - Dst: BT::Blackboard::createEntryImpl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:298,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:306,1
    - Dst: std::shared_lock::unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:315,1
    - Dst: std::shared_ptr::info::isStronglyTyped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:324,1
    - Dst: TypeInfo::Create<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:327,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:329,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:330,1
    - Dst: std::shared_ptr::info::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:334,1
    - Dst: std::type_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:337,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:337,1
    - Dst: Any::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:337,1
    - Dst: std::shared_ptr::info::parseString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:342,1
    - Dst: Any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:343,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:346,1
    - Dst: isCastingSafe
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:354,1
    - Dst: BT::Blackboard::debugMessage
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:362,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:364,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:368,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:369,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:369,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:370,1
    - Dst: Any::copyInto
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:381,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:384,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 49
    argCount: 2
    argNames:
    - ' key'
    - ' value'
    argTypes:
    - std::string
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 386
      start: 272
    functionDepth: 2
    functionLinenumber: 272
    functionLinenumberEnd: 386
    functionName: BT::Blackboard::set
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 0
    functionsReached:
    - find
    - PortInfo
    - size
    - Any::type
    - std::shared_ptr::info::isStronglyTyped
    - GetAnyFromStringFunctor<T>
    - TypeInfo::Create<T>
    - BT::Blackboard::debugMessage
    - std::shared_lock::unlock
    - StartWith
    - BT::Blackboard::createEntryImpl
    - Any::empty
    - rootBlackboard
    - std::chrono::steady_clock::now
    - end
    - typeid
    - std::move
    - BT::demangle
    - std::type_index
    - isCastingSafe
    - substr
    - LogicError
    - StrCat
    - std::shared_ptr::info::type
    - std::shared_ptr::info::parseString
    - Any::copyInto
    linkageType: ''
    returnType: void
    signature: void Blackboard::set(const std::string& key, const T& value)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::getAnyLocked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:391,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:393,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:394,1
    - Dst: BT::Blackboard::tryCastWithPolymorphicFallback
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:398,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:401,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:401,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:403,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 2
    argNames:
    - ' key'
    - ' value'
    argTypes:
    - std::string
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 389
    functionDepth: 2
    functionLinenumber: 389
    functionLinenumberEnd: 407
    functionName: BT::Blackboard::get
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 20
    functionsReached:
    - auto::value
    - auto::error
    - BT::Blackboard::getAnyLocked
    - BT::Blackboard::tryCastWithPolymorphicFallback
    - auto::get
    - std::runtime_error
    - empty
    linkageType: ''
    returnType: bool
    signature: bool Blackboard::get(const std::string& key, T& value) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::getEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:412,1
    - Dst: auto::value::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:415,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:417,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:417,1
    - Dst: BT::Blackboard::tryCastWithPolymorphicFallback
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:420,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:423,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:426,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:426,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:428,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:429,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - ' key'
    - ' value'
    argTypes:
    - std::string
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 410
    functionDepth: 2
    functionLinenumber: 410
    functionLinenumberEnd: 430
    functionName: BT::Blackboard::getStamped
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 1
    functionsReached:
    - BT::Blackboard::getEntry
    - auto::value
    - auto::error
    - nonstd::make_unexpected
    - BT::Blackboard::tryCastWithPolymorphicFallback
    - auto::value::empty
    - StrCat
    linkageType: ''
    returnType: Expected<Timestamp>
    signature: Expected<Timestamp> Blackboard::getStamped(const std::string& key,
      T& value) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::getStamped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:436,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:443,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h:443,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 433
    functionDepth: 1
    functionLinenumber: 433
    functionLinenumberEnd: 445
    functionName: BT::Blackboard::getStamped
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    functionUses: 2
    functionsReached:
    - nonstd::make_unexpected
    - auto::error
    - BT::Blackboard::getStamped
    linkageType: ''
    returnType: Expected<StampedValue<T>>
    signature: Expected<StampedValue<T>> Blackboard::getStamped(const std::string&
      key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 107
    functionName: BT::NodeConfig
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NodeConfig()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: BT::hasNodeNameCtor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool hasNodeNameCtor()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 150
    functionName: BT::hasNodeFullCtor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool hasNodeFullCtor()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 170
    functionName: BT::TreeNode::TreeNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TreeNode(const TreeNode& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 171
    functionName: '& operator=(const TreeNode& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TreeNode
    signature: TreeNode & operator=(const TreeNode& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::TreeNode::getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:295,1
    - Dst: Expected<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:296,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:296,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:296,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 297
    functionName: BT::TreeNode::getInput
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 1
    functionsReached:
    - auto::error
    - nonstd::make_unexpected
    - BT::TreeNode::getInput
    - Expected<T>
    linkageType: ''
    returnType: Expected<T>
    signature: Expected<T> getInput(const std::string& key) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::TreeNode::getInputStamped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:308,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:315,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:315,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 305
    functionDepth: 1
    functionLinenumber: 305
    functionLinenumberEnd: 317
    functionName: BT::TreeNode::getInputStamped
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 1
    functionsReached:
    - auto::error
    - nonstd::make_unexpected
    - BT::TreeNode::getInputStamped
    linkageType: ''
    returnType: Expected<StampedValue<T>>
    signature: Expected<StampedValue<T>> getInputStamped(const std::string& key) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: hasNodeFullCtor<DerivedT, ExtraArgs...>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:386,1
    - Dst: hasNodeNameCtor<DerivedT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:387,1
    - Dst: hasNodeFullCtor<DerivedT, ExtraArgs...>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:389,1
    - Dst: std::make_unique<DerivedT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:391,1
    - Dst: hasNodeNameCtor<DerivedT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:393,1
    - Dst: std::make_unique<DerivedT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:395,1
    - Dst: auto::config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:396,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 382
    functionDepth: 0
    functionLinenumber: 382
    functionLinenumberEnd: 399
    functionName: BT::TreeNode::Instantiate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached:
    - hasNodeFullCtor<DerivedT, ExtraArgs...>
    - std::make_unique<DerivedT>
    - auto::config
    - hasNodeNameCtor<DerivedT>
    linkageType: ''
    returnType: std::unique_ptr<TreeNode>
    signature: "std::unique_ptr<TreeNode> Instantiate(const std::string& name,\n                                               const
      NodeConfig& config,\n                                               ExtraArgs...
      args)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:458,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:460,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:460,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:461,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:461,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:463,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:468,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:468,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:468,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:468,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:469,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:469,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:469,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:471,1
    - Dst: convertFromString<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:475,1
    - Dst: convertFromString<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:477,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 453
    functionDepth: 1
    functionLinenumber: 453
    functionLinenumberEnd: 478
    functionName: BT::TreeNode::parseString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached:
    - std::from_chars
    - find
    - config
    - size
    - static_cast<T>
    - convertFromString<T>
    - data
    - std::errc
    - end
    linkageType: ''
    returnType: T
    signature: T TreeNode::parseString(const std::string& str) const
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:486,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:486,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:487,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:487,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:491,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:493,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:493,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:493,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:501,1
    - Dst: ports::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:501,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:502,1
    - Dst: ports::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:502,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:504,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:504,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:504,1
    - Dst: defaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:511,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:513,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:513,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:513,1
    - Dst: defaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:518,1
    - Dst: defaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:520,1
    - Dst: defaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:524,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:534,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:536,1
    - Dst: ports::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:536,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:537,1
    - Dst: ports::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:537,1
    - Dst: auto::second::converter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:539,1
    - Dst: converter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:542,1
    - Dst: BT::TreeNode::parseString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:547,1
    - Dst: BT::TreeNode::getRemappedKey
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:550,1
    - Dst: parseStringWithConverter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:558,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:562,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:562,1
    - Dst: what
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:562,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:566,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:568,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:570,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:574,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:574,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:574,1
    - Dst: auto::value::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:586,1
    - Dst: isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:588,1
    - Dst: parseStringWithConverter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:590,1
    - Dst: cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:590,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:595,1
    - Dst: tryCastWithPolymorphicFallback
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:595,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:598,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:598,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:600,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:606,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:606,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:612,1
    - Dst: what
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:612,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 62
    argCount: 2
    argNames:
    - ' key'
    - ' destination'
    argTypes:
    - std::string
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 481
    functionDepth: 3
    functionLinenumber: 481
    functionLinenumberEnd: 614
    functionName: BT::TreeNode::getInputStamped
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 1
    functionsReached:
    - find
    - config
    - auto::second::converter
    - nonstd::make_unexpected
    - auto::value::empty
    - fullPath
    - tryCastWithPolymorphicFallback
    - std::runtime_error
    - cast
    - string
    - BT::TreeNode::parseString
    - ports::find
    - BT::TreeNode::getRemappedKey
    - ports::end
    - end
    - defaultValue
    - what
    - converter
    - parseStringWithConverter
    - auto::value
    - auto::error
    - StrCat
    - getEntry
    - isString
    linkageType: ''
    returnType: Expected<Timestamp>
    signature: "Expected<Timestamp> TreeNode::getInputStamped(const std::string& key,\n
      \                                                    T& destination) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::TreeNode::getInputStamped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:619,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:622,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:622,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' key'
    - ' destination'
    argTypes:
    - std::string
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 617
    functionDepth: 2
    functionLinenumber: 617
    functionLinenumberEnd: 625
    functionName: BT::TreeNode::getInput
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 1
    functionsReached:
    - auto::error
    - nonstd::make_unexpected
    - BT::TreeNode::getInputStamped
    linkageType: ''
    returnType: Result
    signature: Result TreeNode::getInput(const std::string& key, T& destination) const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:630,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:632,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:636,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:636,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:637,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:637,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:639,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:639,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:647,1
    - Dst: set
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:647,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:647,1
    - Dst: BT::TreeNode::isBlackboardPointer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:651,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:653,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:658,1
    - Dst: ports::at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:658,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:659,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:659,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:661,1
    - Dst: BT::TreeNode::stripBlackboardPointer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:666,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:667,1
    - Dst: set
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:667,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:667,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 2
    argNames:
    - ' key'
    - ' value'
    argTypes:
    - std::string
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 628
    functionDepth: 3
    functionLinenumber: 628
    functionLinenumberEnd: 670
    functionName: BT::TreeNode::setOutput
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached:
    - find
    - ports::at
    - typeid
    - set
    - config
    - BT::TreeNode::stripBlackboardPointer
    - static_cast<std::string>
    - nonstd::make_unexpected
    - LogicError
    - StrCat
    - end
    - BT::TreeNode::isBlackboardPointer
    linkageType: ''
    returnType: Result
    signature: Result TreeNode::setOutput(const std::string& key, const T& value)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::getProvidedPorts
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:676,1
    - Dst: second::direction
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:679,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ' config'
    argTypes:
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 674
    functionDepth: 1
    functionLinenumber: 674
    functionLinenumberEnd: 691
    functionName: BT::assignDefaultRemapping
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached:
    - BT::getProvidedPorts
    - second::direction
    linkageType: ''
    returnType: void
    signature: void assignDefaultRemapping(NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 107
    functionName: BT::NodeConfig
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NodeConfig()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: BT::hasNodeNameCtor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool hasNodeNameCtor()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 150
    functionName: BT::hasNodeFullCtor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool hasNodeFullCtor()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 170
    functionDepth: 0
    functionLinenumber: 170
    functionLinenumberEnd: 170
    functionName: BT::TreeNode::TreeNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TreeNode(const TreeNode& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TreeNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 171
    functionDepth: 0
    functionLinenumber: 171
    functionLinenumberEnd: 171
    functionName: '& operator=(const TreeNode& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TreeNode
    signature: TreeNode & operator=(const TreeNode& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::TreeNode::getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:295,1
    - Dst: Expected<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:296,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:296,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:296,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 292
    functionDepth: 1
    functionLinenumber: 292
    functionLinenumberEnd: 297
    functionName: BT::TreeNode::getInput
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 2
    functionsReached:
    - auto::error
    - nonstd::make_unexpected
    - BT::TreeNode::getInput
    - Expected<T>
    linkageType: ''
    returnType: Expected<T>
    signature: Expected<T> getInput(const std::string& key) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::TreeNode::getInputStamped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:308,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:315,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:315,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 317
      start: 305
    functionDepth: 1
    functionLinenumber: 305
    functionLinenumberEnd: 317
    functionName: BT::TreeNode::getInputStamped
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 3
    functionsReached:
    - auto::error
    - nonstd::make_unexpected
    - BT::TreeNode::getInputStamped
    linkageType: ''
    returnType: Expected<StampedValue<T>>
    signature: Expected<StampedValue<T>> getInputStamped(const std::string& key) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: hasNodeFullCtor<DerivedT, ExtraArgs...>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:386,1
    - Dst: hasNodeNameCtor<DerivedT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:387,1
    - Dst: hasNodeFullCtor<DerivedT, ExtraArgs...>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:389,1
    - Dst: std::make_unique<DerivedT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:391,1
    - Dst: hasNodeNameCtor<DerivedT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:393,1
    - Dst: std::make_unique<DerivedT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:395,1
    - Dst: auto::config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:396,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 399
      start: 382
    functionDepth: 0
    functionLinenumber: 382
    functionLinenumberEnd: 399
    functionName: BT::TreeNode::Instantiate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached:
    - hasNodeFullCtor<DerivedT, ExtraArgs...>
    - std::make_unique<DerivedT>
    - auto::config
    - hasNodeNameCtor<DerivedT>
    linkageType: ''
    returnType: std::unique_ptr<TreeNode>
    signature: "std::unique_ptr<TreeNode> Instantiate(const std::string& name,\n                                               const
      NodeConfig& config,\n                                               ExtraArgs...
      args)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:458,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:460,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:460,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:461,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:461,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:463,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:468,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:468,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:468,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:468,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:469,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:469,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:469,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:471,1
    - Dst: convertFromString<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:475,1
    - Dst: convertFromString<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:477,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 13
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 453
    functionDepth: 1
    functionLinenumber: 453
    functionLinenumberEnd: 478
    functionName: BT::TreeNode::parseString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 1
    functionsReached:
    - std::from_chars
    - find
    - config
    - size
    - static_cast<T>
    - convertFromString<T>
    - data
    - std::errc
    - end
    linkageType: ''
    returnType: T
    signature: T TreeNode::parseString(const std::string& str) const
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:486,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:486,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:487,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:487,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:491,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:493,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:493,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:493,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:501,1
    - Dst: ports::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:501,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:502,1
    - Dst: ports::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:502,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:504,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:504,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:504,1
    - Dst: defaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:511,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:513,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:513,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:513,1
    - Dst: defaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:518,1
    - Dst: defaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:520,1
    - Dst: defaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:524,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:534,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:536,1
    - Dst: ports::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:536,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:537,1
    - Dst: ports::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:537,1
    - Dst: auto::second::converter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:539,1
    - Dst: converter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:542,1
    - Dst: BT::TreeNode::parseString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:547,1
    - Dst: BT::TreeNode::getRemappedKey
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:550,1
    - Dst: parseStringWithConverter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:558,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:562,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:562,1
    - Dst: what
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:562,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:566,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:568,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:570,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:574,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:574,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:574,1
    - Dst: auto::value::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:586,1
    - Dst: isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:588,1
    - Dst: parseStringWithConverter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:590,1
    - Dst: cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:590,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:595,1
    - Dst: tryCastWithPolymorphicFallback
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:595,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:598,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:598,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:600,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:606,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:606,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:612,1
    - Dst: what
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:612,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 62
    argCount: 2
    argNames:
    - ' key'
    - ' destination'
    argTypes:
    - std::string
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 614
      start: 481
    functionDepth: 3
    functionLinenumber: 481
    functionLinenumberEnd: 614
    functionName: BT::TreeNode::getInputStamped
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 3
    functionsReached:
    - find
    - config
    - auto::second::converter
    - nonstd::make_unexpected
    - auto::value::empty
    - fullPath
    - tryCastWithPolymorphicFallback
    - std::runtime_error
    - cast
    - string
    - BT::TreeNode::parseString
    - ports::find
    - BT::TreeNode::getRemappedKey
    - ports::end
    - end
    - defaultValue
    - what
    - converter
    - parseStringWithConverter
    - auto::value
    - auto::error
    - StrCat
    - getEntry
    - isString
    linkageType: ''
    returnType: Expected<Timestamp>
    signature: "Expected<Timestamp> TreeNode::getInputStamped(const std::string& key,\n
      \                                                    T& destination) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::TreeNode::getInputStamped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:619,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:622,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:622,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' key'
    - ' destination'
    argTypes:
    - std::string
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 625
      start: 617
    functionDepth: 2
    functionLinenumber: 617
    functionLinenumberEnd: 625
    functionName: BT::TreeNode::getInput
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 2
    functionsReached:
    - auto::error
    - nonstd::make_unexpected
    - BT::TreeNode::getInputStamped
    linkageType: ''
    returnType: Result
    signature: Result TreeNode::getInput(const std::string& key, T& destination) const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:630,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:632,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:636,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:636,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:637,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:637,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:639,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:639,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:647,1
    - Dst: set
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:647,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:647,1
    - Dst: BT::TreeNode::isBlackboardPointer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:651,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:653,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:658,1
    - Dst: ports::at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:658,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:659,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:659,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:661,1
    - Dst: BT::TreeNode::stripBlackboardPointer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:666,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:667,1
    - Dst: set
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:667,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:667,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 22
    argCount: 2
    argNames:
    - ' key'
    - ' value'
    argTypes:
    - std::string
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 628
    functionDepth: 3
    functionLinenumber: 628
    functionLinenumberEnd: 670
    functionName: BT::TreeNode::setOutput
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached:
    - find
    - ports::at
    - typeid
    - set
    - config
    - BT::TreeNode::stripBlackboardPointer
    - static_cast<std::string>
    - nonstd::make_unexpected
    - LogicError
    - StrCat
    - end
    - BT::TreeNode::isBlackboardPointer
    linkageType: ''
    returnType: Result
    signature: Result TreeNode::setOutput(const std::string& key, const T& value)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::getProvidedPorts
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:676,1
    - Dst: second::direction
      Src: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h:679,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ' config'
    argTypes:
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 674
    functionDepth: 1
    functionLinenumber: 674
    functionLinenumberEnd: 691
    functionName: BT::assignDefaultRemapping
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    functionUses: 0
    functionsReached:
    - BT::getProvidedPorts
    - second::direction
    linkageType: ''
    returnType: void
    signature: void assignDefaultRemapping(NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~ActionNodeBase() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ActionNodeBase() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: BT::ActionNodeBase::ActionNodeBase
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ActionNodeBase(const ActionNodeBase&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: '& operator=(const ActionNodeBase&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ActionNodeBase
    signature: ActionNodeBase & operator=(const ActionNodeBase&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: BT::ActionNodeBase::ActionNodeBase
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ActionNodeBase(ActionNodeBase&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: '& operator=(ActionNodeBase&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ActionNodeBase
    signature: ActionNodeBase & operator=(ActionNodeBase&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: BT::ActionNodeBase::type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeType
    signature: NodeType type() const override final
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: ~SyncActionNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SyncActionNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: BT::SyncActionNode::SyncActionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SyncActionNode(const SyncActionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: '& operator=(const SyncActionNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SyncActionNode
    signature: SyncActionNode & operator=(const SyncActionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: BT::SyncActionNode::SyncActionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SyncActionNode(SyncActionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: '& operator=(SyncActionNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SyncActionNode
    signature: SyncActionNode & operator=(SyncActionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resetStatus
      Src: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: BT::SyncActionNode::halt
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached:
    - resetStatus
    linkageType: ''
    returnType: void
    signature: void halt() override final
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: ~SimpleActionNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SimpleActionNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: BT::SimpleActionNode::SimpleActionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleActionNode(const SimpleActionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: '& operator=(const SimpleActionNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleActionNode
    signature: SimpleActionNode & operator=(const SimpleActionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: BT::SimpleActionNode::SimpleActionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleActionNode(SimpleActionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: '& operator=(SimpleActionNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleActionNode
    signature: SimpleActionNode & operator=(SimpleActionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: BT::ThreadedAction::ThreadedAction
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ThreadedAction(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: load
      Src: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: BT::ThreadedAction::isHaltRequested
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 1
    functionsReached:
    - load
    linkageType: ''
    returnType: bool
    signature: bool isHaltRequested() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionName: BT::StatefulActionNode::StatefulActionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StatefulActionNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 216
    functionName: BT::CoroActionNode::CoroActionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CoroActionNode(const CoroActionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 217
    functionName: '& operator=(const CoroActionNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CoroActionNode
    signature: CoroActionNode & operator=(const CoroActionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 218
    functionName: BT::CoroActionNode::CoroActionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CoroActionNode(CoroActionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 219
    functionName: '& operator=(CoroActionNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CoroActionNode
    signature: CoroActionNode & operator=(CoroActionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~ActionNodeBase() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ActionNodeBase() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: BT::ActionNodeBase::ActionNodeBase
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ActionNodeBase(const ActionNodeBase&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: '& operator=(const ActionNodeBase&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ActionNodeBase
    signature: ActionNodeBase & operator=(const ActionNodeBase&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: BT::ActionNodeBase::ActionNodeBase
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ActionNodeBase(ActionNodeBase&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: '& operator=(ActionNodeBase&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ActionNodeBase
    signature: ActionNodeBase & operator=(ActionNodeBase&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 48
    functionName: BT::ActionNodeBase::type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeType
    signature: NodeType type() const override final
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: ~SyncActionNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SyncActionNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: BT::SyncActionNode::SyncActionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SyncActionNode(const SyncActionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: '& operator=(const SyncActionNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SyncActionNode
    signature: SyncActionNode & operator=(const SyncActionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: BT::SyncActionNode::SyncActionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SyncActionNode(SyncActionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: '& operator=(SyncActionNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SyncActionNode
    signature: SyncActionNode & operator=(SyncActionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: resetStatus
      Src: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h:73,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: BT::SyncActionNode::halt
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached:
    - resetStatus
    linkageType: ''
    returnType: void
    signature: void halt() override final
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 97
    functionName: ~SimpleActionNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SimpleActionNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: BT::SimpleActionNode::SimpleActionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleActionNode(const SimpleActionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 100
    functionName: '& operator=(const SimpleActionNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleActionNode
    signature: SimpleActionNode & operator=(const SimpleActionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 101
    functionName: BT::SimpleActionNode::SimpleActionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleActionNode(SimpleActionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 102
    functionName: '& operator=(SimpleActionNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SimpleActionNode
    signature: SimpleActionNode & operator=(SimpleActionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 135
    functionName: BT::ThreadedAction::ThreadedAction
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ThreadedAction(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: load
      Src: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 140
    functionName: BT::ThreadedAction::isHaltRequested
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 1
    functionsReached:
    - load
    linkageType: ''
    returnType: bool
    signature: bool isHaltRequested() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 178
    functionName: BT::StatefulActionNode::StatefulActionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StatefulActionNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 216
    functionName: BT::CoroActionNode::CoroActionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CoroActionNode(const CoroActionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 217
    functionName: '& operator=(const CoroActionNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CoroActionNode
    signature: CoroActionNode & operator=(const CoroActionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 218
    functionDepth: 0
    functionLinenumber: 218
    functionLinenumberEnd: 218
    functionName: BT::CoroActionNode::CoroActionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CoroActionNode(CoroActionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 219
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 219
    functionName: '& operator=(CoroActionNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: CoroActionNode
    signature: CoroActionNode & operator=(CoroActionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' status'
    argTypes:
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: BT::isStatusActive
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isStatusActive(const NodeStatus& status)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' status'
    argTypes:
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: BT::isStatusCompleted
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isStatusCompleted(const NodeStatus& status)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::convertFromJSON
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:106,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: BT::convertFromJSON
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 2
    functionsReached:
    - BT::convertFromJSON
    - typeid
    linkageType: ''
    returnType: T
    signature: T convertFromJSON(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::StartWith
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:125,1
    - Dst: StringView::remove_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:127,1
    - Dst: BT::convertFromJSON
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:128,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:131,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:131,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:137,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 122
    functionDepth: 2
    functionLinenumber: 122
    functionLinenumberEnd: 140
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 25
    functionsReached:
    - BT::demangle
    - typeid
    - BT::StartWith
    - string
    - LogicError
    - BT::convertFromJSON
    - StringView::remove_prefix
    linkageType: ''
    returnType: T
    signature: T convertFromString(StringView str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:237,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:245,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:245,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 247
    functionName: BT::GetAnyFromStringFunctor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - BT::convertFromString
    - Any
    linkageType: ''
    returnType: StringConverter
    signature: StringConverter GetAnyFromStringFunctor()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 253
    functionName: BT::GetAnyFromStringFunctor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: StringConverter
    signature: StringConverter GetAnyFromStringFunctor<void>()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 262
    functionName: BT::IsConvertibleToString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool IsConvertibleToString()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BT::IsConvertibleToString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:275,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:277,1
    - Dst: BT::toJsonString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:281,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:281,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:286,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:286,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:287,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:287,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:291,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 273
    functionDepth: 2
    functionLinenumber: 273
    functionLinenumberEnd: 293
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 10
    functionsReached:
    - BT::demangle
    - typeid
    - static_cast<std::string>
    - BT::StrCat
    - LogicError
    - Any
    - to_string
    - BT::toJsonString
    - BT::IsConvertibleToString
    linkageType: ''
    returnType: std::string
    signature: std::string toStr(const T& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:379,1
    - Dst: GetAnyFromStringFunctor<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 380
    functionName: BT::TypeInfo::Create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - GetAnyFromStringFunctor<T>
    - typeid
    linkageType: ''
    returnType: TypeInfo
    signature: TypeInfo Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:382,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 382
    functionDepth: 0
    functionLinenumber: 382
    functionLinenumberEnd: 383
    functionName: BT::TypeInfo::TypeInfo
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - typeid
    linkageType: ''
    returnType: void
    signature: void TypeInfo()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - type_info
    - conv
    argTypes:
    - std::type_index
    - StringConverter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 385
    functionDepth: 1
    functionLinenumber: 385
    functionLinenumberEnd: 387
    functionName: BT::TypeInfo::TypeInfo
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - BT::demangle
    linkageType: ''
    returnType: void
    signature: void TypeInfo(std::type_index type_info, StringConverter conv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 398
    functionDepth: 0
    functionLinenumber: 398
    functionLinenumberEnd: 402
    functionName: BT::TypeInfo::parseString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Any
    signature: Any parseString(const T&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:406,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:406,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 404
    functionDepth: 0
    functionLinenumber: 404
    functionLinenumberEnd: 407
    functionName: BT::TypeInfo::isStronglyTyped
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - typeid
    linkageType: ''
    returnType: bool
    signature: bool isStronglyTyped() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 409
    functionDepth: 0
    functionLinenumber: 409
    functionLinenumberEnd: 412
    functionName: '& converter() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: StringConverter
    signature: StringConverter & converter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 423
    functionDepth: 0
    functionLinenumber: 423
    functionLinenumberEnd: 425
    functionName: BT::PortInfo::PortInfo
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PortInfo(PortDirection direction = PortDirection::INOUT)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - direction
    - type_info
    - conv
    argTypes:
    - PortDirection
    - std::type_index
    - StringConverter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 427
    functionDepth: 0
    functionLinenumber: 427
    functionLinenumberEnd: 429
    functionName: BT::PortInfo::PortInfo
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PortInfo(PortDirection direction, std::type_index type_info, StringConverter
      conv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:438,1
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:441,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' default_value'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 436
    functionDepth: 0
    functionLinenumber: 436
    functionLinenumberEnd: 448
    functionName: BT::PortInfo::setDefaultValue
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - BT::toStr
    - Any
    linkageType: ''
    returnType: void
    signature: void setDefaultValue(const T& default_value)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:468,1
    - Dst: BT::IsAllowedPortName
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:469,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:471,1
    - Dst: PortInfo
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:480,1
    - Dst: PortInfo
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:484,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:484,1
    - Dst: BT::GetAnyFromStringFunctor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:484,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:486,1
    - Dst: std::pair::second::setDescription
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:488,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - direction
    - name
    argTypes:
    - PortDirection
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 464
    functionDepth: 2
    functionLinenumber: 464
    functionLinenumberEnd: 491
    functionName: BT::CreatePort
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - BT::GetAnyFromStringFunctor
    - typeid
    - std::pair::second::setDescription
    - BT::IsAllowedPortName
    - PortInfo
    - static_cast<std::string>
    - RuntimeError
    - empty
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: "std::pair<std::string, PortInfo> CreatePort(PortDirection direction,\n
      \                                                         StringView name,\n
      \                                                         StringView description
      = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::CreatePort
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:503,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 500
    functionDepth: 3
    functionLinenumber: 500
    functionLinenumberEnd: 504
    functionName: BT::InputPort
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached:
    - BT::CreatePort
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: std::pair<std::string, PortInfo> InputPort(StringView name, StringView
      description = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::CreatePort
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:515,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 512
    functionDepth: 3
    functionLinenumber: 512
    functionLinenumberEnd: 516
    functionName: BT::OutputPort
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached:
    - BT::CreatePort
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: std::pair<std::string, PortInfo> OutputPort(StringView name, StringView
      description = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::CreatePort
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:527,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 524
    functionDepth: 3
    functionLinenumber: 524
    functionLinenumberEnd: 528
    functionName: BT::BidirectionalPort
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - BT::CreatePort
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: std::pair<std::string, PortInfo> BidirectionalPort(StringView name,
      StringView description = {})
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IsConvertibleToString<DefaultT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:539,1
    - Dst: CreatePort<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:543,1
    - Dst: auto::second::setDefaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:547,1
    - Dst: T
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:547,1
    - Dst: IsConvertibleToString<DefaultT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:549,1
    - Dst: auto::second::setDefaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:551,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:551,1
    - Dst: auto::second::setDefaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:555,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - direction
    - name
    - ' default_value'
    - description
    argTypes:
    - PortDirection
    - StringView
    - DefaultT
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 535
    functionDepth: 1
    functionLinenumber: 535
    functionLinenumberEnd: 558
    functionName: BT::details::PortWithDefault
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - CreatePort<T>
    - string
    - IsConvertibleToString<DefaultT>
    - auto::second::setDefaultValue
    - T
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: "std::pair<std::string, PortInfo> PortWithDefault(PortDirection direction,
      StringView name, const DefaultT& default_value,\n                StringView
      description)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IsConvertibleToString<DefaultT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:539,1
    - Dst: CreatePort<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:543,1
    - Dst: auto::second::setDefaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:547,1
    - Dst: T
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:547,1
    - Dst: IsConvertibleToString<DefaultT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:549,1
    - Dst: auto::second::setDefaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:551,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:551,1
    - Dst: auto::second::setDefaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:555,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - direction
    - name
    - ' default_value'
    - description
    argTypes:
    - PortDirection
    - StringView
    - DefaultT
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 535
    functionDepth: 1
    functionLinenumber: 535
    functionLinenumberEnd: 558
    functionName: BT::details::PortWithDefault
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - CreatePort<T>
    - string
    - IsConvertibleToString<DefaultT>
    - auto::second::setDefaultValue
    - T
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: "std::pair<std::string, PortInfo> PortWithDefault(PortDirection direction,
      StringView name, const DefaultT& default_value,\n                StringView
      description)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: details::PortWithDefault<T, DefaultT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - name
    - ' default_value'
    - description
    argTypes:
    - StringView
    - DefaultT
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 570
    functionDepth: 0
    functionLinenumber: 570
    functionLinenumberEnd: 575
    functionName: BT::InputPort
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached:
    - details::PortWithDefault<T, DefaultT>
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: std::pair<std::string, PortInfo> InputPort(StringView name, const DefaultT&
      default_value, StringView description)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: details::PortWithDefault<T, DefaultT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:588,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - name
    - ' default_value'
    - description
    argTypes:
    - StringView
    - DefaultT
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 585
    functionDepth: 0
    functionLinenumber: 585
    functionLinenumberEnd: 590
    functionName: BT::BidirectionalPort
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - details::PortWithDefault<T, DefaultT>
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: std::pair<std::string, PortInfo> BidirectionalPort(StringView name,
      const DefaultT& default_value, StringView description)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StringView::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:604,1
    - Dst: StringView::front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:604,1
    - Dst: StringView::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:604,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:606,1
    - Dst: BT::CreatePort
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:609,1
    - Dst: auto::second::setDefaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:610,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 3
    argNames:
    - name
    - default_value
    - description
    argTypes:
    - StringView
    - StringView
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 600
    functionDepth: 3
    functionLinenumber: 600
    functionLinenumberEnd: 612
    functionName: BT::OutputPort
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached:
    - StringView::back
    - StringView::empty
    - LogicError
    - StringView::front
    - auto::second::setDefaultValue
    - BT::CreatePort
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: "std::pair<std::string, PortInfo> OutputPort(StringView name,\n                                                                 StringView
      default_value,\n                                                                 StringView
      description)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: KeepRunning::providedPorts
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:648,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 649
      start: 645
    functionDepth: 1
    functionLinenumber: 645
    functionLinenumberEnd: 649
    functionName: BT::getProvidedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 4
    functionsReached:
    - KeepRunning::providedPorts
    linkageType: ''
    returnType: PortsList
    signature: PortsList getProvidedPorts(enable_if<has_static_method_providedPorts<T>>
      = nullptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 652
    functionDepth: 0
    functionLinenumber: 652
    functionLinenumberEnd: 656
    functionName: BT::getProvidedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: PortsList
    signature: PortsList getProvidedPorts(enable_if_not<has_static_method_providedPorts<T>>
      = nullptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' status'
    argTypes:
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: BT::isStatusActive
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isStatusActive(const NodeStatus& status)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' status'
    argTypes:
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 50
    functionName: BT::isStatusCompleted
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isStatusCompleted(const NodeStatus& status)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::convertFromJSON
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:106,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 107
    functionName: BT::convertFromJSON
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 4
    functionsReached:
    - BT::convertFromJSON
    - typeid
    linkageType: ''
    returnType: T
    signature: T convertFromJSON(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::StartWith
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:125,1
    - Dst: StringView::remove_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:127,1
    - Dst: BT::convertFromJSON
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:128,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:131,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:131,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:137,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:137,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 122
    functionDepth: 2
    functionLinenumber: 122
    functionLinenumberEnd: 140
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 26
    functionsReached:
    - BT::demangle
    - typeid
    - BT::StartWith
    - string
    - LogicError
    - BT::convertFromJSON
    - StringView::remove_prefix
    linkageType: ''
    returnType: T
    signature: T convertFromString(StringView str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:237,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:245,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:245,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 233
    functionDepth: 0
    functionLinenumber: 233
    functionLinenumberEnd: 247
    functionName: BT::GetAnyFromStringFunctor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached:
    - BT::convertFromString
    - Any
    linkageType: ''
    returnType: StringConverter
    signature: StringConverter GetAnyFromStringFunctor()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 253
      start: 250
    functionDepth: 0
    functionLinenumber: 250
    functionLinenumberEnd: 253
    functionName: BT::GetAnyFromStringFunctor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: StringConverter
    signature: StringConverter GetAnyFromStringFunctor<void>()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 262
    functionName: BT::IsConvertibleToString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool IsConvertibleToString()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BT::IsConvertibleToString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:275,1
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:277,1
    - Dst: BT::toJsonString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:281,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:281,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:286,1
    - Dst: BT::StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:286,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:287,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:287,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:291,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 273
    functionDepth: 2
    functionLinenumber: 273
    functionLinenumberEnd: 293
    functionName: BT::toStr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 11
    functionsReached:
    - BT::demangle
    - typeid
    - static_cast<std::string>
    - BT::StrCat
    - LogicError
    - Any
    - to_string
    - BT::toJsonString
    - BT::IsConvertibleToString
    linkageType: ''
    returnType: std::string
    signature: std::string toStr(const T& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:379,1
    - Dst: GetAnyFromStringFunctor<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 377
    functionDepth: 0
    functionLinenumber: 377
    functionLinenumberEnd: 380
    functionName: BT::TypeInfo::Create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - GetAnyFromStringFunctor<T>
    - typeid
    linkageType: ''
    returnType: TypeInfo
    signature: TypeInfo Create()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:382,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 383
      start: 382
    functionDepth: 0
    functionLinenumber: 382
    functionLinenumberEnd: 383
    functionName: BT::TypeInfo::TypeInfo
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - typeid
    linkageType: ''
    returnType: void
    signature: void TypeInfo()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:386,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - type_info
    - conv
    argTypes:
    - std::type_index
    - StringConverter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 387
      start: 385
    functionDepth: 1
    functionLinenumber: 385
    functionLinenumberEnd: 387
    functionName: BT::TypeInfo::TypeInfo
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - BT::demangle
    linkageType: ''
    returnType: void
    signature: void TypeInfo(std::type_index type_info, StringConverter conv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 398
    functionDepth: 0
    functionLinenumber: 398
    functionLinenumberEnd: 402
    functionName: BT::TypeInfo::parseString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Any
    signature: Any parseString(const T&) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:406,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:406,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 407
      start: 404
    functionDepth: 0
    functionLinenumber: 404
    functionLinenumberEnd: 407
    functionName: BT::TypeInfo::isStronglyTyped
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - typeid
    linkageType: ''
    returnType: bool
    signature: bool isStronglyTyped() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 412
      start: 409
    functionDepth: 0
    functionLinenumber: 409
    functionLinenumberEnd: 412
    functionName: '& converter() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: StringConverter
    signature: StringConverter & converter() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 425
      start: 423
    functionDepth: 0
    functionLinenumber: 423
    functionLinenumberEnd: 425
    functionName: BT::PortInfo::PortInfo
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PortInfo(PortDirection direction = PortDirection::INOUT)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - direction
    - type_info
    - conv
    argTypes:
    - PortDirection
    - std::type_index
    - StringConverter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 427
    functionDepth: 0
    functionLinenumber: 427
    functionLinenumberEnd: 429
    functionName: BT::PortInfo::PortInfo
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PortInfo(PortDirection direction, std::type_index type_info, StringConverter
      conv)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:438,1
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:441,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' default_value'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 436
    functionDepth: 0
    functionLinenumber: 436
    functionLinenumberEnd: 448
    functionName: BT::PortInfo::setDefaultValue
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - BT::toStr
    - Any
    linkageType: ''
    returnType: void
    signature: void setDefaultValue(const T& default_value)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:468,1
    - Dst: BT::IsAllowedPortName
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:469,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:471,1
    - Dst: PortInfo
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:480,1
    - Dst: PortInfo
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:484,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:484,1
    - Dst: BT::GetAnyFromStringFunctor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:484,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:486,1
    - Dst: std::pair::second::setDescription
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:488,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - direction
    - name
    argTypes:
    - PortDirection
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 464
    functionDepth: 2
    functionLinenumber: 464
    functionLinenumberEnd: 491
    functionName: BT::CreatePort
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 4
    functionsReached:
    - BT::GetAnyFromStringFunctor
    - typeid
    - std::pair::second::setDescription
    - BT::IsAllowedPortName
    - PortInfo
    - static_cast<std::string>
    - RuntimeError
    - empty
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: "std::pair<std::string, PortInfo> CreatePort(PortDirection direction,\n
      \                                                         StringView name,\n
      \                                                         StringView description
      = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::CreatePort
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:503,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 500
    functionDepth: 3
    functionLinenumber: 500
    functionLinenumberEnd: 504
    functionName: BT::InputPort
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached:
    - BT::CreatePort
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: std::pair<std::string, PortInfo> InputPort(StringView name, StringView
      description = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::CreatePort
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:515,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 512
    functionDepth: 3
    functionLinenumber: 512
    functionLinenumberEnd: 516
    functionName: BT::OutputPort
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached:
    - BT::CreatePort
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: std::pair<std::string, PortInfo> OutputPort(StringView name, StringView
      description = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::CreatePort
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:527,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 524
    functionDepth: 3
    functionLinenumber: 524
    functionLinenumberEnd: 528
    functionName: BT::BidirectionalPort
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - BT::CreatePort
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: std::pair<std::string, PortInfo> BidirectionalPort(StringView name,
      StringView description = {})
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IsConvertibleToString<DefaultT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:539,1
    - Dst: CreatePort<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:543,1
    - Dst: auto::second::setDefaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:547,1
    - Dst: T
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:547,1
    - Dst: IsConvertibleToString<DefaultT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:549,1
    - Dst: auto::second::setDefaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:551,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:551,1
    - Dst: auto::second::setDefaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:555,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - direction
    - name
    - ' default_value'
    - description
    argTypes:
    - PortDirection
    - StringView
    - DefaultT
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 535
    functionDepth: 1
    functionLinenumber: 535
    functionLinenumberEnd: 558
    functionName: BT::details::PortWithDefault
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - CreatePort<T>
    - string
    - IsConvertibleToString<DefaultT>
    - auto::second::setDefaultValue
    - T
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: "std::pair<std::string, PortInfo> PortWithDefault(PortDirection direction,
      StringView name, const DefaultT& default_value,\n                StringView
      description)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: IsConvertibleToString<DefaultT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:539,1
    - Dst: CreatePort<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:543,1
    - Dst: auto::second::setDefaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:547,1
    - Dst: T
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:547,1
    - Dst: IsConvertibleToString<DefaultT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:549,1
    - Dst: auto::second::setDefaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:551,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:551,1
    - Dst: auto::second::setDefaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:555,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 4
    argNames:
    - direction
    - name
    - ' default_value'
    - description
    argTypes:
    - PortDirection
    - StringView
    - DefaultT
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 558
      start: 535
    functionDepth: 1
    functionLinenumber: 535
    functionLinenumberEnd: 558
    functionName: BT::details::PortWithDefault
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - CreatePort<T>
    - string
    - IsConvertibleToString<DefaultT>
    - auto::second::setDefaultValue
    - T
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: "std::pair<std::string, PortInfo> PortWithDefault(PortDirection direction,
      StringView name, const DefaultT& default_value,\n                StringView
      description)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: details::PortWithDefault<T, DefaultT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - name
    - ' default_value'
    - description
    argTypes:
    - StringView
    - DefaultT
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 575
      start: 570
    functionDepth: 0
    functionLinenumber: 570
    functionLinenumberEnd: 575
    functionName: BT::InputPort
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached:
    - details::PortWithDefault<T, DefaultT>
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: std::pair<std::string, PortInfo> InputPort(StringView name, const DefaultT&
      default_value, StringView description)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: details::PortWithDefault<T, DefaultT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:588,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - name
    - ' default_value'
    - description
    argTypes:
    - StringView
    - DefaultT
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 590
      start: 585
    functionDepth: 0
    functionLinenumber: 585
    functionLinenumberEnd: 590
    functionName: BT::BidirectionalPort
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 0
    functionsReached:
    - details::PortWithDefault<T, DefaultT>
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: std::pair<std::string, PortInfo> BidirectionalPort(StringView name,
      const DefaultT& default_value, StringView description)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: StringView::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:604,1
    - Dst: StringView::front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:604,1
    - Dst: StringView::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:604,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:606,1
    - Dst: BT::CreatePort
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:609,1
    - Dst: auto::second::setDefaultValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:610,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 3
    argNames:
    - name
    - default_value
    - description
    argTypes:
    - StringView
    - StringView
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 600
    functionDepth: 3
    functionLinenumber: 600
    functionLinenumberEnd: 612
    functionName: BT::OutputPort
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 1
    functionsReached:
    - StringView::back
    - StringView::empty
    - LogicError
    - StringView::front
    - auto::second::setDefaultValue
    - BT::CreatePort
    linkageType: ''
    returnType: std::pair<std::string, PortInfo>
    signature: "std::pair<std::string, PortInfo> OutputPort(StringView name,\n                                                                 StringView
      default_value,\n                                                                 StringView
      description)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: KeepRunning::providedPorts
      Src: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h:648,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 649
      start: 645
    functionDepth: 1
    functionLinenumber: 645
    functionLinenumberEnd: 649
    functionName: BT::getProvidedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 4
    functionsReached:
    - KeepRunning::providedPorts
    linkageType: ''
    returnType: PortsList
    signature: PortsList getProvidedPorts(enable_if<has_static_method_providedPorts<T>>
      = nullptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 656
      start: 652
    functionDepth: 0
    functionLinenumber: 652
    functionLinenumberEnd: 656
    functionName: BT::getProvidedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: PortsList
    signature: PortsList getProvidedPorts(enable_if_not<has_static_method_providedPorts<T>>
      = nullptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - message
    argTypes:
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: BT::BehaviorTreeException::BehaviorTreeException
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached:
    - static_cast<std::string>
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeException(std::string_view message)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: BT::BehaviorTreeException::BehaviorTreeException
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached:
    - StrCat
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeException(const SV&... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: BT::BehaviorTreeException::what
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached:
    - c_str
    linkageType: ''
    returnType: char
    signature: char * what() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - message
    argTypes:
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: BT::LogicError::LogicError
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LogicError(std::string_view message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: BT::LogicError::LogicError
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LogicError(const SV&... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - message
    argTypes:
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 64
    functionName: BT::RuntimeError::RuntimeError
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RuntimeError(std::string_view message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: BT::RuntimeError::RuntimeError
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RuntimeError(const SV&... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::NodeExecutionError::formatMessage
      Src: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h:85,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - failed_node
    - ' original_message'
    argTypes:
    - TickBacktraceEntry
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 88
    functionName: BT::NodeExecutionError::NodeExecutionError
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached:
    - BT::NodeExecutionError::formatMessage
    - std::move
    linkageType: ''
    returnType: void
    signature: void NodeExecutionError(TickBacktraceEntry failed_node, const std::string&
      original_message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: '& failedNode() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TickBacktraceEntry
    signature: TickBacktraceEntry & failedNode() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: '& originalMessage() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & originalMessage() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' node'
    - ' original_msg'
    argTypes:
    - TickBacktraceEntry
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 110
    functionName: BT::NodeExecutionError::formatMessage
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 1
    functionsReached:
    - StrCat
    linkageType: ''
    returnType: std::string
    signature: "std::string formatMessage(const TickBacktraceEntry& node,\n                                   const
      std::string& original_msg)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - message
    argTypes:
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 30
    functionName: BT::BehaviorTreeException::BehaviorTreeException
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached:
    - static_cast<std::string>
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeException(std::string_view message)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: BT::BehaviorTreeException::BehaviorTreeException
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached:
    - StrCat
    linkageType: ''
    returnType: void
    signature: void BehaviorTreeException(const SV&... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 39
    functionName: BT::BehaviorTreeException::what
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached:
    - c_str
    linkageType: ''
    returnType: char
    signature: char * what() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - message
    argTypes:
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: BT::LogicError::LogicError
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LogicError(std::string_view message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 55
    functionName: BT::LogicError::LogicError
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LogicError(const SV&... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - message
    argTypes:
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 64
    functionName: BT::RuntimeError::RuntimeError
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RuntimeError(std::string_view message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: BT::RuntimeError::RuntimeError
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RuntimeError(const SV&... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::NodeExecutionError::formatMessage
      Src: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h:85,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - failed_node
    - ' original_message'
    argTypes:
    - TickBacktraceEntry
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 84
    functionDepth: 1
    functionLinenumber: 84
    functionLinenumberEnd: 88
    functionName: BT::NodeExecutionError::NodeExecutionError
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached:
    - BT::NodeExecutionError::formatMessage
    - std::move
    linkageType: ''
    returnType: void
    signature: void NodeExecutionError(TickBacktraceEntry failed_node, const std::string&
      original_message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 91
    functionDepth: 0
    functionLinenumber: 91
    functionLinenumberEnd: 94
    functionName: '& failedNode() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TickBacktraceEntry
    signature: TickBacktraceEntry & failedNode() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 99
    functionName: '& originalMessage() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & originalMessage() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' node'
    - ' original_msg'
    argTypes:
    - TickBacktraceEntry
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 110
    functionName: BT::NodeExecutionError::formatMessage
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    functionUses: 2
    functionsReached:
    - StrCat
    linkageType: ''
    returnType: std::string
    signature: "std::string formatMessage(const TickBacktraceEntry& node,\n                                   const
      std::string& original_msg)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: ~EntryUpdatedAction() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/updated_action.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~EntryUpdatedAction() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: BT::EntryUpdatedAction::EntryUpdatedAction
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/updated_action.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EntryUpdatedAction(const EntryUpdatedAction&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: '& operator=(const EntryUpdatedAction&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/updated_action.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EntryUpdatedAction
    signature: EntryUpdatedAction & operator=(const EntryUpdatedAction&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: BT::EntryUpdatedAction::EntryUpdatedAction
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/updated_action.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EntryUpdatedAction(EntryUpdatedAction&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: '& operator=(EntryUpdatedAction&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/updated_action.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EntryUpdatedAction
    signature: EntryUpdatedAction & operator=(EntryUpdatedAction&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<BT::Any>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/updated_action.h:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: BT::EntryUpdatedAction::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/updated_action.h
    functionUses: 0
    functionsReached:
    - InputPort<BT::Any>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: ~EntryUpdatedAction() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/updated_action.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~EntryUpdatedAction() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: BT::EntryUpdatedAction::EntryUpdatedAction
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/updated_action.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EntryUpdatedAction(const EntryUpdatedAction&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: '& operator=(const EntryUpdatedAction&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/updated_action.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EntryUpdatedAction
    signature: EntryUpdatedAction & operator=(const EntryUpdatedAction&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: BT::EntryUpdatedAction::EntryUpdatedAction
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/updated_action.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EntryUpdatedAction(EntryUpdatedAction&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: '& operator=(EntryUpdatedAction&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/updated_action.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EntryUpdatedAction
    signature: EntryUpdatedAction & operator=(EntryUpdatedAction&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<BT::Any>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/updated_action.h:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: BT::EntryUpdatedAction::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/updated_action.h
    functionUses: 0
    functionsReached:
    - InputPort<BT::Any>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:39,1
    - Dst: BT::ScriptNode::loadExecutor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 42
    functionName: BT::ScriptNode::ScriptNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    - BT::ScriptNode::loadExecutor
    linkageType: ''
    returnType: void
    signature: void ScriptNode(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: BT::ScriptNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h
    functionUses: 0
    functionsReached:
    - InputPort<std::string>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::ScriptNode::loadExecutor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:52,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:55,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:55,1
    - Dst: _executor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 50
    functionDepth: 1
    functionLinenumber: 50
    functionLinenumberEnd: 59
    functionName: BT::ScriptNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h
    functionUses: 0
    functionsReached:
    - config
    - BT::ScriptNode::loadExecutor
    - _executor
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:64,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:66,1
    - Dst: ParseScript
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:72,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:75,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:75,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:79,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 82
    functionName: BT::ScriptNode::loadExecutor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h
    functionUses: 2
    functionsReached:
    - ParseScript
    - auto::value
    - auto::error
    - getInput
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void loadExecutor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:39,1
    - Dst: BT::ScriptNode::loadExecutor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 36
    functionDepth: 2
    functionLinenumber: 36
    functionLinenumberEnd: 42
    functionName: BT::ScriptNode::ScriptNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    - BT::ScriptNode::loadExecutor
    linkageType: ''
    returnType: void
    signature: void ScriptNode(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:46,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 47
    functionName: BT::ScriptNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h
    functionUses: 0
    functionsReached:
    - InputPort<std::string>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::ScriptNode::loadExecutor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:52,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:55,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:55,1
    - Dst: _executor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 50
    functionDepth: 2
    functionLinenumber: 50
    functionLinenumberEnd: 59
    functionName: BT::ScriptNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h
    functionUses: 0
    functionsReached:
    - config
    - BT::ScriptNode::loadExecutor
    - _executor
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:64,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:66,1
    - Dst: ParseScript
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:72,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:75,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:75,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h:79,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 61
    functionDepth: 1
    functionLinenumber: 61
    functionLinenumberEnd: 82
    functionName: BT::ScriptNode::loadExecutor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h
    functionUses: 4
    functionsReached:
    - ParseScript
    - auto::value
    - auto::error
    - getInput
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void loadExecutor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:31,1
    - Dst: BT::ScriptCondition::loadExecutor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 28
    functionDepth: 1
    functionLinenumber: 28
    functionLinenumberEnd: 33
    functionName: BT::ScriptCondition::ScriptCondition
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    - BT::ScriptCondition::loadExecutor
    linkageType: ''
    returnType: void
    signature: void ScriptCondition(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionName: BT::ScriptCondition::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h
    functionUses: 0
    functionsReached:
    - InputPort
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ScriptCondition::loadExecutor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:44,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:46,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:46,1
    - Dst: _executor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:47,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 1
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: BT::ScriptCondition::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h
    functionUses: 0
    functionsReached:
    - config
    - auto::cast
    - BT::ScriptCondition::loadExecutor
    - _executor
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:54,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:56,1
    - Dst: ParseScript
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:62,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:65,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:65,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:69,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 72
    functionName: BT::ScriptCondition::loadExecutor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h
    functionUses: 2
    functionsReached:
    - ParseScript
    - auto::value
    - auto::error
    - getInput
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void loadExecutor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:31,1
    - Dst: BT::ScriptCondition::loadExecutor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:32,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 28
    functionDepth: 2
    functionLinenumber: 28
    functionLinenumberEnd: 33
    functionName: BT::ScriptCondition::ScriptCondition
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    - BT::ScriptCondition::loadExecutor
    linkageType: ''
    returnType: void
    signature: void ScriptCondition(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:37,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionName: BT::ScriptCondition::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h
    functionUses: 0
    functionsReached:
    - InputPort
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ScriptCondition::loadExecutor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:44,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:46,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:46,1
    - Dst: _executor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:47,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 42
    functionDepth: 2
    functionLinenumber: 42
    functionLinenumberEnd: 49
    functionName: BT::ScriptCondition::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h
    functionUses: 0
    functionsReached:
    - config
    - auto::cast
    - BT::ScriptCondition::loadExecutor
    - _executor
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:54,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:56,1
    - Dst: ParseScript
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:62,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:65,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:65,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h:69,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 72
    functionName: BT::ScriptCondition::loadExecutor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h
    functionUses: 4
    functionsReached:
    - ParseScript
    - auto::value
    - auto::error
    - getInput
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void loadExecutor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 43
    functionName: BT::SetBlackboardNode::SetBlackboardNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void SetBlackboardNode(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:47,1
    - Dst: BidirectionalPort
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: BT::SetBlackboardNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h
    functionUses: 0
    functionsReached:
    - BidirectionalPort
    - InputPort
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:56,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:58,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:61,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:61,1
    - Dst: BT::Any::Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:64,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:67,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:67,1
    - Dst: isBlackboardPointer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:69,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:71,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:73,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:73,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:77,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:81,1
    - Dst: createEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:81,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:82,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:82,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:89,1
    - Dst: BT::Any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:92,1
    - Dst: std::shared_ptr::info::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:97,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:97,1
    - Dst: BT::Any::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:97,1
    - Dst: std::shared_ptr::info::parseString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:101,1
    - Dst: BT::Any::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:101,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:105,1
    - Dst: BT::Any::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:105,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:106,1
    - Dst: std::shared_ptr::info::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:106,1
    - Dst: what
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:107,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:111,1
    - Dst: set
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:111,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 53
    functionDepth: 3
    functionLinenumber: 53
    functionLinenumberEnd: 114
    functionName: BT::SetBlackboardNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h
    functionUses: 0
    functionsReached:
    - BT::Any::cast
    - config
    - BT::Any::Any
    - string
    - set
    - BT::Any::empty
    - RuntimeError
    - what
    - isBlackboardPointer
    - at
    - BT::Any::isString
    - createEntry
    - typeid
    - BT::demangle
    - getInput
    - LogicError
    - std::shared_ptr::info::type
    - std::shared_ptr::info::parseString
    - getEntry
    - BT::Blackboard::getAny
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 43
    functionName: BT::SetBlackboardNode::SetBlackboardNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void SetBlackboardNode(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:47,1
    - Dst: BidirectionalPort
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 50
    functionName: BT::SetBlackboardNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h
    functionUses: 0
    functionsReached:
    - BidirectionalPort
    - InputPort
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:56,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:58,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:61,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:61,1
    - Dst: BT::Any::Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:64,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:67,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:67,1
    - Dst: isBlackboardPointer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:69,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:71,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:73,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:73,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:77,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:81,1
    - Dst: createEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:81,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:82,1
    - Dst: getEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:82,1
    - Dst: BT::Blackboard::getAny
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:89,1
    - Dst: BT::Any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:92,1
    - Dst: std::shared_ptr::info::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:97,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:97,1
    - Dst: BT::Any::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:97,1
    - Dst: std::shared_ptr::info::parseString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:101,1
    - Dst: BT::Any::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:101,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:105,1
    - Dst: BT::Any::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:105,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:106,1
    - Dst: std::shared_ptr::info::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:106,1
    - Dst: what
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:107,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:111,1
    - Dst: set
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h:111,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 27
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 53
    functionDepth: 3
    functionLinenumber: 53
    functionLinenumberEnd: 114
    functionName: BT::SetBlackboardNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h
    functionUses: 0
    functionsReached:
    - BT::Any::cast
    - config
    - BT::Any::Any
    - string
    - set
    - BT::Any::empty
    - RuntimeError
    - what
    - isBlackboardPointer
    - at
    - BT::Any::isString
    - createEntry
    - typeid
    - BT::demangle
    - getInput
    - LogicError
    - std::shared_ptr::info::type
    - std::shared_ptr::info::parseString
    - getEntry
    - BT::Blackboard::getAny
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/always_success_node.h:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: BT::AlwaysSuccessNode::AlwaysSuccessNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/always_success_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void AlwaysSuccessNode(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionName: BT::AlwaysSuccessNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/always_success_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/always_success_node.h:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: BT::AlwaysSuccessNode::AlwaysSuccessNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/always_success_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void AlwaysSuccessNode(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionName: BT::AlwaysSuccessNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/always_success_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: BT::PopFromQueue::PopFromQueue
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PopFromQueue(const std::string& name, const NodeConfig& config)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:66,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:71,1
    - Dst: front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:75,1
    - Dst: pop_front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:76,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:77,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 81
    functionName: BT::PopFromQueue::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp
    functionUses: 0
    functionsReached:
    - front
    - getInput
    - empty
    - pop_front
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::shared_ptr<ProtectedQueue<T>>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:85,1
    - Dst: OutputPort<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionName: BT::PopFromQueue::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp
    functionUses: 0
    functionsReached:
    - OutputPort<T>
    - InputPort<std::shared_ptr<ProtectedQueue<T>>>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: BT::QueueSize::QueueSize
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void QueueSize(const std::string& name, const NodeConfig& config)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:114,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:119,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:123,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:123,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 127
    functionName: BT::QueueSize::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp
    functionUses: 0
    functionsReached:
    - empty
    - getInput
    - setOutput
    - size
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::shared_ptr<ProtectedQueue<T>>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:131,1
    - Dst: OutputPort<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: BT::QueueSize::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp
    functionUses: 0
    functionsReached:
    - OutputPort<int>
    - InputPort<std::shared_ptr<ProtectedQueue<T>>>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 61
    functionName: BT::PopFromQueue::PopFromQueue
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PopFromQueue(const std::string& name, const NodeConfig& config)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:66,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:71,1
    - Dst: front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:75,1
    - Dst: pop_front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:76,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:77,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 81
    functionName: BT::PopFromQueue::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp
    functionUses: 0
    functionsReached:
    - front
    - getInput
    - empty
    - pop_front
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::shared_ptr<ProtectedQueue<T>>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:85,1
    - Dst: OutputPort<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:85,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 89
    functionName: BT::PopFromQueue::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp
    functionUses: 0
    functionsReached:
    - OutputPort<T>
    - InputPort<std::shared_ptr<ProtectedQueue<T>>>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: BT::QueueSize::QueueSize
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void QueueSize(const std::string& name, const NodeConfig& config)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:114,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:119,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:123,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:123,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 127
    functionName: BT::QueueSize::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp
    functionUses: 0
    functionsReached:
    - empty
    - getInput
    - setOutput
    - size
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::shared_ptr<ProtectedQueue<T>>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:131,1
    - Dst: OutputPort<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: BT::QueueSize::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp
    functionUses: 0
    functionsReached:
    - OutputPort<int>
    - InputPort<std::shared_ptr<ProtectedQueue<T>>>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/always_failure_node.h:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: BT::AlwaysFailureNode::AlwaysFailureNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/always_failure_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void AlwaysFailureNode(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionName: BT::AlwaysFailureNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/always_failure_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/always_failure_node.h:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 28
    functionName: BT::AlwaysFailureNode::AlwaysFailureNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/always_failure_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void AlwaysFailureNode(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionName: BT::AlwaysFailureNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/always_failure_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: BT::UnsetBlackboardNode::UnsetBlackboardNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void UnsetBlackboardNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionName: BT::UnsetBlackboardNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h
    functionUses: 0
    functionsReached:
    - InputPort<std::string>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h:40,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h:42,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h:44,1
    - Dst: unset
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 46
    functionName: BT::UnsetBlackboardNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h
    functionUses: 0
    functionsReached:
    - unset
    - config
    - getInput
    - RuntimeError
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: BT::UnsetBlackboardNode::UnsetBlackboardNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void UnsetBlackboardNode(const std::string& name, const NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 34
    functionName: BT::UnsetBlackboardNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h
    functionUses: 0
    functionsReached:
    - InputPort<std::string>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h:40,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h:42,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h:44,1
    - Dst: unset
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h:44,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 46
    functionName: BT::UnsetBlackboardNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h
    functionUses: 0
    functionsReached:
    - unset
    - config
    - getInput
    - RuntimeError
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TestNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: BT::TestNode::TestNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TestNode(const TestNode& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TestNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: '& operator=(const TestNode& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TestNode
    signature: TestNode & operator=(const TestNode& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TestNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: BT::TestNode::TestNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TestNode(TestNode&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TestNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: '& operator=(TestNode&& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TestNode
    signature: TestNode & operator=(TestNode&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionName: BT::TestNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TestNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 95
    functionDepth: 0
    functionLinenumber: 95
    functionLinenumberEnd: 95
    functionName: BT::TestNode::TestNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TestNode(const TestNode& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TestNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 96
    functionName: '& operator=(const TestNode& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TestNode
    signature: TestNode & operator=(const TestNode& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TestNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 98
    functionName: BT::TestNode::TestNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TestNode(TestNode&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - TestNode
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 99
    functionDepth: 0
    functionLinenumber: 99
    functionLinenumberEnd: 99
    functionName: '& operator=(TestNode&& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TestNode
    signature: TestNode & operator=(TestNode&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 101
    functionDepth: 0
    functionLinenumber: 101
    functionLinenumberEnd: 104
    functionName: BT::TestNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/test_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: halt
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h:23,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 21
    functionDepth: 0
    functionLinenumber: 21
    functionLinenumberEnd: 24
    functionName: ~SleepNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h
    functionUses: 0
    functionsReached:
    - halt
    linkageType: ''
    returnType: void
    signature: void ~SleepNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 26
    functionName: BT::SleepNode::SleepNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SleepNode(const SleepNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 27
    functionName: '& operator=(const SleepNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SleepNode
    signature: SleepNode & operator=(const SleepNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 28
    functionName: BT::SleepNode::SleepNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SleepNode(SleepNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 29
    functionName: '& operator=(SleepNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SleepNode
    signature: SleepNode & operator=(SleepNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<unsigned>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: BT::SleepNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h
    functionUses: 0
    functionsReached:
    - InputPort<unsigned>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: halt
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h:23,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 21
    functionDepth: 0
    functionLinenumber: 21
    functionLinenumberEnd: 24
    functionName: ~SleepNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h
    functionUses: 0
    functionsReached:
    - halt
    linkageType: ''
    returnType: void
    signature: void ~SleepNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 26
    functionName: BT::SleepNode::SleepNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SleepNode(const SleepNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 27
    functionName: '& operator=(const SleepNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SleepNode
    signature: SleepNode & operator=(const SleepNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 28
    functionName: BT::SleepNode::SleepNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SleepNode(SleepNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 29
    functionName: '& operator=(SleepNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SleepNode
    signature: SleepNode & operator=(SleepNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<unsigned>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: BT::SleepNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h
    functionUses: 0
    functionsReached:
    - InputPort<unsigned>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - type
    argTypes:
    - BT::NodeType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 11
    functionDepth: 0
    functionLinenumber: 11
    functionLinenumberEnd: 29
    functionName: BT::convertToFlatbuffers
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Serialization::NodeType
    signature: Serialization::NodeType convertToFlatbuffers(BT::NodeType type)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - type
    argTypes:
    - BT::NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 46
    functionName: BT::convertToFlatbuffers
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Serialization::NodeStatus
    signature: Serialization::NodeStatus convertToFlatbuffers(BT::NodeStatus type)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - direction
    argTypes:
    - BT::PortDirection
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 60
    functionName: BT::convertToFlatbuffers
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Serialization::PortDirection
    signature: Serialization::PortDirection convertToFlatbuffers(BT::PortDirection
      direction)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:67,1
    - Dst: rootNode
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:67,1
    - Dst: dynamic_cast<BT::ControlNode*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:69,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:71,1
    - Dst: auto::children
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:71,1
    - Dst: auto::children
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:72,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:74,1
    - Dst: UID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:74,1
    - Dst: dynamic_cast<BT::DecoratorNode*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:77,1
    - Dst: auto::child
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:79,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:80,1
    - Dst: UID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:80,1
    - Dst: const_cast<BT::TreeNode const&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:84,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:88,1
    - Dst: Serialization::CreatePortConfigDirect
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:88,1
    - Dst: first::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:88,1
    - Dst: second::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:89,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:93,1
    - Dst: Serialization::CreatePortConfigDirect
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:93,1
    - Dst: first::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:93,1
    - Dst: second::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:94,1
    - Dst: Serialization::CreateTreeNode
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:97,1
    - Dst: UID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:98,1
    - Dst: CreateVector
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:98,1
    - Dst: BT::convertToFlatbuffers
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:99,1
    - Dst: status
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:99,1
    - Dst: CreateString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:99,1
    - Dst: name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:99,1
    - Dst: CreateString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:100,1
    - Dst: registrationName
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:100,1
    - Dst: CreateVector
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:101,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:103,1
    - Dst: Serialization::CreatePortModel
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:117,1
    - Dst: CreateString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:118,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:118,1
    - Dst: BT::convertToFlatbuffers
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:119,1
    - Dst: direction
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:119,1
    - Dst: CreateString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:120,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:120,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:120,1
    - Dst: CreateString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:121,1
    - Dst: description
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:121,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:122,1
    - Dst: Serialization::CreateNodeModel
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:125,1
    - Dst: CreateString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:126,1
    - Dst: registration_ID::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:126,1
    - Dst: BT::convertToFlatbuffers
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:127,1
    - Dst: CreateVector
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:127,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:129,1
    - Dst: Serialization::CreateBehaviorTree
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:132,1
    - Dst: rootNode
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:133,1
    - Dst: CreateVector
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:133,1
    - Dst: CreateVector
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:134,1
    - Dst: Finish
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:136,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 2
    argNames:
    - ' builder'
    - ' tree'
    argTypes:
    - flatbuffers::FlatBufferBuilder
    - BT::Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 137
    functionName: BT::CreateFlatbuffersBehaviorTree
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h
    functionUses: 0
    functionsReached:
    - UID
    - Serialization::CreatePortModel
    - description
    - std::vector::reserve
    - auto::children
    - registration_ID::c_str
    - second::c_str
    - Serialization::CreateNodeModel
    - dynamic_cast<BT::DecoratorNode*>
    - dynamic_cast<BT::ControlNode*>
    - direction
    - type
    - first::c_str
    - BT::convertToFlatbuffers
    - auto::child
    - rootNode
    - const_cast<BT::TreeNode const&>
    - BT::applyRecursiveVisitor
    - Serialization::CreateTreeNode
    - c_str
    - registrationName
    - Serialization::CreateBehaviorTree
    - CreateString
    - BT::demangle
    - status
    - Finish
    - name
    - CreateVector
    - std::vector::push_back
    - Serialization::CreatePortConfigDirect
    linkageType: ''
    returnType: void
    signature: "void CreateFlatbuffersBehaviorTree(flatbuffers::FlatBufferBuilder&
      builder,\n                                          const BT::Tree& tree)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: duration_cast<microseconds>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:147,1
    - Dst: flatbuffers::WriteScalar
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:151,1
    - Dst: flatbuffers::WriteScalar
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:152,1
    - Dst: flatbuffers::WriteScalar
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:153,1
    - Dst: flatbuffers::WriteScalar
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:155,1
    - Dst: static_cast<int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:156,1
    - Dst: BT::convertToFlatbuffers
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:156,1
    - Dst: flatbuffers::WriteScalar
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:157,1
    - Dst: static_cast<int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:158,1
    - Dst: BT::convertToFlatbuffers
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - UID
    - timestamp
    - prev_status
    - status
    argTypes:
    - uint16_t
    - Duration
    - NodeStatus
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 161
    functionName: BT::SerializeTransition
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h
    functionUses: 0
    functionsReached:
    - static_cast<int8_t>
    - flatbuffers::WriteScalar
    - duration_cast<microseconds>
    - BT::convertToFlatbuffers
    linkageType: ''
    returnType: SerializedTransition
    signature: "SerializedTransition SerializeTransition(uint16_t UID, Duration timestamp,\n
      \                                               NodeStatus prev_status, NodeStatus
      status)"
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - type
    argTypes:
    - BT::NodeType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 11
    functionDepth: 0
    functionLinenumber: 11
    functionLinenumberEnd: 29
    functionName: BT::convertToFlatbuffers
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Serialization::NodeType
    signature: Serialization::NodeType convertToFlatbuffers(BT::NodeType type)
  - BBCount: 6
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 1
    argNames:
    - type
    argTypes:
    - BT::NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 46
    functionName: BT::convertToFlatbuffers
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Serialization::NodeStatus
    signature: Serialization::NodeStatus convertToFlatbuffers(BT::NodeStatus type)
  - BBCount: 4
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 1
    argNames:
    - direction
    argTypes:
    - BT::PortDirection
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 60
    functionName: BT::convertToFlatbuffers
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: Serialization::PortDirection
    signature: Serialization::PortDirection convertToFlatbuffers(BT::PortDirection
      direction)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::applyRecursiveVisitor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:67,1
    - Dst: rootNode
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:67,1
    - Dst: dynamic_cast<BT::ControlNode*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:69,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:71,1
    - Dst: auto::children
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:71,1
    - Dst: auto::children
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:72,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:74,1
    - Dst: UID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:74,1
    - Dst: dynamic_cast<BT::DecoratorNode*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:77,1
    - Dst: auto::child
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:79,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:80,1
    - Dst: UID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:80,1
    - Dst: const_cast<BT::TreeNode const&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:84,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:88,1
    - Dst: Serialization::CreatePortConfigDirect
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:88,1
    - Dst: first::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:88,1
    - Dst: second::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:89,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:93,1
    - Dst: Serialization::CreatePortConfigDirect
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:93,1
    - Dst: first::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:93,1
    - Dst: second::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:94,1
    - Dst: Serialization::CreateTreeNode
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:97,1
    - Dst: UID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:98,1
    - Dst: CreateVector
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:98,1
    - Dst: BT::convertToFlatbuffers
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:99,1
    - Dst: status
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:99,1
    - Dst: CreateString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:99,1
    - Dst: name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:99,1
    - Dst: CreateString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:100,1
    - Dst: registrationName
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:100,1
    - Dst: CreateVector
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:101,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:103,1
    - Dst: Serialization::CreatePortModel
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:117,1
    - Dst: CreateString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:118,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:118,1
    - Dst: BT::convertToFlatbuffers
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:119,1
    - Dst: direction
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:119,1
    - Dst: CreateString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:120,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:120,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:120,1
    - Dst: CreateString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:121,1
    - Dst: description
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:121,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:122,1
    - Dst: Serialization::CreateNodeModel
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:125,1
    - Dst: CreateString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:126,1
    - Dst: registration_ID::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:126,1
    - Dst: BT::convertToFlatbuffers
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:127,1
    - Dst: CreateVector
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:127,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:129,1
    - Dst: Serialization::CreateBehaviorTree
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:132,1
    - Dst: rootNode
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:133,1
    - Dst: CreateVector
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:133,1
    - Dst: CreateVector
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:134,1
    - Dst: Finish
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:136,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 2
    argNames:
    - ' builder'
    - ' tree'
    argTypes:
    - flatbuffers::FlatBufferBuilder
    - BT::Tree
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 62
    functionDepth: 2
    functionLinenumber: 62
    functionLinenumberEnd: 137
    functionName: BT::CreateFlatbuffersBehaviorTree
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h
    functionUses: 0
    functionsReached:
    - UID
    - Serialization::CreatePortModel
    - description
    - std::vector::reserve
    - auto::children
    - registration_ID::c_str
    - second::c_str
    - Serialization::CreateNodeModel
    - dynamic_cast<BT::DecoratorNode*>
    - dynamic_cast<BT::ControlNode*>
    - direction
    - type
    - first::c_str
    - BT::convertToFlatbuffers
    - auto::child
    - rootNode
    - const_cast<BT::TreeNode const&>
    - BT::applyRecursiveVisitor
    - Serialization::CreateTreeNode
    - c_str
    - registrationName
    - Serialization::CreateBehaviorTree
    - CreateString
    - BT::demangle
    - status
    - Finish
    - name
    - CreateVector
    - std::vector::push_back
    - Serialization::CreatePortConfigDirect
    linkageType: ''
    returnType: void
    signature: "void CreateFlatbuffersBehaviorTree(flatbuffers::FlatBufferBuilder&
      builder,\n                                          const BT::Tree& tree)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: duration_cast<microseconds>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:147,1
    - Dst: flatbuffers::WriteScalar
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:151,1
    - Dst: flatbuffers::WriteScalar
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:152,1
    - Dst: flatbuffers::WriteScalar
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:153,1
    - Dst: flatbuffers::WriteScalar
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:155,1
    - Dst: static_cast<int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:156,1
    - Dst: BT::convertToFlatbuffers
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:156,1
    - Dst: flatbuffers::WriteScalar
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:157,1
    - Dst: static_cast<int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:158,1
    - Dst: BT::convertToFlatbuffers
      Src: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h:158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - UID
    - timestamp
    - prev_status
    - status
    argTypes:
    - uint16_t
    - Duration
    - NodeStatus
    - NodeStatus
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 142
    functionDepth: 1
    functionLinenumber: 142
    functionLinenumberEnd: 161
    functionName: BT::SerializeTransition
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h
    functionUses: 0
    functionsReached:
    - static_cast<int8_t>
    - flatbuffers::WriteScalar
    - duration_cast<microseconds>
    - BT::convertToFlatbuffers
    linkageType: ''
    returnType: SerializedTransition
    signature: "SerializedTransition SerializeTransition(uint16_t UID, Duration timestamp,\n
      \                                               NodeStatus prev_status, NodeStatus
      status)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionName: BT::KeepRunningUntilFailureNode::KeepRunningUntilFailureNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void KeepRunningUntilFailureNode(const std::string& name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: setStatus
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h:46,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h:48,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h:53,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h:57,1
    - Dst: status
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 69
    functionName: BT::KeepRunningUntilFailureNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h
    functionUses: 0
    functionsReached:
    - setStatus
    - status
    - resetChild
    - executeTick
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus KeepRunningUntilFailureNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h:35,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 36
    functionName: BT::KeepRunningUntilFailureNode::KeepRunningUntilFailureNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void KeepRunningUntilFailureNode(const std::string& name)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: setStatus
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h:46,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h:48,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h:53,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h:57,1
    - Dst: status
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 69
    functionName: BT::KeepRunningUntilFailureNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h
    functionUses: 0
    functionsReached:
    - setStatus
    - status
    - resetChild
    - executeTick
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus KeepRunningUntilFailureNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_failure_node.h:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: BT::ForceFailureNode::ForceFailureNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_failure_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void ForceFailureNode(const std::string& name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setStatus
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_failure_node.h:42,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_failure_node.h:44,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_failure_node.h:46,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_failure_node.h:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 54
    functionName: BT::ForceFailureNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_failure_node.h
    functionUses: 0
    functionsReached:
    - setStatus
    - isStatusCompleted
    - resetChild
    - executeTick
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus ForceFailureNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_failure_node.h:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: BT::ForceFailureNode::ForceFailureNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_failure_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void ForceFailureNode(const std::string& name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setStatus
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_failure_node.h:42,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_failure_node.h:44,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_failure_node.h:46,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_failure_node.h:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 54
    functionName: BT::ForceFailureNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_failure_node.h
    functionUses: 0
    functionsReached:
    - setStatus
    - isStatusCompleted
    - resetChild
    - executeTick
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus ForceFailureNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: BT::ConsumeQueue::ConsumeQueue
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ConsumeQueue(const std::string& name, const NodeConfig& config)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:46,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:54,1
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:60,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:65,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:67,1
    - Dst: front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:69,1
    - Dst: pop_front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:70,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:71,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:73,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:74,1
    - Dst: std::unique_lock::lock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:75,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:84,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 95
    functionName: BT::ConsumeQueue::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h
    functionUses: 0
    functionsReached:
    - std::unique_lock::lock
    - front
    - setStatus
    - haltChild
    - getInput
    - executeTick
    - std::unique_lock::unlock
    - empty
    - pop_front
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::shared_ptr<ProtectedQueue<T>>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:99,1
    - Dst: OutputPort<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 103
    functionName: BT::ConsumeQueue::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h
    functionUses: 0
    functionsReached:
    - OutputPort<T>
    - InputPort<std::shared_ptr<ProtectedQueue<T>>>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 37
    functionName: BT::ConsumeQueue::ConsumeQueue
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ConsumeQueue(const std::string& name, const NodeConfig& config)
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:46,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:54,1
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:60,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:65,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:67,1
    - Dst: front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:69,1
    - Dst: pop_front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:70,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:71,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:73,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:74,1
    - Dst: std::unique_lock::lock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:75,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:84,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 30
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 95
    functionName: BT::ConsumeQueue::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h
    functionUses: 0
    functionsReached:
    - std::unique_lock::lock
    - front
    - setStatus
    - haltChild
    - getInput
    - executeTick
    - std::unique_lock::unlock
    - empty
    - pop_front
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::shared_ptr<ProtectedQueue<T>>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:99,1
    - Dst: OutputPort<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 103
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 103
    functionName: BT::ConsumeQueue::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h
    functionUses: 0
    functionsReached:
    - OutputPort<T>
    - InputPort<std::shared_ptr<ProtectedQueue<T>>>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::PreconditionNode::loadExecutor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 41
    functionDepth: 1
    functionLinenumber: 41
    functionLinenumberEnd: 45
    functionName: BT::PreconditionNode::PreconditionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 0
    functionsReached:
    - BT::PreconditionNode::loadExecutor
    linkageType: ''
    returnType: void
    signature: void PreconditionNode(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~PreconditionNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~PreconditionNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: BT::PreconditionNode::PreconditionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PreconditionNode(const PreconditionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& operator=(const PreconditionNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PreconditionNode
    signature: PreconditionNode & operator=(const PreconditionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: BT::PreconditionNode::PreconditionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PreconditionNode(PreconditionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: '& operator=(PreconditionNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PreconditionNode
    signature: PreconditionNode & operator=(PreconditionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:56,1
    - Dst: InputPort<NodeStatus>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 60
    functionName: BT::PreconditionNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 0
    functionsReached:
    - InputPort<std::string>
    - InputPort<NodeStatus>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BT::PreconditionNode::loadExecutor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:65,1
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:68,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:70,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:74,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:74,1
    - Dst: _executor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:76,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:83,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:84,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:86,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 90
    functionName: BT::PreconditionNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 0
    functionsReached:
    - config
    - isStatusCompleted
    - getInput
    - _executor
    - BT::PreconditionNode::loadExecutor
    - RuntimeError
    - executeTick
    - resetChild
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:95,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:97,1
    - Dst: ParseScript
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:103,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:106,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:106,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:110,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 113
    functionName: BT::PreconditionNode::loadExecutor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 2
    functionsReached:
    - ParseScript
    - auto::value
    - auto::error
    - getInput
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void loadExecutor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::PreconditionNode::loadExecutor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:44,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 41
    functionDepth: 2
    functionLinenumber: 41
    functionLinenumberEnd: 45
    functionName: BT::PreconditionNode::PreconditionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 0
    functionsReached:
    - BT::PreconditionNode::loadExecutor
    linkageType: ''
    returnType: void
    signature: void PreconditionNode(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~PreconditionNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~PreconditionNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: BT::PreconditionNode::PreconditionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PreconditionNode(const PreconditionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& operator=(const PreconditionNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PreconditionNode
    signature: PreconditionNode & operator=(const PreconditionNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: BT::PreconditionNode::PreconditionNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PreconditionNode(PreconditionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: '& operator=(PreconditionNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PreconditionNode
    signature: PreconditionNode & operator=(PreconditionNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:56,1
    - Dst: InputPort<NodeStatus>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:57,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 60
    functionName: BT::PreconditionNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 0
    functionsReached:
    - InputPort<std::string>
    - InputPort<NodeStatus>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BT::PreconditionNode::loadExecutor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:65,1
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:68,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:70,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:74,1
    - Dst: config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:74,1
    - Dst: _executor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:76,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:83,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:84,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:86,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 90
      start: 63
    functionDepth: 2
    functionLinenumber: 63
    functionLinenumberEnd: 90
    functionName: BT::PreconditionNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 0
    functionsReached:
    - config
    - isStatusCompleted
    - getInput
    - _executor
    - BT::PreconditionNode::loadExecutor
    - RuntimeError
    - executeTick
    - resetChild
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:95,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:97,1
    - Dst: ParseScript
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:103,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:106,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:106,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h:110,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 92
    functionDepth: 1
    functionLinenumber: 92
    functionLinenumberEnd: 113
    functionName: BT::PreconditionNode::loadExecutor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
    functionUses: 4
    functionsReached:
    - ParseScript
    - auto::value
    - auto::error
    - getInput
    - RuntimeError
    linkageType: ''
    returnType: void
    signature: void loadExecutor()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - milliseconds
    argTypes:
    - std::string
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 48
    functionName: BT::TimeoutNode::TimeoutNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void TimeoutNode(const std::string& name, unsigned milliseconds)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 57
    functionName: BT::TimeoutNode::TimeoutNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TimeoutNode(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cancelAll
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: ~TimeoutNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
    functionUses: 0
    functionsReached:
    - cancelAll
    linkageType: ''
    returnType: void
    signature: void ~TimeoutNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: BT::TimeoutNode::TimeoutNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TimeoutNode(const TimeoutNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: '& operator=(const TimeoutNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeoutNode
    signature: TimeoutNode & operator=(const TimeoutNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: BT::TimeoutNode::TimeoutNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TimeoutNode(TimeoutNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: '& operator=(TimeoutNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeoutNode
    signature: TimeoutNode & operator=(TimeoutNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<unsigned>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 73
    functionName: BT::TimeoutNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
    functionUses: 0
    functionsReached:
    - InputPort<unsigned>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h:47,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - milliseconds
    argTypes:
    - std::string
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 48
    functionName: BT::TimeoutNode::TimeoutNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void TimeoutNode(const std::string& name, unsigned milliseconds)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 57
    functionName: BT::TimeoutNode::TimeoutNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TimeoutNode(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cancelAll
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 62
    functionName: ~TimeoutNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
    functionUses: 0
    functionsReached:
    - cancelAll
    linkageType: ''
    returnType: void
    signature: void ~TimeoutNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: BT::TimeoutNode::TimeoutNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TimeoutNode(const TimeoutNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 65
    functionName: '& operator=(const TimeoutNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeoutNode
    signature: TimeoutNode & operator=(const TimeoutNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 66
    functionName: BT::TimeoutNode::TimeoutNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TimeoutNode(TimeoutNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 67
    functionName: '& operator=(TimeoutNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimeoutNode
    signature: TimeoutNode & operator=(TimeoutNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<unsigned>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 73
    functionName: BT::TimeoutNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
    functionUses: 0
    functionsReached:
    - InputPort<unsigned>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_success_node.h:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: BT::ForceSuccessNode::ForceSuccessNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_success_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void ForceSuccessNode(const std::string& name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setStatus
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_success_node.h:42,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_success_node.h:44,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_success_node.h:46,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_success_node.h:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 54
    functionName: BT::ForceSuccessNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_success_node.h
    functionUses: 0
    functionsReached:
    - setStatus
    - isStatusCompleted
    - resetChild
    - executeTick
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus ForceSuccessNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_success_node.h:31,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 32
    functionName: BT::ForceSuccessNode::ForceSuccessNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_success_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void ForceSuccessNode(const std::string& name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setStatus
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_success_node.h:42,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_success_node.h:44,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_success_node.h:46,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_success_node.h:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 54
    functionName: BT::ForceSuccessNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_success_node.h
    functionUses: 0
    functionsReached:
    - setStatus
    - isStatusCompleted
    - resetChild
    - executeTick
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus ForceSuccessNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: ~SubTreeNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SubTreeNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: BT::SubTreeNode::SubTreeNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SubTreeNode(const SubTreeNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& operator=(const SubTreeNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubTreeNode
    signature: SubTreeNode & operator=(const SubTreeNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: BT::SubTreeNode::SubTreeNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SubTreeNode(SubTreeNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: '& operator=(SubTreeNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubTreeNode
    signature: SubTreeNode & operator=(SubTreeNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ID'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: BT::SubTreeNode::setSubtreeID
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setSubtreeID(const std::string& ID)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: '& subtreeID() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & subtreeID() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: BT::SubTreeNode::type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeType
    signature: NodeType type() const override final
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: ~SubTreeNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SubTreeNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: BT::SubTreeNode::SubTreeNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SubTreeNode(const SubTreeNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& operator=(const SubTreeNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubTreeNode
    signature: SubTreeNode & operator=(const SubTreeNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: BT::SubTreeNode::SubTreeNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SubTreeNode(SubTreeNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: '& operator=(SubTreeNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SubTreeNode
    signature: SubTreeNode & operator=(SubTreeNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ID'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 69
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 69
    functionName: BT::SubTreeNode::setSubtreeID
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void setSubtreeID(const std::string& ID)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: '& subtreeID() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string & subtreeID() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: BT::SubTreeNode::type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NodeType
    signature: NodeType type() const override final
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionName: BT::RunOnceNode::RunOnceNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void RunOnceNode(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionName: BT::RunOnceNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h
    functionUses: 0
    functionsReached:
    - InputPort<bool>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getInput<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h:61,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h:63,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h:71,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h:72,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h:74,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h:78,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 81
    functionName: BT::RunOnceNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h
    functionUses: 0
    functionsReached:
    - setStatus
    - auto::value
    - isStatusCompleted
    - executeTick
    - resetChild
    - getInput<bool>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus RunOnceNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 39
    functionName: BT::RunOnceNode::RunOnceNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h
    functionUses: 0
    functionsReached:
    - setRegistrationID
    linkageType: ''
    returnType: void
    signature: void RunOnceNode(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h:43,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 47
    functionName: BT::RunOnceNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h
    functionUses: 0
    functionsReached:
    - InputPort<bool>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getInput<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h:61,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h:63,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h:71,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h:72,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h:74,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h:78,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 58
    functionDepth: 1
    functionLinenumber: 58
    functionLinenumberEnd: 81
    functionName: BT::RunOnceNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h
    functionUses: 0
    functionsReached:
    - setStatus
    - auto::value
    - isStatusCompleted
    - executeTick
    - resetChild
    - getInput<bool>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus RunOnceNode::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~RepeatNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/repeat_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RepeatNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: BT::RepeatNode::RepeatNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/repeat_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RepeatNode(const RepeatNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: '& operator=(const RepeatNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/repeat_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RepeatNode
    signature: RepeatNode & operator=(const RepeatNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: BT::RepeatNode::RepeatNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/repeat_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RepeatNode(RepeatNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: '& operator=(RepeatNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/repeat_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RepeatNode
    signature: RepeatNode & operator=(RepeatNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/repeat_node.h:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: BT::RepeatNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/repeat_node.h
    functionUses: 0
    functionsReached:
    - InputPort<int>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: ~RepeatNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/repeat_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RepeatNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: BT::RepeatNode::RepeatNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/repeat_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RepeatNode(const RepeatNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: '& operator=(const RepeatNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/repeat_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RepeatNode
    signature: RepeatNode & operator=(const RepeatNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: BT::RepeatNode::RepeatNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/repeat_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RepeatNode(RepeatNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: '& operator=(RepeatNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/repeat_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RepeatNode
    signature: RepeatNode & operator=(RepeatNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/repeat_node.h:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: BT::RepeatNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/repeat_node.h
    functionUses: 0
    functionsReached:
    - InputPort<int>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cancelAll
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 52
    functionName: ~DelayNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h
    functionUses: 0
    functionsReached:
    - cancelAll
    linkageType: ''
    returnType: void
    signature: void ~DelayNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: BT::DelayNode::DelayNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DelayNode(const DelayNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: '& operator=(const DelayNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DelayNode
    signature: DelayNode & operator=(const DelayNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: BT::DelayNode::DelayNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DelayNode(DelayNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: '& operator=(DelayNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DelayNode
    signature: DelayNode & operator=(DelayNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<unsigned>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 63
    functionName: BT::DelayNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h
    functionUses: 0
    functionsReached:
    - InputPort<unsigned>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cancelAll
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 52
    functionName: ~DelayNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h
    functionUses: 0
    functionsReached:
    - cancelAll
    linkageType: ''
    returnType: void
    signature: void ~DelayNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 54
    functionName: BT::DelayNode::DelayNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DelayNode(const DelayNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: '& operator=(const DelayNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DelayNode
    signature: DelayNode & operator=(const DelayNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: BT::DelayNode::DelayNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DelayNode(DelayNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: '& operator=(DelayNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: DelayNode
    signature: DelayNode & operator=(DelayNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<unsigned>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 63
    functionName: BT::DelayNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h
    functionUses: 0
    functionsReached:
    - InputPort<unsigned>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: ~InverterNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/inverter_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~InverterNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: BT::InverterNode::InverterNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/inverter_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void InverterNode(const InverterNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: '& operator=(const InverterNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/inverter_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: InverterNode
    signature: InverterNode & operator=(const InverterNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: BT::InverterNode::InverterNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/inverter_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void InverterNode(InverterNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: '& operator=(InverterNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/inverter_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: InverterNode
    signature: InverterNode & operator=(InverterNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: ~InverterNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/inverter_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~InverterNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: BT::InverterNode::InverterNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/inverter_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void InverterNode(const InverterNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: '& operator=(const InverterNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/inverter_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: InverterNode
    signature: InverterNode & operator=(const InverterNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: BT::InverterNode::InverterNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/inverter_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void InverterNode(InverterNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: '& operator=(InverterNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/inverter_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: InverterNode
    signature: InverterNode & operator=(InverterNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: ~EntryUpdatedDecorator() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/updated_decorator.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~EntryUpdatedDecorator() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: BT::EntryUpdatedDecorator::EntryUpdatedDecorator
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/updated_decorator.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EntryUpdatedDecorator(const EntryUpdatedDecorator&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: '& operator=(const EntryUpdatedDecorator&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/updated_decorator.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EntryUpdatedDecorator
    signature: EntryUpdatedDecorator & operator=(const EntryUpdatedDecorator&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: BT::EntryUpdatedDecorator::EntryUpdatedDecorator
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/updated_decorator.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EntryUpdatedDecorator(EntryUpdatedDecorator&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: '& operator=(EntryUpdatedDecorator&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/updated_decorator.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EntryUpdatedDecorator
    signature: EntryUpdatedDecorator & operator=(EntryUpdatedDecorator&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<BT::Any>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/updated_decorator.h:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: BT::EntryUpdatedDecorator::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/updated_decorator.h
    functionUses: 0
    functionsReached:
    - InputPort<BT::Any>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: ~EntryUpdatedDecorator() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/updated_decorator.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~EntryUpdatedDecorator() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 34
    functionName: BT::EntryUpdatedDecorator::EntryUpdatedDecorator
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/updated_decorator.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EntryUpdatedDecorator(const EntryUpdatedDecorator&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: '& operator=(const EntryUpdatedDecorator&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/updated_decorator.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EntryUpdatedDecorator
    signature: EntryUpdatedDecorator & operator=(const EntryUpdatedDecorator&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: BT::EntryUpdatedDecorator::EntryUpdatedDecorator
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/updated_decorator.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void EntryUpdatedDecorator(EntryUpdatedDecorator&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: '& operator=(EntryUpdatedDecorator&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/updated_decorator.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: EntryUpdatedDecorator
    signature: EntryUpdatedDecorator & operator=(EntryUpdatedDecorator&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<BT::Any>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/updated_decorator.h:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 42
    functionName: BT::EntryUpdatedDecorator::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/updated_decorator.h
    functionUses: 0
    functionsReached:
    - InputPort<BT::Any>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getRawPortValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:49,1
    - Dst: isBlackboardPointer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:50,1
    - Dst: convertFromString<SharedQueue<T>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: BT::LoopNode::LoopNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h
    functionUses: 0
    functionsReached:
    - isBlackboardPointer
    - convertFromString<SharedQueue<T>>
    - getRawPortValue
    linkageType: ''
    returnType: void
    signature: void LoopNode(const std::string& name, const NodeConfig& config)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: status
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:59,1
    - Dst: reset
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:62,1
    - Dst: std::make_shared<std::deque<T>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:67,1
    - Dst: AnyPtrLocked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:78,1
    - Dst: getLockedPortContent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:78,1
    - Dst: AnyPtrLocked::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:84,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:87,1
    - Dst: AnyPtrLocked::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:93,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:97,1
    - Dst: std::make_shared<std::deque<T>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:98,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:98,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:98,1
    - Dst: AnyPtrLocked::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:100,1
    - Dst: AnyPtrLocked::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:103,1
    - Dst: convertFromString<SharedQueue<T>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:104,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:108,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:114,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:116,1
    - Dst: front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:116,1
    - Dst: pop_front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:117,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:119,1
    - Dst: getInput<NodeStatus>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:125,1
    - Dst: status
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:128,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:130,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:133,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:136,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:138,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 146
    functionName: BT::LoopNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h
    functionUses: 0
    functionsReached:
    - begin
    - front
    - isStatusCompleted
    - empty
    - resetChild
    - pop_front
    - getInput<NodeStatus>
    - std::make_shared<std::deque<T>>
    - convertFromString<SharedQueue<T>>
    - executeTick
    - AnyPtrLocked::get
    - getLockedPortContent
    - setStatus
    - AnyPtrLocked
    - RuntimeError
    - end
    - std::move
    - auto::value
    - status
    - reset
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BidirectionalPort
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:152,1
    - Dst: InputPort<NodeStatus>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:153,1
    - Dst: OutputPort<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 157
    functionName: BT::LoopNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h
    functionUses: 0
    functionsReached:
    - InputPort<NodeStatus>
    - BidirectionalPort
    - OutputPort<T>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:163,1
    - Dst: std::make_shared<std::deque<int>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:164,1
    - Dst: SharedQueue::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:167,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:167,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 161
    functionDepth: 2
    functionLinenumber: 161
    functionLinenumberEnd: 170
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h
    functionUses: 28
    functionsReached:
    - std::make_shared<std::deque<int>>
    - SharedQueue::push_back
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: SharedQueue<int>
    signature: SharedQueue<int> convertFromString<SharedQueue<int>>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:175,1
    - Dst: std::make_shared<std::deque<bool>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:176,1
    - Dst: SharedQueue::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:179,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 173
    functionDepth: 2
    functionLinenumber: 173
    functionLinenumberEnd: 182
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h
    functionUses: 29
    functionsReached:
    - SharedQueue::push_back
    - std::make_shared<std::deque<bool>>
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: SharedQueue<bool>
    signature: SharedQueue<bool> convertFromString<SharedQueue<bool>>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:187,1
    - Dst: std::make_shared<std::deque<double>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:188,1
    - Dst: SharedQueue::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:191,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 185
    functionDepth: 2
    functionLinenumber: 185
    functionLinenumberEnd: 194
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h
    functionUses: 30
    functionsReached:
    - std::make_shared<std::deque<double>>
    - SharedQueue::push_back
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: SharedQueue<double>
    signature: SharedQueue<double> convertFromString<SharedQueue<double>>(StringView
      str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:200,1
    - Dst: std::make_shared<std::deque<std::string>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:201,1
    - Dst: SharedQueue::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:204,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:204,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 197
    functionDepth: 2
    functionLinenumber: 197
    functionLinenumberEnd: 207
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h
    functionUses: 31
    functionsReached:
    - std::make_shared<std::deque<std::string>>
    - SharedQueue::push_back
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: SharedQueue<std::string>
    signature: SharedQueue<std::string> convertFromString<SharedQueue<std::string>>(StringView
      str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getRawPortValue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:49,1
    - Dst: isBlackboardPointer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:50,1
    - Dst: convertFromString<SharedQueue<T>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:52,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 54
    functionName: BT::LoopNode::LoopNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h
    functionUses: 0
    functionsReached:
    - isBlackboardPointer
    - convertFromString<SharedQueue<T>>
    - getRawPortValue
    linkageType: ''
    returnType: void
    signature: void LoopNode(const std::string& name, const NodeConfig& config)
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: status
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:59,1
    - Dst: reset
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:62,1
    - Dst: std::make_shared<std::deque<T>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:67,1
    - Dst: AnyPtrLocked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:78,1
    - Dst: getLockedPortContent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:78,1
    - Dst: AnyPtrLocked::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:84,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:87,1
    - Dst: AnyPtrLocked::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:93,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:97,1
    - Dst: std::make_shared<std::deque<T>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:98,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:98,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:98,1
    - Dst: AnyPtrLocked::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:100,1
    - Dst: AnyPtrLocked::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:103,1
    - Dst: convertFromString<SharedQueue<T>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:104,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:108,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:114,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:116,1
    - Dst: front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:116,1
    - Dst: pop_front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:117,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:119,1
    - Dst: getInput<NodeStatus>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:125,1
    - Dst: status
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:128,1
    - Dst: setStatus
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:130,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:133,1
    - Dst: isStatusCompleted
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:136,1
    - Dst: resetChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:138,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 45
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 146
    functionName: BT::LoopNode::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h
    functionUses: 0
    functionsReached:
    - begin
    - front
    - isStatusCompleted
    - empty
    - resetChild
    - pop_front
    - getInput<NodeStatus>
    - std::make_shared<std::deque<T>>
    - convertFromString<SharedQueue<T>>
    - executeTick
    - AnyPtrLocked::get
    - getLockedPortContent
    - setStatus
    - AnyPtrLocked
    - RuntimeError
    - end
    - std::move
    - auto::value
    - status
    - reset
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BidirectionalPort
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:152,1
    - Dst: InputPort<NodeStatus>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:153,1
    - Dst: OutputPort<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 157
    functionName: BT::LoopNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h
    functionUses: 0
    functionsReached:
    - InputPort<NodeStatus>
    - BidirectionalPort
    - OutputPort<T>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:163,1
    - Dst: std::make_shared<std::deque<int>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:164,1
    - Dst: SharedQueue::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:167,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:167,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 161
    functionDepth: 2
    functionLinenumber: 161
    functionLinenumberEnd: 170
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h
    functionUses: 32
    functionsReached:
    - std::make_shared<std::deque<int>>
    - SharedQueue::push_back
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: SharedQueue<int>
    signature: SharedQueue<int> convertFromString<SharedQueue<int>>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:175,1
    - Dst: std::make_shared<std::deque<bool>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:176,1
    - Dst: SharedQueue::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:179,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 173
    functionDepth: 2
    functionLinenumber: 173
    functionLinenumberEnd: 182
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h
    functionUses: 33
    functionsReached:
    - SharedQueue::push_back
    - std::make_shared<std::deque<bool>>
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: SharedQueue<bool>
    signature: SharedQueue<bool> convertFromString<SharedQueue<bool>>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:187,1
    - Dst: std::make_shared<std::deque<double>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:188,1
    - Dst: SharedQueue::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:191,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:191,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 185
    functionDepth: 2
    functionLinenumber: 185
    functionLinenumberEnd: 194
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h
    functionUses: 34
    functionsReached:
    - std::make_shared<std::deque<double>>
    - SharedQueue::push_back
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: SharedQueue<double>
    signature: SharedQueue<double> convertFromString<SharedQueue<double>>(StringView
      str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:200,1
    - Dst: std::make_shared<std::deque<std::string>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:201,1
    - Dst: SharedQueue::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:204,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h:204,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 197
    functionDepth: 2
    functionLinenumber: 197
    functionLinenumberEnd: 207
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h
    functionUses: 35
    functionsReached:
    - std::make_shared<std::deque<std::string>>
    - SharedQueue::push_back
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: SharedQueue<std::string>
    signature: SharedQueue<std::string> convertFromString<SharedQueue<std::string>>(StringView
      str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: ~RetryNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RetryNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: BT::RetryNode::RetryNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RetryNode(const RetryNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: '& operator=(const RetryNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RetryNode
    signature: RetryNode & operator=(const RetryNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: BT::RetryNode::RetryNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RetryNode(RetryNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: '& operator=(RetryNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RetryNode
    signature: RetryNode & operator=(RetryNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: BT::RetryNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached:
    - InputPort<int>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - NTries
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: BT::RetryNodeTypo::RetryNodeTypo
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RetryNodeTypo(const std::string& name, int NTries)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: BT::RetryNodeTypo::RetryNodeTypo
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RetryNodeTypo(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: ~RetryNodeTypo() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RetryNodeTypo() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: BT::RetryNodeTypo::RetryNodeTypo
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RetryNodeTypo(const RetryNodeTypo&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: '& operator=(const RetryNodeTypo&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RetryNodeTypo
    signature: RetryNodeTypo & operator=(const RetryNodeTypo&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: BT::RetryNodeTypo::RetryNodeTypo
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RetryNodeTypo(RetryNodeTypo&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: '& operator=(RetryNodeTypo&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RetryNodeTypo
    signature: RetryNodeTypo & operator=(RetryNodeTypo&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 46
    functionName: ~RetryNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RetryNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: BT::RetryNode::RetryNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RetryNode(const RetryNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: '& operator=(const RetryNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RetryNode
    signature: RetryNode & operator=(const RetryNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: BT::RetryNode::RetryNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RetryNode(RetryNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: '& operator=(RetryNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RetryNode
    signature: RetryNode & operator=(RetryNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: BT::RetryNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached:
    - InputPort<int>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - NTries
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 76
    functionDepth: 0
    functionLinenumber: 76
    functionLinenumberEnd: 76
    functionName: BT::RetryNodeTypo::RetryNodeTypo
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RetryNodeTypo(const std::string& name, int NTries)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: BT::RetryNodeTypo::RetryNodeTypo
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RetryNodeTypo(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: ~RetryNodeTypo() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~RetryNodeTypo() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 83
    functionName: BT::RetryNodeTypo::RetryNodeTypo
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RetryNodeTypo(const RetryNodeTypo&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 84
    functionName: '& operator=(const RetryNodeTypo&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RetryNodeTypo
    signature: RetryNodeTypo & operator=(const RetryNodeTypo&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 85
    functionName: BT::RetryNodeTypo::RetryNodeTypo
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RetryNodeTypo(RetryNodeTypo&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 86
    functionName: '& operator=(RetryNodeTypo&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: RetryNodeTypo
    signature: RetryNodeTypo & operator=(RetryNodeTypo&&)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:33,1
    - Dst: enums::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:44,1
    - Dst: enums::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:45,1
    - Dst: cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:50,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - ' value'
    - ' env'
    argTypes:
    - Any
    - Environment
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 51
    functionName: BT::Ast::StringToDouble
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached:
    - enums::end
    - cast
    - enums::find
    linkageType: ''
    returnType: double
    signature: double StringToDouble(const Any& value, const Environment& env)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: ~ExprBase()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ExprBase()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - side
    - op_str
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionName: BT::Ast::ErrorNotInit
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached:
    - StrCat
    linkageType: ''
    returnType: std::string
    signature: std::string ErrorNotInit(const char* side, const char* op_str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: BT::Ast::ExprLiteral
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ExprLiteral(Any v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: BT::Ast::evaluate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Any
    signature: Any evaluate(Environment&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 85
    functionName: BT::Ast::ExprName
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ExprName(std::string n)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: enums::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:92,1
    - Dst: enums::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:93,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:95,1
    - Dst: vars::getAnyLocked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:99,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:102,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:102,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:104,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - ' env'
    argTypes:
    - Environment
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 105
    functionName: BT::Ast::evaluate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached:
    - vars::getAnyLocked
    - Any
    - auto::get
    - StrCat
    - RuntimeError
    - enums::find
    - enums::end
    linkageType: ''
    returnType: Any
    signature: Any evaluate(Environment& env) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - op
    - e
    argTypes:
    - op_t
    - expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 119
    functionName: BT::Ast::ExprUnaryArithmetic
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ExprUnaryArithmetic(op_t op, expr_ptr e)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:123,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:124,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:126,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:130,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:132,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:132,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:133,1
    - Dst: magic_enum::detail::reflected_min
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:133,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:135,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:137,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:137,1
    - Dst: static_cast<int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:137,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:139,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:139,1
    - Dst: static_cast<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:139,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:142,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:144,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:146,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - ' env'
    argTypes:
    - Environment
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 147
    functionName: BT::Ast::evaluate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 1
    functionsReached:
    - BT::Ast::evaluate
    - static_cast<int64_t>
    - auto::isString
    - Any
    - magic_enum::detail::reflected_max
    - RuntimeError
    - auto::isNumber
    - magic_enum::detail::reflected_min
    - auto::cast
    - static_cast<double>
    - static_cast<bool>
    linkageType: ''
    returnType: Any
    signature: Any evaluate(Environment& env) const override
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 194
    functionName: BT::Ast::opStr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * opStr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:199,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - lhs
    - op
    - rhs
    argTypes:
    - expr_ptr
    - op_t
    - expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: BT::Ast::ExprBinaryArithmetic
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ExprBinaryArithmetic(expr_ptr lhs, op_t op, expr_ptr rhs)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:204,1
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:205,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:207,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:209,1
    - Dst: BT::Ast::ErrorNotInit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:209,1
    - Dst: BT::Ast::opStr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:209,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:211,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:213,1
    - Dst: BT::Ast::ErrorNotInit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:213,1
    - Dst: BT::Ast::opStr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:213,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:216,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:216,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:218,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:219,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:224,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:226,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:228,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:230,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:239,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:240,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:244,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:244,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:246,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:246,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:248,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:248,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:255,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:264,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:265,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:269,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:269,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:271,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:271,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:278,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:283,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:283,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:285,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:285,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:285,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:287,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:287,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:288,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:288,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:289,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:289,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:291,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:291,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:291,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:295,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 60
    argCount: 1
    argNames:
    - ' env'
    argTypes:
    - Environment
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 299
    functionName: BT::Ast::evaluate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 2
    functionsReached:
    - BT::Ast::ErrorNotInit
    - BT::Ast::evaluate
    - BT::Ast::opStr
    - auto::isString
    - Any
    - RuntimeError
    - auto::empty
    - auto::isNumber
    - auto::cast
    - static_cast<double>
    linkageType: ''
    returnType: Any
    signature: Any evaluate(Environment& env) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:307,1
    - Dst: std::numeric_limits<float>::epsilon
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:307,1
    - Dst: std::abs
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' lv'
    - ' rv'
    argTypes:
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 314
    functionName: BT::Ast::IsSame
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached:
    - std::numeric_limits<float>::epsilon
    - std::abs
    - static_cast<double>
    linkageType: ''
    returnType: bool
    signature: bool IsSame(const T& lv, const T& rv)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - op
    argTypes:
    - op_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 346
    functionName: BT::Ast::opStr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * opStr(op_t op) const
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: BT::Ast::IsSame
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:357,1
    - Dst: BT::Ast::IsSame
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:361,1
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:384,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:385,1
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:387,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:389,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:391,1
    - Dst: BT::Ast::ErrorNotInit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:391,1
    - Dst: BT::Ast::opStr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:391,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:393,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:395,1
    - Dst: BT::Ast::ErrorNotInit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:395,1
    - Dst: BT::Ast::opStr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:395,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:399,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:399,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:401,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:402,1
    - Dst: SwitchImpl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:403,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:408,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:408,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:410,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:411,1
    - Dst: SwitchImpl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:412,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:417,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:417,1
    - Dst: BT::Ast::StringToDouble
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:419,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:420,1
    - Dst: SwitchImpl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:421,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:426,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:426,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:428,1
    - Dst: BT::Ast::StringToDouble
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:429,1
    - Dst: SwitchImpl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:430,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:437,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:437,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:439,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:439,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:440,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:440,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:444,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 61
    argCount: 1
    argNames:
    - ' env'
    argTypes:
    - Environment
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 351
    functionDepth: 2
    functionLinenumber: 351
    functionLinenumberEnd: 445
    functionName: BT::Ast::evaluate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 3
    functionsReached:
    - BT::Ast::ErrorNotInit
    - BT::Ast::IsSame
    - BT::Ast::evaluate
    - BT::demangle
    - auto::type
    - BT::Ast::opStr
    - SwitchImpl
    - BT::Ast::StringToDouble
    - size
    - auto::isString
    - Any
    - StrCat
    - RuntimeError
    - auto::empty
    - auto::isNumber
    - auto::cast
    linkageType: ''
    returnType: Any
    signature: Any evaluate(Environment& env) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:453,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:453,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:453,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - condition
    - then
    - else_
    argTypes:
    - expr_ptr
    - expr_ptr
    - expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 452
    functionDepth: 0
    functionLinenumber: 452
    functionLinenumberEnd: 454
    functionName: BT::Ast::ExprIf
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ExprIf(expr_ptr condition, expr_ptr then, expr_ptr else_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:458,1
    - Dst: isType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:459,1
    - Dst: cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:459,1
    - Dst: cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:460,1
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:463,1
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:467,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - ' env'
    argTypes:
    - Environment
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 456
    functionDepth: 1
    functionLinenumber: 456
    functionLinenumberEnd: 469
    functionName: BT::Ast::evaluate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 4
    functionsReached:
    - BT::Ast::evaluate
    - cast
    - isType
    linkageType: ''
    returnType: Any
    signature: Any evaluate(Environment& env) const override
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 484
    functionDepth: 0
    functionLinenumber: 484
    functionLinenumberEnd: 502
    functionName: BT::Ast::opStr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * opStr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:507,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:507,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - _lhs
    - op
    - _rhs
    argTypes:
    - expr_ptr
    - op_t
    - expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 506
    functionDepth: 0
    functionLinenumber: 506
    functionLinenumberEnd: 508
    functionName: BT::Ast::ExprAssignment
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ExprAssignment(expr_ptr _lhs, op_t op, expr_ptr _rhs)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<ExprName*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:512,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:512,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:515,1
    - Dst: vars::getEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:519,1
    - Dst: vars::createEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:525,1
    - Dst: PortInfo
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:525,1
    - Dst: vars::getEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:526,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:529,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:535,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:540,1
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:543,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:549,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:550,1
    - Dst: auto*::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:550,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:553,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:555,1
    - Dst: BT::Ast::ErrorNotInit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:555,1
    - Dst: BT::Ast::opStr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:555,1
    - Dst: auto*::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:562,1
    - Dst: auto::info::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:562,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:562,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:566,1
    - Dst: auto*::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:566,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:570,1
    - Dst: vars::entryInfo
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:571,1
    - Dst: auto*::converter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:573,1
    - Dst: converter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:575,1
    - Dst: auto*::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:577,1
    - Dst: BT::Ast::StringToDouble
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:579,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:580,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:584,1
    - Dst: errorPrefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:584,1
    - Dst: demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:587,1
    - Dst: auto*::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:587,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:588,1
    - Dst: auto::copyInto
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:595,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:599,1
    - Dst: errorPrefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:599,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:600,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:600,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:601,1
    - Dst: auto*::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:601,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:602,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:606,1
    - Dst: auto*::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:610,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:612,1
    - Dst: BT::Ast::ErrorNotInit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:612,1
    - Dst: BT::Ast::opStr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:612,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:618,1
    - Dst: Any::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:620,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:622,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:626,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:627,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:631,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:634,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:637,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:640,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:646,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:650,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:651,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:652,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:656,1
    - Dst: Any::copyInto
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:660,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:662,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 79
    argCount: 1
    argNames:
    - ' env'
    argTypes:
    - Environment
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 510
    functionDepth: 2
    functionLinenumber: 510
    functionLinenumberEnd: 664
    functionName: BT::Ast::evaluate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 5
    functionsReached:
    - get
    - auto*::empty
    - PortInfo
    - auto*::converter
    - auto*::type
    - auto::isNumber
    - vars::getEntry
    - auto::copyInto
    - Any
    - BT::Ast::ErrorNotInit
    - std::chrono::steady_clock::now
    - Any::cast
    - auto::isString
    - auto*::isString
    - RuntimeError
    - auto*::isNumber
    - auto::cast
    - errorPrefix
    - converter
    - BT::Ast::evaluate
    - BT::demangle
    - typeid
    - auto::type
    - vars::createEntry
    - BT::Ast::opStr
    - Any::isNumber
    - auto::info::type
    - BT::Ast::StringToDouble
    - LogicError
    - StrCat
    - demangle
    - dynamic_cast<ExprName*>
    - auto::empty
    - Any::copyInto
    - vars::entryInfo
    linkageType: ''
    returnType: Any
    signature: Any evaluate(Environment& env) const override
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:33,1
    - Dst: enums::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:44,1
    - Dst: enums::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:45,1
    - Dst: cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:50,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 2
    argNames:
    - ' value'
    - ' env'
    argTypes:
    - Any
    - Environment
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 31
    functionDepth: 1
    functionLinenumber: 31
    functionLinenumberEnd: 51
    functionName: BT::Ast::StringToDouble
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 2
    functionsReached:
    - enums::end
    - cast
    - enums::find
    linkageType: ''
    returnType: double
    signature: double StringToDouble(const Any& value, const Environment& env)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: ~ExprBase()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ExprBase()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:63,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - side
    - op_str
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionName: BT::Ast::ErrorNotInit
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 3
    functionsReached:
    - StrCat
    linkageType: ''
    returnType: std::string
    signature: std::string ErrorNotInit(const char* side, const char* op_str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 72
    functionName: BT::Ast::ExprLiteral
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ExprLiteral(Any v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 77
      start: 74
    functionDepth: 0
    functionLinenumber: 74
    functionLinenumberEnd: 77
    functionName: BT::Ast::evaluate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: Any
    signature: Any evaluate(Environment&) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:84,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - n
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 85
    functionName: BT::Ast::ExprName
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ExprName(std::string n)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: enums::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:92,1
    - Dst: enums::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:93,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:95,1
    - Dst: vars::getAnyLocked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:99,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:102,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:102,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:104,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - ' env'
    argTypes:
    - Environment
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 87
    functionDepth: 1
    functionLinenumber: 87
    functionLinenumberEnd: 105
    functionName: BT::Ast::evaluate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 5
    functionsReached:
    - vars::getAnyLocked
    - Any
    - auto::get
    - StrCat
    - RuntimeError
    - enums::find
    - enums::end
    linkageType: ''
    returnType: Any
    signature: Any evaluate(Environment& env) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - op
    - e
    argTypes:
    - op_t
    - expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 119
    functionName: BT::Ast::ExprUnaryArithmetic
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ExprUnaryArithmetic(op_t op, expr_ptr e)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:123,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:124,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:126,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:130,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:132,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:132,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:133,1
    - Dst: magic_enum::detail::reflected_min
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:133,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:135,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:137,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:137,1
    - Dst: static_cast<int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:137,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:139,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:139,1
    - Dst: static_cast<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:139,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:142,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:144,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:146,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 18
    argCount: 1
    argNames:
    - ' env'
    argTypes:
    - Environment
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 121
    functionDepth: 1
    functionLinenumber: 121
    functionLinenumberEnd: 147
    functionName: BT::Ast::evaluate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 6
    functionsReached:
    - BT::Ast::evaluate
    - static_cast<int64_t>
    - auto::isString
    - Any
    - magic_enum::detail::reflected_max
    - RuntimeError
    - auto::isNumber
    - magic_enum::detail::reflected_min
    - auto::cast
    - static_cast<double>
    - static_cast<bool>
    linkageType: ''
    returnType: Any
    signature: Any evaluate(Environment& env) const override
  - BBCount: 11
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 194
    functionName: BT::Ast::opStr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * opStr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:199,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - lhs
    - op
    - rhs
    argTypes:
    - expr_ptr
    - op_t
    - expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 200
    functionName: BT::Ast::ExprBinaryArithmetic
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ExprBinaryArithmetic(expr_ptr lhs, op_t op, expr_ptr rhs)
  - BBCount: 20
    BranchProfiles: []
    Callsites:
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:204,1
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:205,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:207,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:209,1
    - Dst: BT::Ast::ErrorNotInit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:209,1
    - Dst: BT::Ast::opStr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:209,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:211,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:213,1
    - Dst: BT::Ast::ErrorNotInit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:213,1
    - Dst: BT::Ast::opStr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:213,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:216,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:216,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:218,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:219,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:224,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:226,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:228,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:230,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:239,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:240,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:244,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:244,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:246,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:246,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:248,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:248,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:255,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:264,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:265,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:269,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:269,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:271,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:271,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:278,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:283,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:283,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:285,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:285,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:285,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:287,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:287,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:288,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:288,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:289,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:289,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:291,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:291,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:291,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:295,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 60
    argCount: 1
    argNames:
    - ' env'
    argTypes:
    - Environment
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 299
    functionName: BT::Ast::evaluate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 7
    functionsReached:
    - BT::Ast::ErrorNotInit
    - BT::Ast::evaluate
    - BT::Ast::opStr
    - auto::isString
    - Any
    - RuntimeError
    - auto::empty
    - auto::isNumber
    - auto::cast
    - static_cast<double>
    linkageType: ''
    returnType: Any
    signature: Any evaluate(Environment& env) const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:307,1
    - Dst: std::numeric_limits<float>::epsilon
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:307,1
    - Dst: std::abs
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' lv'
    - ' rv'
    argTypes:
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 314
    functionName: BT::Ast::IsSame
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 1
    functionsReached:
    - std::numeric_limits<float>::epsilon
    - std::abs
    - static_cast<double>
    linkageType: ''
    returnType: bool
    signature: bool IsSame(const T& lv, const T& rv)
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 1
    argNames:
    - op
    argTypes:
    - op_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 328
    functionDepth: 0
    functionLinenumber: 328
    functionLinenumberEnd: 346
    functionName: BT::Ast::opStr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * opStr(op_t op) const
  - BBCount: 23
    BranchProfiles: []
    Callsites:
    - Dst: BT::Ast::IsSame
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:357,1
    - Dst: BT::Ast::IsSame
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:361,1
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:384,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:385,1
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:387,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:389,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:391,1
    - Dst: BT::Ast::ErrorNotInit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:391,1
    - Dst: BT::Ast::opStr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:391,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:393,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:395,1
    - Dst: BT::Ast::ErrorNotInit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:395,1
    - Dst: BT::Ast::opStr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:395,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:399,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:399,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:401,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:402,1
    - Dst: SwitchImpl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:403,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:408,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:408,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:410,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:411,1
    - Dst: SwitchImpl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:412,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:417,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:417,1
    - Dst: BT::Ast::StringToDouble
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:419,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:420,1
    - Dst: SwitchImpl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:421,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:426,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:426,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:428,1
    - Dst: BT::Ast::StringToDouble
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:429,1
    - Dst: SwitchImpl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:430,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:437,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:437,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:439,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:439,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:440,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:440,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:444,1
    CyclomaticComplexity: 31
    EdgeCount: 31
    ICount: 61
    argCount: 1
    argNames:
    - ' env'
    argTypes:
    - Environment
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 351
    functionDepth: 2
    functionLinenumber: 351
    functionLinenumberEnd: 445
    functionName: BT::Ast::evaluate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 8
    functionsReached:
    - BT::Ast::ErrorNotInit
    - BT::Ast::IsSame
    - BT::Ast::evaluate
    - BT::demangle
    - auto::type
    - BT::Ast::opStr
    - SwitchImpl
    - BT::Ast::StringToDouble
    - size
    - auto::isString
    - Any
    - StrCat
    - RuntimeError
    - auto::empty
    - auto::isNumber
    - auto::cast
    linkageType: ''
    returnType: Any
    signature: Any evaluate(Environment& env) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:453,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:453,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:453,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - condition
    - then
    - else_
    argTypes:
    - expr_ptr
    - expr_ptr
    - expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 454
      start: 452
    functionDepth: 0
    functionLinenumber: 452
    functionLinenumberEnd: 454
    functionName: BT::Ast::ExprIf
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ExprIf(expr_ptr condition, expr_ptr then, expr_ptr else_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:458,1
    - Dst: isType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:459,1
    - Dst: cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:459,1
    - Dst: cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:460,1
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:463,1
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:467,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - ' env'
    argTypes:
    - Environment
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 456
    functionDepth: 1
    functionLinenumber: 456
    functionLinenumberEnd: 469
    functionName: BT::Ast::evaluate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 9
    functionsReached:
    - BT::Ast::evaluate
    - cast
    - isType
    linkageType: ''
    returnType: Any
    signature: Any evaluate(Environment& env) const override
  - BBCount: 7
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 484
    functionDepth: 0
    functionLinenumber: 484
    functionLinenumberEnd: 502
    functionName: BT::Ast::opStr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * opStr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:507,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:507,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - _lhs
    - op
    - _rhs
    argTypes:
    - expr_ptr
    - op_t
    - expr_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 508
      start: 506
    functionDepth: 0
    functionLinenumber: 506
    functionLinenumberEnd: 508
    functionName: BT::Ast::ExprAssignment
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void ExprAssignment(expr_ptr _lhs, op_t op, expr_ptr _rhs)
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: dynamic_cast<ExprName*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:512,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:512,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:515,1
    - Dst: vars::getEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:519,1
    - Dst: vars::createEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:525,1
    - Dst: PortInfo
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:525,1
    - Dst: vars::getEntry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:526,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:529,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:535,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:540,1
    - Dst: BT::Ast::evaluate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:543,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:549,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:550,1
    - Dst: auto*::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:550,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:553,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:555,1
    - Dst: BT::Ast::ErrorNotInit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:555,1
    - Dst: BT::Ast::opStr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:555,1
    - Dst: auto*::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:562,1
    - Dst: auto::info::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:562,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:562,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:566,1
    - Dst: auto*::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:566,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:570,1
    - Dst: vars::entryInfo
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:571,1
    - Dst: auto*::converter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:573,1
    - Dst: converter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:575,1
    - Dst: auto*::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:577,1
    - Dst: BT::Ast::StringToDouble
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:579,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:580,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:584,1
    - Dst: errorPrefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:584,1
    - Dst: demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:587,1
    - Dst: auto*::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:587,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:588,1
    - Dst: auto::copyInto
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:595,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:599,1
    - Dst: errorPrefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:599,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:600,1
    - Dst: auto::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:600,1
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:601,1
    - Dst: auto*::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:601,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:602,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:606,1
    - Dst: auto*::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:610,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:612,1
    - Dst: BT::Ast::ErrorNotInit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:612,1
    - Dst: BT::Ast::opStr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:612,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:618,1
    - Dst: Any::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:620,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:622,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:626,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:627,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:631,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:634,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:637,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:640,1
    - Dst: auto::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:646,1
    - Dst: Any::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:650,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:651,1
    - Dst: Any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:652,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:656,1
    - Dst: Any::copyInto
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:660,1
    - Dst: std::chrono::steady_clock::now
      Src: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp:662,1
    CyclomaticComplexity: 33
    EdgeCount: 33
    ICount: 79
    argCount: 1
    argNames:
    - ' env'
    argTypes:
    - Environment
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 664
      start: 510
    functionDepth: 2
    functionLinenumber: 510
    functionLinenumberEnd: 664
    functionName: BT::Ast::evaluate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    functionUses: 10
    functionsReached:
    - get
    - auto*::empty
    - PortInfo
    - auto*::converter
    - auto*::type
    - auto::isNumber
    - vars::getEntry
    - auto::copyInto
    - Any
    - BT::Ast::ErrorNotInit
    - std::chrono::steady_clock::now
    - Any::cast
    - auto::isString
    - auto*::isString
    - RuntimeError
    - auto*::isNumber
    - auto::cast
    - errorPrefix
    - converter
    - BT::Ast::evaluate
    - BT::demangle
    - typeid
    - auto::type
    - vars::createEntry
    - BT::Ast::opStr
    - Any::isNumber
    - auto::info::type
    - BT::Ast::StringToDouble
    - LogicError
    - StrCat
    - demangle
    - dynamic_cast<ExprName*>
    - auto::empty
    - Any::copyInto
    - vars::entryInfo
    linkageType: ''
    returnType: Any
    signature: Any evaluate(Environment& env) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 37
    functionName: BT::ReactiveSequence::ReactiveSequence
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/reactive_sequence.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ReactiveSequence(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 37
    functionName: BT::ReactiveSequence::ReactiveSequence
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/reactive_sequence.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ReactiveSequence(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~FallbackNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/fallback_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~FallbackNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: BT::FallbackNode::FallbackNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/fallback_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FallbackNode(const FallbackNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: '& operator=(const FallbackNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/fallback_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FallbackNode
    signature: FallbackNode & operator=(const FallbackNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: BT::FallbackNode::FallbackNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/fallback_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FallbackNode(FallbackNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& operator=(FallbackNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/fallback_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FallbackNode
    signature: FallbackNode & operator=(FallbackNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 37
    functionName: ~FallbackNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/fallback_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~FallbackNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: BT::FallbackNode::FallbackNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/fallback_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FallbackNode(const FallbackNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: '& operator=(const FallbackNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/fallback_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FallbackNode
    signature: FallbackNode & operator=(const FallbackNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: BT::FallbackNode::FallbackNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/fallback_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FallbackNode(FallbackNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& operator=(FallbackNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/fallback_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FallbackNode
    signature: FallbackNode & operator=(FallbackNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~WhileDoElseNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/while_do_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~WhileDoElseNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: BT::WhileDoElseNode::WhileDoElseNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/while_do_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void WhileDoElseNode(const WhileDoElseNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: '& operator=(const WhileDoElseNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/while_do_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: WhileDoElseNode
    signature: WhileDoElseNode & operator=(const WhileDoElseNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: BT::WhileDoElseNode::WhileDoElseNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/while_do_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void WhileDoElseNode(WhileDoElseNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: '& operator=(WhileDoElseNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/while_do_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: WhileDoElseNode
    signature: WhileDoElseNode & operator=(WhileDoElseNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: ~WhileDoElseNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/while_do_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~WhileDoElseNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: BT::WhileDoElseNode::WhileDoElseNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/while_do_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void WhileDoElseNode(const WhileDoElseNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: '& operator=(const WhileDoElseNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/while_do_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: WhileDoElseNode
    signature: WhileDoElseNode & operator=(const WhileDoElseNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: BT::WhileDoElseNode::WhileDoElseNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/while_do_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void WhileDoElseNode(WhileDoElseNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: '& operator=(WhileDoElseNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/while_do_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: WhileDoElseNode
    signature: WhileDoElseNode & operator=(WhileDoElseNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_all_node.h:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: BT::ParallelAllNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_all_node.h
    functionUses: 0
    functionsReached:
    - InputPort<int>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~ParallelAllNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_all_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ParallelAllNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: BT::ParallelAllNode::ParallelAllNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_all_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParallelAllNode(const ParallelAllNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& operator=(const ParallelAllNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_all_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ParallelAllNode
    signature: ParallelAllNode & operator=(const ParallelAllNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: BT::ParallelAllNode::ParallelAllNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_all_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParallelAllNode(ParallelAllNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: '& operator=(ParallelAllNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_all_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ParallelAllNode
    signature: ParallelAllNode & operator=(ParallelAllNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_all_node.h:41,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 45
    functionName: BT::ParallelAllNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_all_node.h
    functionUses: 0
    functionsReached:
    - InputPort<int>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: ~ParallelAllNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_all_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ParallelAllNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: BT::ParallelAllNode::ParallelAllNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_all_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParallelAllNode(const ParallelAllNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& operator=(const ParallelAllNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_all_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ParallelAllNode
    signature: ParallelAllNode & operator=(const ParallelAllNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: BT::ParallelAllNode::ParallelAllNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_all_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParallelAllNode(ParallelAllNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: '& operator=(ParallelAllNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_all_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ParallelAllNode
    signature: ParallelAllNode & operator=(ParallelAllNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: ~SequenceNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SequenceNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: BT::SequenceNode::SequenceNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SequenceNode(const SequenceNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: '& operator=(const SequenceNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SequenceNode
    signature: SequenceNode & operator=(const SequenceNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: BT::SequenceNode::SequenceNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SequenceNode(SequenceNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: '& operator=(SequenceNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SequenceNode
    signature: SequenceNode & operator=(SequenceNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 40
    functionName: ~SequenceNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SequenceNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: BT::SequenceNode::SequenceNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SequenceNode(const SequenceNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: '& operator=(const SequenceNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SequenceNode
    signature: SequenceNode & operator=(const SequenceNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: BT::SequenceNode::SequenceNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SequenceNode(SequenceNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: '& operator=(SequenceNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SequenceNode
    signature: SequenceNode & operator=(SequenceNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: ~TryCatchNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/try_catch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~TryCatchNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: BT::TryCatchNode::TryCatchNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/try_catch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TryCatchNode(const TryCatchNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: '& operator=(const TryCatchNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/try_catch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TryCatchNode
    signature: TryCatchNode & operator=(const TryCatchNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: BT::TryCatchNode::TryCatchNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/try_catch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TryCatchNode(TryCatchNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& operator=(TryCatchNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/try_catch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TryCatchNode
    signature: TryCatchNode & operator=(TryCatchNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/try_catch_node.h:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: BT::TryCatchNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/try_catch_node.h
    functionUses: 0
    functionsReached:
    - InputPort<bool>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 45
    functionDepth: 0
    functionLinenumber: 45
    functionLinenumberEnd: 45
    functionName: ~TryCatchNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/try_catch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~TryCatchNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: BT::TryCatchNode::TryCatchNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/try_catch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TryCatchNode(const TryCatchNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: '& operator=(const TryCatchNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/try_catch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TryCatchNode
    signature: TryCatchNode & operator=(const TryCatchNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: BT::TryCatchNode::TryCatchNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/try_catch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TryCatchNode(TryCatchNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& operator=(TryCatchNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/try_catch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TryCatchNode
    signature: TryCatchNode & operator=(TryCatchNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/try_catch_node.h:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 57
    functionName: BT::TryCatchNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/try_catch_node.h
    functionUses: 0
    functionsReached:
    - InputPort<bool>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 27
    functionName: ~ManualSelectorNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ManualSelectorNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 29
    functionName: BT::ManualSelectorNode::ManualSelectorNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ManualSelectorNode(const ManualSelectorNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: '& operator=(const ManualSelectorNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ManualSelectorNode
    signature: ManualSelectorNode & operator=(const ManualSelectorNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: BT::ManualSelectorNode::ManualSelectorNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ManualSelectorNode(ManualSelectorNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: '& operator=(ManualSelectorNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ManualSelectorNode
    signature: ManualSelectorNode & operator=(ManualSelectorNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionName: BT::ManualSelectorNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h
    functionUses: 0
    functionsReached:
    - InputPort<bool>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 27
    functionName: ~ManualSelectorNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ManualSelectorNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 29
    functionName: BT::ManualSelectorNode::ManualSelectorNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ManualSelectorNode(const ManualSelectorNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: '& operator=(const ManualSelectorNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ManualSelectorNode
    signature: ManualSelectorNode & operator=(const ManualSelectorNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: BT::ManualSelectorNode::ManualSelectorNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ManualSelectorNode(ManualSelectorNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: '& operator=(ManualSelectorNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ManualSelectorNode
    signature: ManualSelectorNode & operator=(ManualSelectorNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h:38,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 43
    functionName: BT::ManualSelectorNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h
    functionUses: 0
    functionsReached:
    - InputPort<bool>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 37
    functionName: BT::ReactiveFallback::ReactiveFallback
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/reactive_fallback.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ReactiveFallback(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 37
    functionName: BT::ReactiveFallback::ReactiveFallback
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/reactive_fallback.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ReactiveFallback(const std::string& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: ~SequenceWithMemory() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_with_memory_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SequenceWithMemory() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: BT::SequenceWithMemory::SequenceWithMemory
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_with_memory_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SequenceWithMemory(const SequenceWithMemory&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& operator=(const SequenceWithMemory&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_with_memory_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SequenceWithMemory
    signature: SequenceWithMemory & operator=(const SequenceWithMemory&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: BT::SequenceWithMemory::SequenceWithMemory
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_with_memory_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SequenceWithMemory(SequenceWithMemory&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: '& operator=(SequenceWithMemory&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_with_memory_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SequenceWithMemory
    signature: SequenceWithMemory & operator=(SequenceWithMemory&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: ~SequenceWithMemory() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_with_memory_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SequenceWithMemory() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: BT::SequenceWithMemory::SequenceWithMemory
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_with_memory_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SequenceWithMemory(const SequenceWithMemory&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& operator=(const SequenceWithMemory&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_with_memory_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SequenceWithMemory
    signature: SequenceWithMemory & operator=(const SequenceWithMemory&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: BT::SequenceWithMemory::SequenceWithMemory
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_with_memory_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SequenceWithMemory(SequenceWithMemory&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: '& operator=(SequenceWithMemory&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_with_memory_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SequenceWithMemory
    signature: SequenceWithMemory & operator=(SequenceWithMemory&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: ~SwitchNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SwitchNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: BT::SwitchNode::SwitchNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwitchNode(const SwitchNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: '& operator=(const SwitchNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SwitchNode
    signature: SwitchNode & operator=(const SwitchNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: BT::SwitchNode::SwitchNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwitchNode(SwitchNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& operator=(SwitchNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SwitchNode
    signature: SwitchNode & operator=(SwitchNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:80,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:83,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:83,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 85
    functionName: BT::SwitchNode<NUM_CASES>::SwitchNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached:
    - string
    - setRegistrationID
    - to_string
    - push_back
    linkageType: ''
    returnType: void
    signature: "void SwitchNode<NUM_CASES>::SwitchNode(const std::string& name,\n
      \                                        const NodeConfig& config)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionName: BT::SwitchNode<NUM_CASES>::halt
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    linkageType: ''
    returnType: void
    signature: void SwitchNode<NUM_CASES>::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PortsList::insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:99,1
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:99,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:102,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:102,1
    - Dst: PortsList::insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:103,1
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 109
    functionName: BT::SwitchNode<NUM_CASES>::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached:
    - to_string
    - BT::InputPort<std::string>
    - PortsList::insert
    - string
    linkageType: ''
    returnType: PortsList
    signature: PortsList SwitchNode<NUM_CASES>::providedPorts()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: childrenCount
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:114,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:116,1
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:125,1
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:131,1
    - Dst: BT::details::CheckStringEquality
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:133,1
    - Dst: BT::SwitchNode<NUM_CASES>::config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:133,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:133,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:145,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:149,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:163,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 167
    functionName: BT::SwitchNode<NUM_CASES>::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached:
    - get
    - BT::SwitchNode<NUM_CASES>::config
    - haltChild
    - BT::details::CheckStringEquality
    - getInput
    - LogicError
    - executeTick
    - childrenCount
    - resetChildren
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus SwitchNode<NUM_CASES>::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: ~SwitchNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SwitchNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: BT::SwitchNode::SwitchNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwitchNode(const SwitchNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: '& operator=(const SwitchNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SwitchNode
    signature: SwitchNode & operator=(const SwitchNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 59
    functionDepth: 0
    functionLinenumber: 59
    functionLinenumberEnd: 59
    functionName: BT::SwitchNode::SwitchNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SwitchNode(SwitchNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: '& operator=(SwitchNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SwitchNode
    signature: SwitchNode & operator=(SwitchNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setRegistrationID
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:80,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:83,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:83,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:83,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 85
    functionName: BT::SwitchNode<NUM_CASES>::SwitchNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached:
    - string
    - setRegistrationID
    - to_string
    - push_back
    linkageType: ''
    returnType: void
    signature: "void SwitchNode<NUM_CASES>::SwitchNode(const std::string& name,\n
      \                                        const NodeConfig& config)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::ControlNode::halt
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:91,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 88
    functionDepth: 2
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionName: BT::SwitchNode<NUM_CASES>::halt
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached:
    - BT::ControlNode::halt
    linkageType: ''
    returnType: void
    signature: void SwitchNode<NUM_CASES>::halt()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PortsList::insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:99,1
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:99,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:102,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:102,1
    - Dst: PortsList::insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:103,1
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:103,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 95
    functionDepth: 1
    functionLinenumber: 95
    functionLinenumberEnd: 109
    functionName: BT::SwitchNode<NUM_CASES>::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached:
    - to_string
    - BT::InputPort<std::string>
    - PortsList::insert
    - string
    linkageType: ''
    returnType: PortsList
    signature: PortsList SwitchNode<NUM_CASES>::providedPorts()
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: childrenCount
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:114,1
    - Dst: LogicError
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:116,1
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:125,1
    - Dst: getInput
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:131,1
    - Dst: BT::details::CheckStringEquality
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:133,1
    - Dst: BT::SwitchNode<NUM_CASES>::config
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:133,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:133,1
    - Dst: haltChild
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:145,1
    - Dst: executeTick
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:149,1
    - Dst: resetChildren
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h:163,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 112
    functionDepth: 2
    functionLinenumber: 112
    functionLinenumberEnd: 167
    functionName: BT::SwitchNode<NUM_CASES>::tick
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
    functionUses: 0
    functionsReached:
    - get
    - BT::SwitchNode<NUM_CASES>::config
    - haltChild
    - BT::details::CheckStringEquality
    - getInput
    - LogicError
    - executeTick
    - childrenCount
    - resetChildren
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus SwitchNode<NUM_CASES>::tick()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h:50,1
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 56
    functionName: BT::ParallelNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h
    functionUses: 0
    functionsReached:
    - InputPort<int>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: ~ParallelNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ParallelNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: BT::ParallelNode::ParallelNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParallelNode(const ParallelNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: '& operator=(const ParallelNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ParallelNode
    signature: ParallelNode & operator=(const ParallelNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: BT::ParallelNode::ParallelNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParallelNode(ParallelNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: '& operator=(ParallelNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ParallelNode
    signature: ParallelNode & operator=(ParallelNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h:50,1
    - Dst: InputPort<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 56
    functionName: BT::ParallelNode::providedPorts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h
    functionUses: 0
    functionsReached:
    - InputPort<int>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: ~ParallelNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~ParallelNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 60
    functionName: BT::ParallelNode::ParallelNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParallelNode(const ParallelNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: '& operator=(const ParallelNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ParallelNode
    signature: ParallelNode & operator=(const ParallelNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: BT::ParallelNode::ParallelNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ParallelNode(ParallelNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: '& operator=(ParallelNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ParallelNode
    signature: ParallelNode & operator=(ParallelNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: ~IfThenElseNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/if_then_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~IfThenElseNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: BT::IfThenElseNode::IfThenElseNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/if_then_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IfThenElseNode(const IfThenElseNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& operator=(const IfThenElseNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/if_then_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IfThenElseNode
    signature: IfThenElseNode & operator=(const IfThenElseNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: BT::IfThenElseNode::IfThenElseNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/if_then_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IfThenElseNode(IfThenElseNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: '& operator=(IfThenElseNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/if_then_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IfThenElseNode
    signature: IfThenElseNode & operator=(IfThenElseNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: ~IfThenElseNode() override
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/if_then_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~IfThenElseNode() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 41
    functionName: BT::IfThenElseNode::IfThenElseNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/if_then_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IfThenElseNode(const IfThenElseNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 42
    functionName: '& operator=(const IfThenElseNode&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/if_then_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IfThenElseNode
    signature: IfThenElseNode & operator=(const IfThenElseNode&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 43
    functionName: BT::IfThenElseNode::IfThenElseNode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/if_then_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void IfThenElseNode(IfThenElseNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 44
    functionName: '& operator=(IfThenElseNode&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/controls/if_then_else_node.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: IfThenElseNode
    signature: IfThenElseNode & operator=(IfThenElseNode&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: BT::SqliteLogger::SqliteLogger
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_sqlite_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SqliteLogger(const SqliteLogger&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: '& operator=(const SqliteLogger&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_sqlite_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SqliteLogger
    signature: SqliteLogger & operator=(const SqliteLogger&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: BT::SqliteLogger::SqliteLogger
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_sqlite_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SqliteLogger(SqliteLogger&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: '& operator=(SqliteLogger&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_sqlite_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SqliteLogger
    signature: SqliteLogger & operator=(SqliteLogger&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 61
    functionName: BT::SqliteLogger::SqliteLogger
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_sqlite_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SqliteLogger(const SqliteLogger&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 62
    functionName: '& operator=(const SqliteLogger&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_sqlite_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SqliteLogger
    signature: SqliteLogger & operator=(const SqliteLogger&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 63
    functionName: BT::SqliteLogger::SqliteLogger
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_sqlite_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SqliteLogger(SqliteLogger&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 64
    functionName: '& operator=(SqliteLogger&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_sqlite_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SqliteLogger
    signature: SqliteLogger & operator=(SqliteLogger&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Groot2Publisher
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 29
    functionName: BT::Groot2Publisher::Groot2Publisher
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_publisher.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher(const Groot2Publisher& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Groot2Publisher
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: '& operator=(const Groot2Publisher& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_publisher.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Groot2Publisher
    signature: Groot2Publisher & operator=(const Groot2Publisher& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Groot2Publisher
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: BT::Groot2Publisher::Groot2Publisher
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_publisher.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher(Groot2Publisher&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Groot2Publisher
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: '& operator=(Groot2Publisher&& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_publisher.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Groot2Publisher
    signature: Groot2Publisher & operator=(Groot2Publisher&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Groot2Publisher
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 29
    functionName: BT::Groot2Publisher::Groot2Publisher
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_publisher.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher(const Groot2Publisher& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Groot2Publisher
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: '& operator=(const Groot2Publisher& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_publisher.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Groot2Publisher
    signature: Groot2Publisher & operator=(const Groot2Publisher& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Groot2Publisher
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: BT::Groot2Publisher::Groot2Publisher
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_publisher.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Groot2Publisher(Groot2Publisher&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Groot2Publisher
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 33
    functionName: '& operator=(Groot2Publisher&& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_publisher.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Groot2Publisher
    signature: Groot2Publisher & operator=(Groot2Publisher&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - StatusChangeLogger
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 25
    functionName: BT::StatusChangeLogger::StatusChangeLogger
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/abstract_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger(const StatusChangeLogger& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - StatusChangeLogger
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 26
    functionName: '& operator=(const StatusChangeLogger& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/abstract_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: StatusChangeLogger
    signature: StatusChangeLogger & operator=(const StatusChangeLogger& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - StatusChangeLogger
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 28
    functionName: BT::StatusChangeLogger::StatusChangeLogger
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/abstract_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger(StatusChangeLogger&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - StatusChangeLogger
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 29
    functionName: '& operator=(StatusChangeLogger&& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/abstract_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: StatusChangeLogger
    signature: StatusChangeLogger & operator=(StatusChangeLogger&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - StatusChangeLogger
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 25
    functionName: BT::StatusChangeLogger::StatusChangeLogger
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/abstract_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger(const StatusChangeLogger& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - StatusChangeLogger
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 26
    functionName: '& operator=(const StatusChangeLogger& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/abstract_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: StatusChangeLogger
    signature: StatusChangeLogger & operator=(const StatusChangeLogger& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - StatusChangeLogger
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 28
    functionName: BT::StatusChangeLogger::StatusChangeLogger
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/abstract_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StatusChangeLogger(StatusChangeLogger&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - StatusChangeLogger
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 29
    functionName: '& operator=(StatusChangeLogger&& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/abstract_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: StatusChangeLogger
    signature: StatusChangeLogger & operator=(StatusChangeLogger&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 24
    functionName: BT::TreeObserver::TreeObserver
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_observer.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TreeObserver(const TreeObserver&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 25
    functionName: '& operator=(const TreeObserver&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_observer.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TreeObserver
    signature: TreeObserver & operator=(const TreeObserver&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 26
    functionName: BT::TreeObserver::TreeObserver
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_observer.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TreeObserver(TreeObserver&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 27
    functionName: '& operator=(TreeObserver&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_observer.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TreeObserver
    signature: TreeObserver & operator=(TreeObserver&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 30
    functionName: BT::TreeObserver::flush
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_observer.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void flush() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 24
    functionName: BT::TreeObserver::TreeObserver
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_observer.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TreeObserver(const TreeObserver&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 25
    functionName: '& operator=(const TreeObserver&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_observer.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TreeObserver
    signature: TreeObserver & operator=(const TreeObserver&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 26
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 26
    functionName: BT::TreeObserver::TreeObserver
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_observer.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TreeObserver(TreeObserver&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 27
    functionName: '& operator=(TreeObserver&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_observer.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TreeObserver
    signature: TreeObserver & operator=(TreeObserver&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 30
    functionName: BT::TreeObserver::flush
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_observer.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void flush() override
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 1
    argNames:
    - ' type'
    argTypes:
    - RequestType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 96
    functionName: BT::Monitor::ToString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * ToString(const RequestType& type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionName: BT::Monitor::size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t size()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: BT::Monitor::RequestHeader
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RequestHeader()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dist
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - RequestType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 121
    functionName: BT::Monitor::RequestHeader
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 0
    functionsReached:
    - dist
    linkageType: ''
    returnType: void
    signature: void RequestHeader(RequestType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - RequestHeader
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: operator==(const RequestHeader& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const RequestHeader& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - RequestHeader
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionName: operator!=(const RequestHeader& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const RequestHeader& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Monitor::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: BT::Monitor::size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 5
    functionsReached:
    - BT::Monitor::size
    linkageType: ''
    returnType: size_t
    signature: size_t size()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - buffer
    - offset
    - value
    argTypes:
    - char*
    - unsigned
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 149
    functionName: BT::Monitor::Serialize
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 2
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: unsigned
    signature: unsigned Serialize(char* buffer, unsigned offset, T value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - buffer
    - offset
    - ' value'
    argTypes:
    - char*
    - unsigned
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 156
    functionName: BT::Monitor::Deserialize
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 0
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: unsigned
    signature: unsigned Deserialize(const char* buffer, unsigned offset, T& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string::resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:161,1
    - Dst: BT::Monitor::Serialize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:163,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:163,1
    - Dst: BT::Monitor::Serialize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:164,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:164,1
    - Dst: BT::Monitor::Serialize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:165,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' header'
    argTypes:
    - RequestHeader
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 167
    functionName: BT::Monitor::SerializeHeader
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 6
    functionsReached:
    - std::string::data
    - BT::Monitor::Serialize
    - std::string::resize
    linkageType: ''
    returnType: std::string
    signature: std::string SerializeHeader(const RequestHeader& header)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Monitor::SerializeHeader
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:172,1
    - Dst: std::string::resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:175,1
    - Dst: BT::Monitor::Serialize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:176,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' header'
    argTypes:
    - ReplyHeader
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 178
    functionName: BT::Monitor::SerializeHeader
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 7
    functionsReached:
    - std::string::data
    - BT::Monitor::Serialize
    - BT::Monitor::SerializeHeader
    - std::string::resize
    linkageType: ''
    returnType: std::string
    signature: std::string SerializeHeader(const ReplyHeader& header)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Monitor::Deserialize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:184,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:184,1
    - Dst: BT::Monitor::Deserialize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:186,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:186,1
    - Dst: static_cast<Monitor::RequestType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:187,1
    - Dst: BT::Monitor::Deserialize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:188,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' buffer'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 190
    functionName: BT::Monitor::DeserializeRequestHeader
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 2
    functionsReached:
    - static_cast<Monitor::RequestType>
    - data
    - BT::Monitor::Deserialize
    linkageType: ''
    returnType: RequestHeader
    signature: RequestHeader DeserializeRequestHeader(const std::string& buffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Monitor::DeserializeRequestHeader
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:195,1
    - Dst: BT::Monitor::Deserialize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:197,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' buffer'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 192
    functionDepth: 2
    functionLinenumber: 192
    functionLinenumberEnd: 199
    functionName: BT::Monitor::DeserializeReplyHeader
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 0
    functionsReached:
    - data
    - BT::Monitor::DeserializeRequestHeader
    - BT::Monitor::Deserialize
    linkageType: ''
    returnType: ReplyHeader
    signature: ReplyHeader DeserializeReplyHeader(const std::string& buffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toStr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' js'
    - ' bp'
    argTypes:
    - nlohmann::json
    - Hook
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 250
    functionName: BT::Monitor::to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 2
    functionsReached:
    - toStr
    linkageType: ''
    returnType: void
    signature: void to_json(nlohmann::json& js, const Hook& bp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:254,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:255,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:256,1
    - Dst: static_cast<Hook::Mode>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:257,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:257,1
    - Dst: static_cast<Hook::Position>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:258,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:258,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:260,1
    - Dst: convertFromString<NodeStatus>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - ' js'
    - ' bp'
    argTypes:
    - nlohmann::json
    - Hook
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 262
    functionName: BT::Monitor::from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 2
    functionsReached:
    - at
    - static_cast<Hook::Position>
    - static_cast<Hook::Mode>
    - convertFromString<NodeStatus>
    linkageType: ''
    returnType: void
    signature: void from_json(const nlohmann::json& js, Hook& bp)
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 1
    argNames:
    - ' type'
    argTypes:
    - RequestType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 96
    functionName: BT::Monitor::ToString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * ToString(const RequestType& type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 110
    functionName: BT::Monitor::size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t size()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 112
    functionName: BT::Monitor::RequestHeader
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void RequestHeader()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dist
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - RequestType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 121
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 121
    functionName: BT::Monitor::RequestHeader
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 0
    functionsReached:
    - dist
    linkageType: ''
    returnType: void
    signature: void RequestHeader(RequestType type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - RequestHeader
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: operator==(const RequestHeader& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const RequestHeader& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - RequestHeader
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionName: operator!=(const RequestHeader& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const RequestHeader& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Monitor::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 141
    functionName: BT::Monitor::size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 6
    functionsReached:
    - BT::Monitor::size
    linkageType: ''
    returnType: size_t
    signature: size_t size()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:147,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - buffer
    - offset
    - value
    argTypes:
    - char*
    - unsigned
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 149
    functionName: BT::Monitor::Serialize
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 4
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: unsigned
    signature: unsigned Serialize(char* buffer, unsigned offset, T value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 3
    argNames:
    - buffer
    - offset
    - ' value'
    argTypes:
    - char*
    - unsigned
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 156
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 156
    functionName: BT::Monitor::Deserialize
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 2
    functionsReached:
    - memcpy
    linkageType: ''
    returnType: unsigned
    signature: unsigned Deserialize(const char* buffer, unsigned offset, T& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string::resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:161,1
    - Dst: BT::Monitor::Serialize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:163,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:163,1
    - Dst: BT::Monitor::Serialize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:164,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:164,1
    - Dst: BT::Monitor::Serialize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:165,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:165,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' header'
    argTypes:
    - RequestHeader
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 167
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 167
    functionName: BT::Monitor::SerializeHeader
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 7
    functionsReached:
    - std::string::data
    - BT::Monitor::Serialize
    - std::string::resize
    linkageType: ''
    returnType: std::string
    signature: std::string SerializeHeader(const RequestHeader& header)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Monitor::SerializeHeader
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:172,1
    - Dst: std::string::resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:175,1
    - Dst: BT::Monitor::Serialize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:176,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:176,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' header'
    argTypes:
    - ReplyHeader
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 169
    functionDepth: 1
    functionLinenumber: 169
    functionLinenumberEnd: 178
    functionName: BT::Monitor::SerializeHeader
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 8
    functionsReached:
    - std::string::data
    - BT::Monitor::Serialize
    - BT::Monitor::SerializeHeader
    - std::string::resize
    linkageType: ''
    returnType: std::string
    signature: std::string SerializeHeader(const ReplyHeader& header)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Monitor::Deserialize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:184,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:184,1
    - Dst: BT::Monitor::Deserialize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:186,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:186,1
    - Dst: static_cast<Monitor::RequestType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:187,1
    - Dst: BT::Monitor::Deserialize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:188,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:188,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 1
    argNames:
    - ' buffer'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 180
    functionDepth: 1
    functionLinenumber: 180
    functionLinenumberEnd: 190
    functionName: BT::Monitor::DeserializeRequestHeader
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 3
    functionsReached:
    - static_cast<Monitor::RequestType>
    - data
    - BT::Monitor::Deserialize
    linkageType: ''
    returnType: RequestHeader
    signature: RequestHeader DeserializeRequestHeader(const std::string& buffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Monitor::DeserializeRequestHeader
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:195,1
    - Dst: BT::Monitor::Deserialize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:197,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' buffer'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 192
    functionDepth: 2
    functionLinenumber: 192
    functionLinenumberEnd: 199
    functionName: BT::Monitor::DeserializeReplyHeader
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 0
    functionsReached:
    - data
    - BT::Monitor::DeserializeRequestHeader
    - BT::Monitor::Deserialize
    linkageType: ''
    returnType: ReplyHeader
    signature: ReplyHeader DeserializeReplyHeader(const std::string& buffer)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: toStr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' js'
    - ' bp'
    argTypes:
    - nlohmann::json
    - Hook
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 250
    functionName: BT::Monitor::to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 2
    functionsReached:
    - toStr
    linkageType: ''
    returnType: void
    signature: void to_json(nlohmann::json& js, const Hook& bp)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:254,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:255,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:256,1
    - Dst: static_cast<Hook::Mode>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:257,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:257,1
    - Dst: static_cast<Hook::Position>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:258,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:258,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:260,1
    - Dst: convertFromString<NodeStatus>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h:261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - ' js'
    - ' bp'
    argTypes:
    - nlohmann::json
    - Hook
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 262
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 262
    functionName: BT::Monitor::from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    functionUses: 2
    functionsReached:
    - at
    - static_cast<Hook::Position>
    - static_cast<Hook::Mode>
    - convertFromString<NodeStatus>
    linkageType: ''
    returnType: void
    signature: void from_json(const nlohmann::json& js, Hook& bp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 14
    functionName: BT::MinitraceLogger::MinitraceLogger
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_minitrace_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MinitraceLogger(const MinitraceLogger&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15
      start: 15
    functionDepth: 0
    functionLinenumber: 15
    functionLinenumberEnd: 15
    functionName: '& operator=(const MinitraceLogger&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_minitrace_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MinitraceLogger
    signature: MinitraceLogger & operator=(const MinitraceLogger&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16
      start: 16
    functionDepth: 0
    functionLinenumber: 16
    functionLinenumberEnd: 16
    functionName: BT::MinitraceLogger::MinitraceLogger
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_minitrace_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MinitraceLogger(MinitraceLogger&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 17
    functionName: '& operator=(MinitraceLogger&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_minitrace_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MinitraceLogger
    signature: MinitraceLogger & operator=(MinitraceLogger&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 14
    functionName: BT::MinitraceLogger::MinitraceLogger
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_minitrace_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MinitraceLogger(const MinitraceLogger&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15
      start: 15
    functionDepth: 0
    functionLinenumber: 15
    functionLinenumberEnd: 15
    functionName: '& operator=(const MinitraceLogger&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_minitrace_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MinitraceLogger
    signature: MinitraceLogger & operator=(const MinitraceLogger&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16
      start: 16
    functionDepth: 0
    functionLinenumber: 16
    functionLinenumberEnd: 16
    functionName: BT::MinitraceLogger::MinitraceLogger
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_minitrace_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MinitraceLogger(MinitraceLogger&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 17
    functionName: '& operator=(MinitraceLogger&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_minitrace_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MinitraceLogger
    signature: MinitraceLogger & operator=(MinitraceLogger&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 21
    functionDepth: 0
    functionLinenumber: 21
    functionLinenumberEnd: 21
    functionName: BT::StdCoutLogger::StdCoutLogger
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_cout_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StdCoutLogger(const StdCoutLogger&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 22
    functionName: '& operator=(const StdCoutLogger&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_cout_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: StdCoutLogger
    signature: StdCoutLogger & operator=(const StdCoutLogger&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 23
    functionName: BT::StdCoutLogger::StdCoutLogger
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_cout_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StdCoutLogger(StdCoutLogger&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 24
    functionName: '& operator=(StdCoutLogger&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_cout_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: StdCoutLogger
    signature: StdCoutLogger & operator=(StdCoutLogger&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21
      start: 21
    functionDepth: 0
    functionLinenumber: 21
    functionLinenumberEnd: 21
    functionName: BT::StdCoutLogger::StdCoutLogger
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_cout_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StdCoutLogger(const StdCoutLogger&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 22
    functionName: '& operator=(const StdCoutLogger&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_cout_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: StdCoutLogger
    signature: StdCoutLogger & operator=(const StdCoutLogger&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 23
    functionName: BT::StdCoutLogger::StdCoutLogger
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_cout_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StdCoutLogger(StdCoutLogger&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 24
    functionName: '& operator=(StdCoutLogger&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_cout_logger.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: StdCoutLogger
    signature: StdCoutLogger & operator=(StdCoutLogger&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - FileLogger2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: BT::FileLogger2::FileLogger2
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_file_logger_v2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FileLogger2(const FileLogger2& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - FileLogger2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: '& operator=(const FileLogger2& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_file_logger_v2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FileLogger2
    signature: FileLogger2 & operator=(const FileLogger2& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - FileLogger2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: BT::FileLogger2::FileLogger2
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_file_logger_v2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FileLogger2(FileLogger2&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - FileLogger2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: '& operator=(FileLogger2&& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_file_logger_v2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FileLogger2
    signature: FileLogger2 & operator=(FileLogger2&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - FileLogger2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: BT::FileLogger2::FileLogger2
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_file_logger_v2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FileLogger2(const FileLogger2& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - FileLogger2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: '& operator=(const FileLogger2& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_file_logger_v2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FileLogger2
    signature: FileLogger2 & operator=(const FileLogger2& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - FileLogger2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 38
    functionName: BT::FileLogger2::FileLogger2
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_file_logger_v2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void FileLogger2(FileLogger2&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - FileLogger2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 39
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 39
    functionName: '& operator=(FileLogger2&& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_file_logger_v2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FileLogger2
    signature: FileLogger2 & operator=(FileLogger2&& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: SafeAny::details::is_integer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_integer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:42,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: SafeAny::details::is_convertible_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::details::is_integer
    linkageType: ''
    returnType: bool
    signature: bool is_convertible_type()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:50,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: SafeAny::details::is_convertible_to_bool
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::details::is_integer
    linkageType: ''
    returnType: bool
    signature: bool is_convertible_to_bool()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: SafeAny::details::is_signed
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_signed()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: SafeAny::details::is_same
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_same()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:68,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:68,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - From
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 72
    functionName: SafeAny::details::checkUpperLimit
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::detail::reflected_max
    - static_cast<From>
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void checkUpperLimit(const From& from)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:81,1
    - Dst: magic_enum::detail::reflected_min
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:84,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:86,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - From
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 88
    functionName: SafeAny::details::checkLowerLimit
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::detail::reflected_min
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void checkLowerLimit(const From& from)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:101,1
    - Dst: std::abs
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:105,1
    - Dst: static_cast<int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:105,1
    - Dst: static_cast<int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:105,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:109,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:111,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:123,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:123,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:125,1
    - Dst: std::numeric_limits<To>::lowest
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:125,1
    - Dst: std::nearbyint
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:126,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:128,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:134,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:134,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:135,1
    - Dst: std::numeric_limits<To>::lowest
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:135,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:137,1
    - Dst: static_cast<To>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:139,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:140,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:143,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 23
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - From
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 146
    functionName: SafeAny::details::checkTruncation
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 0
    functionsReached:
    - static_cast<To>
    - static_cast<uint64_t>
    - std::nearbyint
    - static_cast<int64_t>
    - std::abs
    - static_cast<From>
    - to_string
    - magic_enum::detail::reflected_max
    - std::numeric_limits<To>::lowest
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void checkTruncation(const From& from)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::details::is_convertible_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:153,1
    - Dst: SafeAny::details::is_convertible_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:153,1
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:156,1
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:156,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:158,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:158,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:162,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:169,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:169,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:169,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:170,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:172,1
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:175,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:175,1
    - Dst: SafeAny::details::checkLowerLimit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:177,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:178,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:182,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:182,1
    - Dst: SafeAny::details::checkUpperLimit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:184,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:189,1
    - Dst: SafeAny::details::checkLowerLimit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:191,1
    - Dst: SafeAny::details::checkUpperLimit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:193,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:195,1
    - Dst: SafeAny::details::checkTruncation
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:206,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:208,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 31
    argCount: 2
    argNames:
    - ' source'
    - ' target'
    argTypes:
    - SRC
    - DST
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 151
    functionDepth: 2
    functionLinenumber: 151
    functionLinenumberEnd: 210
    functionName: SafeAny::details::convertNumber
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::details::is_same
    - SafeAny::details::checkLowerLimit
    - SafeAny::details::is_convertible_type
    - static_cast<DST>
    - SafeAny::details::checkUpperLimit
    - std::runtime_error
    - SafeAny::details::is_signed
    - SafeAny::details::checkTruncation
    - SafeAny::details::is_integer
    linkageType: ''
    returnType: void
    signature: void convertNumber(const SRC& source, DST& target)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: SafeAny::details::is_integer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_integer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:42,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: SafeAny::details::is_convertible_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 1
    functionsReached:
    - SafeAny::details::is_integer
    linkageType: ''
    returnType: bool
    signature: bool is_convertible_type()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:50,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: SafeAny::details::is_convertible_to_bool
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::details::is_integer
    linkageType: ''
    returnType: bool
    signature: bool is_convertible_to_bool()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: SafeAny::details::is_signed
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_signed()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: SafeAny::details::is_same
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_same()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:68,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:68,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - From
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 72
    functionName: SafeAny::details::checkUpperLimit
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 1
    functionsReached:
    - magic_enum::detail::reflected_max
    - static_cast<From>
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void checkUpperLimit(const From& from)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:81,1
    - Dst: magic_enum::detail::reflected_min
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:84,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:86,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - From
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 88
    functionName: SafeAny::details::checkLowerLimit
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 1
    functionsReached:
    - magic_enum::detail::reflected_min
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void checkLowerLimit(const From& from)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:101,1
    - Dst: std::abs
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:105,1
    - Dst: static_cast<int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:105,1
    - Dst: static_cast<int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:105,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:109,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:111,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:123,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:123,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:125,1
    - Dst: std::numeric_limits<To>::lowest
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:125,1
    - Dst: std::nearbyint
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:126,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:128,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:134,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:134,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:135,1
    - Dst: std::numeric_limits<To>::lowest
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:135,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:137,1
    - Dst: static_cast<To>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:139,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:140,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:143,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 23
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - From
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 146
    functionName: SafeAny::details::checkTruncation
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 1
    functionsReached:
    - static_cast<To>
    - static_cast<uint64_t>
    - std::nearbyint
    - static_cast<int64_t>
    - std::abs
    - static_cast<From>
    - to_string
    - magic_enum::detail::reflected_max
    - std::numeric_limits<To>::lowest
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void checkTruncation(const From& from)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::details::is_convertible_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:153,1
    - Dst: SafeAny::details::is_convertible_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:153,1
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:156,1
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:156,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:158,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:158,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:162,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:169,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:169,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:169,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:170,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:172,1
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:175,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:175,1
    - Dst: SafeAny::details::checkLowerLimit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:177,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:178,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:182,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:182,1
    - Dst: SafeAny::details::checkUpperLimit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:184,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:189,1
    - Dst: SafeAny::details::checkLowerLimit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:191,1
    - Dst: SafeAny::details::checkUpperLimit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:193,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:195,1
    - Dst: SafeAny::details::checkTruncation
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:206,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:208,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 31
    argCount: 2
    argNames:
    - ' source'
    - ' target'
    argTypes:
    - SRC
    - DST
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 151
    functionDepth: 2
    functionLinenumber: 151
    functionLinenumberEnd: 210
    functionName: SafeAny::details::convertNumber
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::details::is_same
    - SafeAny::details::checkLowerLimit
    - SafeAny::details::is_convertible_type
    - static_cast<DST>
    - SafeAny::details::checkUpperLimit
    - std::runtime_error
    - SafeAny::details::is_signed
    - SafeAny::details::checkTruncation
    - SafeAny::details::is_integer
    linkageType: ''
    returnType: void
    signature: void convertNumber(const SRC& source, DST& target)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: SafeAny::details::is_integer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_integer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:42,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: SafeAny::details::is_convertible_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 2
    functionsReached:
    - SafeAny::details::is_integer
    linkageType: ''
    returnType: bool
    signature: bool is_convertible_type()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:50,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: SafeAny::details::is_convertible_to_bool
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::details::is_integer
    linkageType: ''
    returnType: bool
    signature: bool is_convertible_to_bool()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: SafeAny::details::is_signed
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_signed()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: SafeAny::details::is_same
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_same()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:68,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:68,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - From
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 72
    functionName: SafeAny::details::checkUpperLimit
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 2
    functionsReached:
    - magic_enum::detail::reflected_max
    - static_cast<From>
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void checkUpperLimit(const From& from)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:81,1
    - Dst: magic_enum::detail::reflected_min
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:84,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:86,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - From
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 88
    functionName: SafeAny::details::checkLowerLimit
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 2
    functionsReached:
    - magic_enum::detail::reflected_min
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void checkLowerLimit(const From& from)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:101,1
    - Dst: std::abs
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:105,1
    - Dst: static_cast<int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:105,1
    - Dst: static_cast<int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:105,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:109,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:111,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:123,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:123,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:125,1
    - Dst: std::numeric_limits<To>::lowest
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:125,1
    - Dst: std::nearbyint
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:126,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:128,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:134,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:134,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:135,1
    - Dst: std::numeric_limits<To>::lowest
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:135,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:137,1
    - Dst: static_cast<To>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:139,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:140,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:143,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 23
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - From
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 146
    functionName: SafeAny::details::checkTruncation
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 2
    functionsReached:
    - static_cast<To>
    - static_cast<uint64_t>
    - std::nearbyint
    - static_cast<int64_t>
    - std::abs
    - static_cast<From>
    - to_string
    - magic_enum::detail::reflected_max
    - std::numeric_limits<To>::lowest
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void checkTruncation(const From& from)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::details::is_convertible_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:153,1
    - Dst: SafeAny::details::is_convertible_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:153,1
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:156,1
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:156,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:158,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:158,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:162,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:169,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:169,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:169,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:170,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:172,1
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:175,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:175,1
    - Dst: SafeAny::details::checkLowerLimit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:177,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:178,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:182,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:182,1
    - Dst: SafeAny::details::checkUpperLimit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:184,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:189,1
    - Dst: SafeAny::details::checkLowerLimit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:191,1
    - Dst: SafeAny::details::checkUpperLimit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:193,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:195,1
    - Dst: SafeAny::details::checkTruncation
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:206,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:208,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 31
    argCount: 2
    argNames:
    - ' source'
    - ' target'
    argTypes:
    - SRC
    - DST
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 151
    functionDepth: 2
    functionLinenumber: 151
    functionLinenumberEnd: 210
    functionName: SafeAny::details::convertNumber
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::details::is_same
    - SafeAny::details::checkLowerLimit
    - SafeAny::details::is_convertible_type
    - static_cast<DST>
    - SafeAny::details::checkUpperLimit
    - std::runtime_error
    - SafeAny::details::is_signed
    - SafeAny::details::checkTruncation
    - SafeAny::details::is_integer
    linkageType: ''
    returnType: void
    signature: void convertNumber(const SRC& source, DST& target)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 37
    functionName: SafeAny::details::is_integer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_integer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:42,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 40
    functionDepth: 1
    functionLinenumber: 40
    functionLinenumberEnd: 45
    functionName: SafeAny::details::is_convertible_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 3
    functionsReached:
    - SafeAny::details::is_integer
    linkageType: ''
    returnType: bool
    signature: bool is_convertible_type()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:50,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 48
    functionDepth: 1
    functionLinenumber: 48
    functionLinenumberEnd: 51
    functionName: SafeAny::details::is_convertible_to_bool
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::details::is_integer
    linkageType: ''
    returnType: bool
    signature: bool is_convertible_to_bool()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 57
    functionName: SafeAny::details::is_signed
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_signed()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: SafeAny::details::is_same
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_same()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:68,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:68,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:70,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - From
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 72
    functionName: SafeAny::details::checkUpperLimit
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 3
    functionsReached:
    - magic_enum::detail::reflected_max
    - static_cast<From>
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void checkUpperLimit(const From& from)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:81,1
    - Dst: magic_enum::detail::reflected_min
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:84,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:86,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 9
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - From
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 75
    functionDepth: 1
    functionLinenumber: 75
    functionLinenumberEnd: 88
    functionName: SafeAny::details::checkLowerLimit
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 3
    functionsReached:
    - magic_enum::detail::reflected_min
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void checkLowerLimit(const From& from)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:101,1
    - Dst: std::abs
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:105,1
    - Dst: static_cast<int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:105,1
    - Dst: static_cast<int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:105,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:109,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:111,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:123,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:123,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:125,1
    - Dst: std::numeric_limits<To>::lowest
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:125,1
    - Dst: std::nearbyint
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:126,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:128,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:134,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:134,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:135,1
    - Dst: std::numeric_limits<To>::lowest
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:135,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:137,1
    - Dst: static_cast<To>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:139,1
    - Dst: static_cast<From>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:140,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:143,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 23
    argCount: 1
    argNames:
    - ' from'
    argTypes:
    - From
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 91
    functionDepth: 1
    functionLinenumber: 91
    functionLinenumberEnd: 146
    functionName: SafeAny::details::checkTruncation
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 3
    functionsReached:
    - static_cast<To>
    - static_cast<uint64_t>
    - std::nearbyint
    - static_cast<int64_t>
    - std::abs
    - static_cast<From>
    - to_string
    - magic_enum::detail::reflected_max
    - std::numeric_limits<To>::lowest
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void checkTruncation(const From& from)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::details::is_convertible_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:153,1
    - Dst: SafeAny::details::is_convertible_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:153,1
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:156,1
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:156,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:158,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:158,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:162,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:169,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:169,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:169,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:170,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:172,1
    - Dst: SafeAny::details::is_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:175,1
    - Dst: SafeAny::details::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:175,1
    - Dst: SafeAny::details::checkLowerLimit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:177,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:178,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:182,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:182,1
    - Dst: SafeAny::details::checkUpperLimit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:184,1
    - Dst: SafeAny::details::is_signed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:189,1
    - Dst: SafeAny::details::checkLowerLimit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:191,1
    - Dst: SafeAny::details::checkUpperLimit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:193,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:195,1
    - Dst: SafeAny::details::checkTruncation
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:206,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp:208,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 31
    argCount: 2
    argNames:
    - ' source'
    - ' target'
    argTypes:
    - SRC
    - DST
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 151
    functionDepth: 2
    functionLinenumber: 151
    functionLinenumberEnd: 210
    functionName: SafeAny::details::convertNumber
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::details::is_same
    - SafeAny::details::checkLowerLimit
    - SafeAny::details::is_convertible_type
    - static_cast<DST>
    - SafeAny::details::checkUpperLimit
    - std::runtime_error
    - SafeAny::details::is_signed
    - SafeAny::details::checkTruncation
    - SafeAny::details::is_integer
    linkageType: ''
    returnType: void
    signature: void convertNumber(const SRC& source, DST& target)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - gate
    argTypes:
    - Ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 27
    functionName: BT::details::CallbackGate::Guard::Guard
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Guard(Ptr gate)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 29
    functionName: BT::details::CallbackGate::Guard::Guard
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Guard(const Guard&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: '& operator=(const Guard&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Guard
    signature: Guard & operator=(const Guard&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: BT::details::CallbackGate::Guard::Guard
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Guard(Guard&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: '& operator=(Guard&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Guard
    signature: Guard & operator=(Guard&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: completed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionName: ~Guard()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached:
    - completed
    linkageType: ''
    returnType: void
    signature: void ~Guard()
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 53
    functionName: BT::details::CallbackGate::tryStart
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool tryStart()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: BT::details::CallbackGate::close
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void close()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: wait
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 68
    functionName: BT::details::CallbackGate::closeAndDrain
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached:
    - wait
    linkageType: ''
    returnType: void
    signature: void closeAndDrain()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: notify_all
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 79
    functionName: BT::details::CallbackGate::completed
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached:
    - notify_all
    linkageType: ''
    returnType: void
    signature: void completed()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - gate
    argTypes:
    - Ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 27
    functionName: BT::details::CallbackGate::Guard::Guard
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Guard(Ptr gate)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 29
    functionName: BT::details::CallbackGate::Guard::Guard
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Guard(const Guard&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 30
    functionName: '& operator=(const Guard&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Guard
    signature: Guard & operator=(const Guard&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 31
    functionDepth: 0
    functionLinenumber: 31
    functionLinenumberEnd: 31
    functionName: BT::details::CallbackGate::Guard::Guard
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Guard(Guard&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 32
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 32
    functionName: '& operator=(Guard&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Guard
    signature: Guard & operator=(Guard&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: completed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 37
    functionName: ~Guard()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached:
    - completed
    linkageType: ''
    returnType: void
    signature: void ~Guard()
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 53
    functionName: BT::details::CallbackGate::tryStart
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool tryStart()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 60
    functionName: BT::details::CallbackGate::close
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void close()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: wait
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 63
    functionDepth: 0
    functionLinenumber: 63
    functionLinenumberEnd: 68
    functionName: BT::details::CallbackGate::closeAndDrain
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached:
    - wait
    linkageType: ''
    returnType: void
    signature: void closeAndDrain()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: notify_all
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h:77,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 79
    functionName: BT::details::CallbackGate::completed
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
    functionUses: 0
    functionsReached:
    - notify_all
    linkageType: ''
    returnType: void
    signature: void completed()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 23
    functionName: BT::details::Semaphore::Semaphore
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Semaphore(unsigned int count = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fetch_add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:27,1
    - Dst: notify_one
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: BT::details::Semaphore::notify
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - fetch_add
    - notify_one
    linkageType: ''
    returnType: void
    signature: void notify()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: wait_until
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:35,1
    - Dst: fetch_sub
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:43,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' point'
    argTypes:
    - std::chrono::time_point<Clock, Duration>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 49
    functionName: BT::details::Semaphore::waitUntil
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - fetch_sub
    - wait_until
    linkageType: ''
    returnType: bool
    signature: bool waitUntil(const std::chrono::time_point<Clock, Duration>& point)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notify_one
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionName: BT::details::Semaphore::manualUnlock
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - notify_one
    linkageType: ''
    returnType: void
    signature: void manualUnlock()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 23
    functionName: BT::details::Semaphore::Semaphore
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Semaphore(unsigned int count = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fetch_add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:27,1
    - Dst: notify_one
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: BT::details::Semaphore::notify
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - fetch_add
    - notify_one
    linkageType: ''
    returnType: void
    signature: void notify()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: wait_until
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:35,1
    - Dst: fetch_sub
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:43,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' point'
    argTypes:
    - std::chrono::time_point<Clock, Duration>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 49
    functionName: BT::details::Semaphore::waitUntil
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - fetch_sub
    - wait_until
    linkageType: ''
    returnType: bool
    signature: bool waitUntil(const std::chrono::time_point<Clock, Duration>& point)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notify_one
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionName: BT::details::Semaphore::manualUnlock
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - notify_one
    linkageType: ''
    returnType: void
    signature: void manualUnlock()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: store
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:82,1
    - Dst: std::thread
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:83,1
    - Dst: BT::TimerQueue::run
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 80
    functionDepth: 1
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionName: BT::TimerQueue::TimerQueue
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - BT::TimerQueue::run
    - std::thread
    - store
    linkageType: ''
    returnType: void
    signature: void TimerQueue()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: store
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:88,1
    - Dst: cancelAll
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:89,1
    - Dst: joinable
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:90,1
    - Dst: join
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 94
    functionName: ~TimerQueue()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - joinable
    - join
    - cancelAll
    - store
    linkageType: ''
    returnType: void
    signature: void ~TimerQueue()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ClockT::now
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:103,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:104,1
    - Dst: push
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:109,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:109,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:110,1
    - Dst: notify
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - milliseconds
    - handler
    argTypes:
    - std::chrono::milliseconds
    - std::function<void(bool)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 115
    functionName: BT::TimerQueue::add
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - push
    - std::move
    - ClockT::now
    - notify
    - std::unique_lock::unlock
    linkageType: ''
    returnType: uint64_t
    signature: uint64_t add(std::chrono::milliseconds milliseconds, std::function<void(bool)>
      handler)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getContainer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:130,1
    - Dst: std::chrono::time_point<ClockT, DurationT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:136,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:143,1
    - Dst: push
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:145,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:145,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:147,1
    - Dst: notify
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:149,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - id
    argTypes:
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 154
    functionName: BT::TimerQueue::cancel
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - push
    - std::move
    - std::chrono::time_point<ClockT, DurationT>
    - notify
    - std::unique_lock::unlock
    - getContainer
    linkageType: ''
    returnType: size_t
    signature: size_t cancel(uint64_t id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getContainer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:164,1
    - Dst: std::chrono::time_point<ClockT, DurationT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:168,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:172,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:174,1
    - Dst: notify
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:175,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 177
    functionName: BT::TimerQueue::cancelAll
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - std::chrono::time_point<ClockT, DurationT>
    - size
    - notify
    - std::unique_lock::unlock
    - getContainer
    linkageType: ''
    returnType: size_t
    signature: size_t cancelAll()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 179
    functionName: BT::TimerQueue::TimerQueue
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TimerQueue(const TimerQueue&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 180
    functionName: '& operator=(const TimerQueue&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimerQueue
    signature: TimerQueue & operator=(const TimerQueue&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 181
    functionName: BT::TimerQueue::TimerQueue
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TimerQueue(TimerQueue&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 182
    functionName: '& operator=(TimerQueue&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimerQueue
    signature: TimerQueue & operator=(TimerQueue&&)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: load
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:187,1
    - Dst: BT::TimerQueue::calcWaitTime
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:189,1
    - Dst: waitUntil
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:194,1
    - Dst: waitUntil
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:199,1
    - Dst: ClockT::now
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:199,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:199,1
    - Dst: BT::TimerQueue::checkWork
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:204,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:209,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:209,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (m_items.size() == 0)
      pos:
        line_end: 208
        line_start: 208
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    constantsTouched: []
    func_position:
      end: 210
      start: 185
    functionDepth: 1
    functionLinenumber: 185
    functionLinenumberEnd: 210
    functionName: BT::TimerQueue::run
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 1
    functionsReached:
    - waitUntil
    - assert
    - size
    - load
    - ClockT::now
    - std::chrono::milliseconds
    - BT::TimerQueue::calcWaitTime
    - BT::TimerQueue::checkWork
    linkageType: ''
    returnType: void
    signature: void run()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:215,1
    - Dst: top
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:217,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:220,1
    - Dst: top
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:220,1
    - Dst: pop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:225,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:231,1
    - Dst: std::chrono::time_point<ClockT, DurationT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:231,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 232
    functionName: BT::TimerQueue::calcWaitTime
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 1
    functionsReached:
    - std::make_pair
    - std::chrono::time_point<ClockT, DurationT>
    - size
    - top
    - pop
    linkageType: ''
    returnType: std::pair<bool, std::chrono::time_point<ClockT, DurationT>>
    signature: std::pair<bool, std::chrono::time_point<ClockT, DurationT>> calcWaitTime()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:237,1
    - Dst: top
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:237,1
    - Dst: ClockT::now
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:237,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:239,1
    - Dst: top
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:239,1
    - Dst: pop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:240,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:242,1
    - Dst: WorkItem::handler
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:245,1
    - Dst: std::unique_lock::lock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:247,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 249
    functionName: BT::TimerQueue::checkWork
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 1
    functionsReached:
    - std::unique_lock::lock
    - std::move
    - top
    - size
    - WorkItem::handler
    - ClockT::now
    - pop
    - std::unique_lock::unlock
    linkageType: ''
    returnType: void
    signature: void checkWork()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - WorkItem
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 264
    functionName: operator>(const WorkItem& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>(const WorkItem& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 276
    functionName: '& getContainer()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<WorkItem>
    signature: std::vector<WorkItem> & getContainer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 23
    functionName: BT::details::Semaphore::Semaphore
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Semaphore(unsigned int count = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fetch_add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:27,1
    - Dst: notify_one
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: BT::details::Semaphore::notify
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - fetch_add
    - notify_one
    linkageType: ''
    returnType: void
    signature: void notify()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: wait_until
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:35,1
    - Dst: fetch_sub
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:43,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' point'
    argTypes:
    - std::chrono::time_point<Clock, Duration>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 49
    functionName: BT::details::Semaphore::waitUntil
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - fetch_sub
    - wait_until
    linkageType: ''
    returnType: bool
    signature: bool waitUntil(const std::chrono::time_point<Clock, Duration>& point)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notify_one
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionName: BT::details::Semaphore::manualUnlock
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - notify_one
    linkageType: ''
    returnType: void
    signature: void manualUnlock()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 23
    functionName: BT::details::Semaphore::Semaphore
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Semaphore(unsigned int count = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: fetch_add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:27,1
    - Dst: notify_one
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: BT::details::Semaphore::notify
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - fetch_add
    - notify_one
    linkageType: ''
    returnType: void
    signature: void notify()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: wait_until
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:35,1
    - Dst: fetch_sub
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:43,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' point'
    argTypes:
    - std::chrono::time_point<Clock, Duration>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 49
    functionName: BT::details::Semaphore::waitUntil
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - fetch_sub
    - wait_until
    linkageType: ''
    returnType: bool
    signature: bool waitUntil(const std::chrono::time_point<Clock, Duration>& point)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notify_one
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:54,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 55
    functionName: BT::details::Semaphore::manualUnlock
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - notify_one
    linkageType: ''
    returnType: void
    signature: void manualUnlock()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: store
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:82,1
    - Dst: std::thread
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:83,1
    - Dst: BT::TimerQueue::run
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 80
    functionDepth: 2
    functionLinenumber: 80
    functionLinenumberEnd: 84
    functionName: BT::TimerQueue::TimerQueue
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - BT::TimerQueue::run
    - std::thread
    - store
    linkageType: ''
    returnType: void
    signature: void TimerQueue()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: store
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:88,1
    - Dst: cancelAll
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:89,1
    - Dst: joinable
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:90,1
    - Dst: join
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:92,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 94
    functionName: ~TimerQueue()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - joinable
    - join
    - cancelAll
    - store
    linkageType: ''
    returnType: void
    signature: void ~TimerQueue()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ClockT::now
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:103,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:104,1
    - Dst: push
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:109,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:109,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:110,1
    - Dst: notify
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - milliseconds
    - handler
    argTypes:
    - std::chrono::milliseconds
    - std::function<void(bool)>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 100
    functionDepth: 0
    functionLinenumber: 100
    functionLinenumberEnd: 115
    functionName: BT::TimerQueue::add
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - push
    - std::move
    - ClockT::now
    - notify
    - std::unique_lock::unlock
    linkageType: ''
    returnType: uint64_t
    signature: uint64_t add(std::chrono::milliseconds milliseconds, std::function<void(bool)>
      handler)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getContainer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:130,1
    - Dst: std::chrono::time_point<ClockT, DurationT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:136,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:143,1
    - Dst: push
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:145,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:145,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:147,1
    - Dst: notify
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:149,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - id
    argTypes:
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 154
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 154
    functionName: BT::TimerQueue::cancel
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - push
    - std::move
    - std::chrono::time_point<ClockT, DurationT>
    - notify
    - std::unique_lock::unlock
    - getContainer
    linkageType: ''
    returnType: size_t
    signature: size_t cancel(uint64_t id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getContainer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:164,1
    - Dst: std::chrono::time_point<ClockT, DurationT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:168,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:172,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:174,1
    - Dst: notify
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:175,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 177
      start: 159
    functionDepth: 1
    functionLinenumber: 159
    functionLinenumberEnd: 177
    functionName: BT::TimerQueue::cancelAll
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached:
    - std::chrono::time_point<ClockT, DurationT>
    - size
    - notify
    - std::unique_lock::unlock
    - getContainer
    linkageType: ''
    returnType: size_t
    signature: size_t cancelAll()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 179
      start: 179
    functionDepth: 0
    functionLinenumber: 179
    functionLinenumberEnd: 179
    functionName: BT::TimerQueue::TimerQueue
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TimerQueue(const TimerQueue&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 180
    functionDepth: 0
    functionLinenumber: 180
    functionLinenumberEnd: 180
    functionName: '& operator=(const TimerQueue&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimerQueue
    signature: TimerQueue & operator=(const TimerQueue&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 181
    functionDepth: 0
    functionLinenumber: 181
    functionLinenumberEnd: 181
    functionName: BT::TimerQueue::TimerQueue
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void TimerQueue(TimerQueue&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 182
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 182
    functionName: '& operator=(TimerQueue&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: TimerQueue
    signature: TimerQueue & operator=(TimerQueue&&)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: load
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:187,1
    - Dst: BT::TimerQueue::calcWaitTime
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:189,1
    - Dst: waitUntil
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:194,1
    - Dst: waitUntil
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:199,1
    - Dst: ClockT::now
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:199,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:199,1
    - Dst: BT::TimerQueue::checkWork
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:204,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:209,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:209,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (m_items.size() == 0)
      pos:
        line_end: 208
        line_start: 208
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    constantsTouched: []
    func_position:
      end: 210
      start: 185
    functionDepth: 2
    functionLinenumber: 185
    functionLinenumberEnd: 210
    functionName: BT::TimerQueue::run
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 2
    functionsReached:
    - waitUntil
    - assert
    - size
    - load
    - ClockT::now
    - std::chrono::milliseconds
    - BT::TimerQueue::calcWaitTime
    - BT::TimerQueue::checkWork
    linkageType: ''
    returnType: void
    signature: void run()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:215,1
    - Dst: top
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:217,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:220,1
    - Dst: top
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:220,1
    - Dst: pop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:225,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:231,1
    - Dst: std::chrono::time_point<ClockT, DurationT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:231,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 232
      start: 212
    functionDepth: 1
    functionLinenumber: 212
    functionLinenumberEnd: 232
    functionName: BT::TimerQueue::calcWaitTime
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 2
    functionsReached:
    - std::make_pair
    - std::chrono::time_point<ClockT, DurationT>
    - size
    - top
    - pop
    linkageType: ''
    returnType: std::pair<bool, std::chrono::time_point<ClockT, DurationT>>
    signature: std::pair<bool, std::chrono::time_point<ClockT, DurationT>> calcWaitTime()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:237,1
    - Dst: top
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:237,1
    - Dst: ClockT::now
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:237,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:239,1
    - Dst: top
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:239,1
    - Dst: pop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:240,1
    - Dst: std::unique_lock::unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:242,1
    - Dst: WorkItem::handler
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:245,1
    - Dst: std::unique_lock::lock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h:247,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 234
    functionDepth: 1
    functionLinenumber: 234
    functionLinenumberEnd: 249
    functionName: BT::TimerQueue::checkWork
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 2
    functionsReached:
    - std::unique_lock::lock
    - std::move
    - top
    - size
    - WorkItem::handler
    - ClockT::now
    - pop
    - std::unique_lock::unlock
    linkageType: ''
    returnType: void
    signature: void checkWork()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - WorkItem
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 264
      start: 261
    functionDepth: 0
    functionLinenumber: 261
    functionLinenumberEnd: 264
    functionName: operator>(const WorkItem& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>(const WorkItem& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 276
    functionName: '& getContainer()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::vector<WorkItem>
    signature: std::vector<WorkItem> & getContainer()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: ~SharedLibrary()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/shared_library.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SharedLibrary()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 131
    functionName: BT::SharedLibrary::SharedLibrary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/shared_library.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SharedLibrary(const SharedLibrary&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 132
    functionName: '& operator=(const SharedLibrary&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/shared_library.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SharedLibrary
    signature: SharedLibrary & operator=(const SharedLibrary&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 133
    functionName: BT::SharedLibrary::SharedLibrary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/shared_library.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SharedLibrary(SharedLibrary&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 134
    functionName: '& operator=(SharedLibrary&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/shared_library.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SharedLibrary
    signature: SharedLibrary & operator=(SharedLibrary&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: ~SharedLibrary()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/shared_library.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~SharedLibrary()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 131
    functionName: BT::SharedLibrary::SharedLibrary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/shared_library.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SharedLibrary(const SharedLibrary&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 132
    functionName: '& operator=(const SharedLibrary&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/shared_library.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SharedLibrary
    signature: SharedLibrary & operator=(const SharedLibrary&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 133
    functionDepth: 0
    functionLinenumber: 133
    functionLinenumberEnd: 133
    functionName: BT::SharedLibrary::SharedLibrary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/shared_library.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SharedLibrary(SharedLibrary&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 134
    functionName: '& operator=(SharedLibrary&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/shared_library.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: SharedLibrary
    signature: SharedLibrary & operator=(SharedLibrary&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:28,1
    - Dst: std::string*::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:30,1
    - Dst: std::string*::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:30,1
    - Dst: std::string*::append
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:33,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:33,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:33,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - dest
    - pieces
    argTypes:
    - std::string*
    - std::initializer_list<std::string_view>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 35
    functionName: BT::strings_internal::AppendPieces
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 0
    functionsReached:
    - std::string*::size
    - std::string*::reserve
    - size
    - data
    - std::string*::append
    linkageType: ''
    returnType: void
    signature: "void AppendPieces(std::string* dest,\n                         std::initializer_list<std::string_view>
      pieces)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::strings_internal::AppendPieces
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:40,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pieces
    argTypes:
    - std::initializer_list<std::string_view>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: BT::strings_internal::CatPieces
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 0
    functionsReached:
    - BT::strings_internal::AppendPieces
    - std::move
    linkageType: ''
    returnType: std::string
    signature: std::string CatPieces(std::initializer_list<std::string_view> pieces)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:28,1
    - Dst: std::string*::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:30,1
    - Dst: std::string*::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:30,1
    - Dst: std::string*::append
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:33,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:33,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:33,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - dest
    - pieces
    argTypes:
    - std::string*
    - std::initializer_list<std::string_view>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 35
    functionName: BT::strings_internal::AppendPieces
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 1
    functionsReached:
    - std::string*::size
    - std::string*::reserve
    - size
    - data
    - std::string*::append
    linkageType: ''
    returnType: void
    signature: "void AppendPieces(std::string* dest,\n                         std::initializer_list<std::string_view>
      pieces)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::strings_internal::AppendPieces
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:40,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pieces
    argTypes:
    - std::initializer_list<std::string_view>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: BT::strings_internal::CatPieces
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 0
    functionsReached:
    - BT::strings_internal::AppendPieces
    - std::move
    linkageType: ''
    returnType: std::string
    signature: std::string CatPieces(std::initializer_list<std::string_view> pieces)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: BT::StrCat
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 19
    functionsReached:
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string StrCat()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:53,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:53,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: BT::StrCat
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 19
    functionsReached:
    - data
    - size
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string StrCat(const std::string_view& a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::strings_internal::CatPieces
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' a'
    - ' b'
    argTypes:
    - std::string_view
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 3
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: BT::StrCat
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 19
    functionsReached:
    - BT::strings_internal::CatPieces
    linkageType: ''
    returnType: std::string
    signature: std::string StrCat(const std::string_view& a, const std::string_view&
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::strings_internal::CatPieces
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' a'
    - ' b'
    - ' c'
    argTypes:
    - std::string_view
    - std::string_view
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 61
    functionDepth: 3
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionName: BT::StrCat
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 19
    functionsReached:
    - BT::strings_internal::CatPieces
    linkageType: ''
    returnType: std::string
    signature: "std::string StrCat(const std::string_view& a, const std::string_view&
      b,\n                          const std::string_view& c)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::strings_internal::CatPieces
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:73,1
    - Dst: static_cast<const std::string_view&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' a'
    - ' b'
    - ' c'
    - ' d'
    argTypes:
    - std::string_view
    - std::string_view
    - std::string_view
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 69
    functionDepth: 3
    functionLinenumber: 69
    functionLinenumberEnd: 75
    functionName: BT::StrCat
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 19
    functionsReached:
    - BT::strings_internal::CatPieces
    - static_cast<const std::string_view&>
    linkageType: ''
    returnType: std::string
    signature: "std::string StrCat(const std::string_view& a, const std::string_view&
      b,\n                          const std::string_view& c, const std::string_view&
      d,\n                          const AV&... args)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string*::append
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:81,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:81,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - destination
    - ' a'
    argTypes:
    - std::string*
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: BT::StrAppend
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 0
    functionsReached:
    - std::string*::append
    - data
    - size
    linkageType: ''
    returnType: void
    signature: void StrAppend(std::string* destination, const std::string_view& a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::strings_internal::AppendPieces
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - destination
    - ' a'
    - ' b'
    argTypes:
    - std::string*
    - std::string_view
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 88
    functionName: BT::StrAppend
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 0
    functionsReached:
    - BT::strings_internal::AppendPieces
    linkageType: ''
    returnType: void
    signature: "void StrAppend(std::string* destination, const std::string_view& a,\n
      \                     const std::string_view& b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::strings_internal::AppendPieces
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - destination
    - ' a'
    - ' b'
    - ' c'
    argTypes:
    - std::string*
    - std::string_view
    - std::string_view
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: BT::StrAppend
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 0
    functionsReached:
    - BT::strings_internal::AppendPieces
    linkageType: ''
    returnType: void
    signature: "void StrAppend(std::string* destination, const std::string_view& a,\n
      \                     const std::string_view& b, const std::string_view& c)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::strings_internal::AppendPieces
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:102,1
    - Dst: static_cast<const std::string_view&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - destination
    - ' a'
    - ' b'
    - ' c'
    - ' d'
    argTypes:
    - std::string*
    - std::string_view
    - std::string_view
    - std::string_view
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 98
    functionDepth: 2
    functionLinenumber: 98
    functionLinenumberEnd: 104
    functionName: BT::StrAppend
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 0
    functionsReached:
    - BT::strings_internal::AppendPieces
    - static_cast<const std::string_view&>
    linkageType: ''
    returnType: void
    signature: "void StrAppend(std::string* destination, const std::string_view& a,\n
      \                     const std::string_view& b, const std::string_view& c,\n
      \                     const std::string_view& d, const AV&... args)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:28,1
    - Dst: std::string*::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:30,1
    - Dst: std::string*::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:30,1
    - Dst: std::string*::append
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:33,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:33,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:33,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - dest
    - pieces
    argTypes:
    - std::string*
    - std::initializer_list<std::string_view>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 35
    functionName: BT::strings_internal::AppendPieces
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 5
    functionsReached:
    - std::string*::size
    - std::string*::reserve
    - size
    - data
    - std::string*::append
    linkageType: ''
    returnType: void
    signature: "void AppendPieces(std::string* dest,\n                         std::initializer_list<std::string_view>
      pieces)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::strings_internal::AppendPieces
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:40,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pieces
    argTypes:
    - std::initializer_list<std::string_view>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: BT::strings_internal::CatPieces
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 3
    functionsReached:
    - BT::strings_internal::AppendPieces
    - std::move
    linkageType: ''
    returnType: std::string
    signature: std::string CatPieces(std::initializer_list<std::string_view> pieces)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:28,1
    - Dst: std::string*::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:30,1
    - Dst: std::string*::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:30,1
    - Dst: std::string*::append
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:33,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:33,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:33,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - dest
    - pieces
    argTypes:
    - std::string*
    - std::initializer_list<std::string_view>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 35
    functionName: BT::strings_internal::AppendPieces
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 6
    functionsReached:
    - std::string*::size
    - std::string*::reserve
    - size
    - data
    - std::string*::append
    linkageType: ''
    returnType: void
    signature: "void AppendPieces(std::string* dest,\n                         std::initializer_list<std::string_view>
      pieces)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::strings_internal::AppendPieces
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:40,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - pieces
    argTypes:
    - std::initializer_list<std::string_view>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 2
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: BT::strings_internal::CatPieces
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 3
    functionsReached:
    - BT::strings_internal::AppendPieces
    - std::move
    linkageType: ''
    returnType: std::string
    signature: std::string CatPieces(std::initializer_list<std::string_view> pieces)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: BT::StrCat
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 19
    functionsReached:
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string StrCat()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:53,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:53,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' a'
    argTypes:
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 1
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: BT::StrCat
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 19
    functionsReached:
    - data
    - size
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string StrCat(const std::string_view& a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::strings_internal::CatPieces
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:58,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' a'
    - ' b'
    argTypes:
    - std::string_view
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 59
      start: 56
    functionDepth: 3
    functionLinenumber: 56
    functionLinenumberEnd: 59
    functionName: BT::StrCat
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 19
    functionsReached:
    - BT::strings_internal::CatPieces
    linkageType: ''
    returnType: std::string
    signature: std::string StrCat(const std::string_view& a, const std::string_view&
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::strings_internal::CatPieces
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' a'
    - ' b'
    - ' c'
    argTypes:
    - std::string_view
    - std::string_view
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 65
      start: 61
    functionDepth: 3
    functionLinenumber: 61
    functionLinenumberEnd: 65
    functionName: BT::StrCat
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 19
    functionsReached:
    - BT::strings_internal::CatPieces
    linkageType: ''
    returnType: std::string
    signature: "std::string StrCat(const std::string_view& a, const std::string_view&
      b,\n                          const std::string_view& c)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::strings_internal::CatPieces
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:73,1
    - Dst: static_cast<const std::string_view&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:74,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - ' a'
    - ' b'
    - ' c'
    - ' d'
    argTypes:
    - std::string_view
    - std::string_view
    - std::string_view
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 69
    functionDepth: 3
    functionLinenumber: 69
    functionLinenumberEnd: 75
    functionName: BT::StrCat
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 19
    functionsReached:
    - BT::strings_internal::CatPieces
    - static_cast<const std::string_view&>
    linkageType: ''
    returnType: std::string
    signature: "std::string StrCat(const std::string_view& a, const std::string_view&
      b,\n                          const std::string_view& c, const std::string_view&
      d,\n                          const AV&... args)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string*::append
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:81,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:81,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:81,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - destination
    - ' a'
    argTypes:
    - std::string*
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 82
      start: 79
    functionDepth: 1
    functionLinenumber: 79
    functionLinenumberEnd: 82
    functionName: BT::StrAppend
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 0
    functionsReached:
    - std::string*::append
    - data
    - size
    linkageType: ''
    returnType: void
    signature: void StrAppend(std::string* destination, const std::string_view& a)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::strings_internal::AppendPieces
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:87,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - destination
    - ' a'
    - ' b'
    argTypes:
    - std::string*
    - std::string_view
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 84
    functionDepth: 2
    functionLinenumber: 84
    functionLinenumberEnd: 88
    functionName: BT::StrAppend
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 0
    functionsReached:
    - BT::strings_internal::AppendPieces
    linkageType: ''
    returnType: void
    signature: "void StrAppend(std::string* destination, const std::string_view& a,\n
      \                     const std::string_view& b)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::strings_internal::AppendPieces
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - destination
    - ' a'
    - ' b'
    - ' c'
    argTypes:
    - std::string*
    - std::string_view
    - std::string_view
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 94
    functionName: BT::StrAppend
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 0
    functionsReached:
    - BT::strings_internal::AppendPieces
    linkageType: ''
    returnType: void
    signature: "void StrAppend(std::string* destination, const std::string_view& a,\n
      \                     const std::string_view& b, const std::string_view& c)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::strings_internal::AppendPieces
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:102,1
    - Dst: static_cast<const std::string_view&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - destination
    - ' a'
    - ' b'
    - ' c'
    - ' d'
    argTypes:
    - std::string*
    - std::string_view
    - std::string_view
    - std::string_view
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 104
      start: 98
    functionDepth: 2
    functionLinenumber: 98
    functionLinenumberEnd: 104
    functionName: BT::StrAppend
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
    functionUses: 0
    functionsReached:
    - BT::strings_internal::AppendPieces
    - static_cast<const std::string_view&>
    linkageType: ''
    returnType: void
    signature: "void StrAppend(std::string* destination, const std::string_view& a,\n
      \                     const std::string_view& b, const std::string_view& c,\n
      \                     const std::string_view& d, const AV&... args)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/wildcards.hpp:23,1
    - Dst: std::string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/wildcards.hpp:24,1
    - Dst: get_memo
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/wildcards.hpp:37,1
    - Dst: match_ref
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/wildcards.hpp:46,1
    - Dst: match_ref
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/wildcards.hpp:49,1
    - Dst: match_ref
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/wildcards.hpp:54,1
    - Dst: match
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/wildcards.hpp:65,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - str
    - pattern
    argTypes:
    - std::string_view
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 21
    functionDepth: 1
    functionLinenumber: 21
    functionLinenumberEnd: 66
    functionName: wildcards_match
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/wildcards.hpp
    functionUses: 5
    functionsReached:
    - std::string_view::size
    - match_ref
    - get_memo
    - match
    linkageType: ''
    returnType: bool
    signature: bool wildcards_match(std::string_view str, std::string_view pattern)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 20
    functionName: BT::LockedPtr::LockedPtr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LockedPtr()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::LockedPtr::lock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:24,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - obj
    - obj_mutex
    argTypes:
    - T*
    - std::mutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 22
    functionDepth: 1
    functionLinenumber: 22
    functionLinenumberEnd: 25
    functionName: BT::LockedPtr::LockedPtr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached:
    - BT::LockedPtr::lock
    linkageType: ''
    returnType: void
    signature: void LockedPtr(T* obj, std::mutex* obj_mutex)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:31,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: ~LockedPtr()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached:
    - unlock
    linkageType: ''
    returnType: void
    signature: void ~LockedPtr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: BT::LockedPtr::LockedPtr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LockedPtr(LockedPtr const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: '& operator=(LockedPtr const&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: LockedPtr
    signature: LockedPtr & operator=(LockedPtr const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:40,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - LockedPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionName: BT::LockedPtr::LockedPtr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: void
    signature: void LockedPtr(LockedPtr&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:46,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - LockedPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: '& operator=(LockedPtr&& other) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: LockedPtr
    signature: LockedPtr & operator=(LockedPtr&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: operator bool() const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator bool() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::LockedPtr::lock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 62
    functionName: BT::LockedPtr::lock
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 2
    functionsReached:
    - BT::LockedPtr::lock
    linkageType: ''
    returnType: void
    signature: void lock()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::LockedPtr::unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 70
    functionName: BT::LockedPtr::unlock
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 1
    functionsReached:
    - BT::LockedPtr::unlock
    linkageType: ''
    returnType: void
    signature: void unlock()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: BT::LockedPtr::get
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T * get() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: '* operator->() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T * operator->() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: '* operator->()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T * operator->()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:92,1
    - Dst: copyInto
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:100,1
    - Dst: T
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:104,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - OtherT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 106
    functionName: BT::LockedPtr::assign
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached:
    - copyInto
    - T
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void assign(const OtherT& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 20
    functionName: BT::LockedPtr::LockedPtr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LockedPtr()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::LockedPtr::lock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:24,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - obj
    - obj_mutex
    argTypes:
    - T*
    - std::mutex*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 22
    functionDepth: 2
    functionLinenumber: 22
    functionLinenumberEnd: 25
    functionName: BT::LockedPtr::LockedPtr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached:
    - BT::LockedPtr::lock
    linkageType: ''
    returnType: void
    signature: void LockedPtr(T* obj, std::mutex* obj_mutex)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:31,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 33
    functionName: ~LockedPtr()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached:
    - unlock
    linkageType: ''
    returnType: void
    signature: void ~LockedPtr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 35
    functionName: BT::LockedPtr::LockedPtr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void LockedPtr(LockedPtr const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 36
    functionDepth: 0
    functionLinenumber: 36
    functionLinenumberEnd: 36
    functionName: '& operator=(LockedPtr const&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: LockedPtr
    signature: LockedPtr & operator=(LockedPtr const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:40,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - LockedPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 42
    functionName: BT::LockedPtr::LockedPtr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: void
    signature: void LockedPtr(LockedPtr&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:46,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:47,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - LockedPtr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: '& operator=(LockedPtr&& other) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: LockedPtr
    signature: LockedPtr & operator=(LockedPtr&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 54
    functionName: operator bool() const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator bool() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::LockedPtr::lock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:60,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 56
    functionDepth: 1
    functionLinenumber: 56
    functionLinenumberEnd: 62
    functionName: BT::LockedPtr::lock
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 4
    functionsReached:
    - BT::LockedPtr::lock
    linkageType: ''
    returnType: void
    signature: void lock()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::LockedPtr::unlock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:68,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 64
    functionDepth: 1
    functionLinenumber: 64
    functionLinenumberEnd: 70
    functionName: BT::LockedPtr::unlock
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 2
    functionsReached:
    - BT::LockedPtr::unlock
    linkageType: ''
    returnType: void
    signature: void unlock()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 72
    functionDepth: 0
    functionLinenumber: 72
    functionLinenumberEnd: 75
    functionName: BT::LockedPtr::get
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T * get() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: '* operator->() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T * operator->() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 85
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 85
    functionName: '* operator->()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T * operator->()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:92,1
    - Dst: copyInto
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:100,1
    - Dst: T
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp:104,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - OtherT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 106
    functionName: BT::LockedPtr::assign
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
    functionUses: 0
    functionsReached:
    - copyInto
    - T
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void assign(const OtherT& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: BT::PolymorphicCastRegistry::PolymorphicCastRegistry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PolymorphicCastRegistry()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: ~PolymorphicCastRegistry()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~PolymorphicCastRegistry()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: BT::PolymorphicCastRegistry::PolymorphicCastRegistry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PolymorphicCastRegistry(const PolymorphicCastRegistry&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: '& operator=(const PolymorphicCastRegistry&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PolymorphicCastRegistry
    signature: PolymorphicCastRegistry & operator=(const PolymorphicCastRegistry&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: BT::PolymorphicCastRegistry::PolymorphicCastRegistry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PolymorphicCastRegistry(PolymorphicCastRegistry&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: '& operator=(PolymorphicCastRegistry&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PolymorphicCastRegistry
    signature: PolymorphicCastRegistry & operator=(PolymorphicCastRegistry&&)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:81,1
    - Dst: std::type_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:81,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:81,1
    - Dst: std::type_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:82,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:82,1
    - Dst: linb::any_cast<std::shared_ptr<Derived>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:85,1
    - Dst: std::static_pointer_cast<Base>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:86,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:90,1
    - Dst: std::type_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:90,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:90,1
    - Dst: std::type_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:91,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:91,1
    - Dst: linb::any_cast<std::shared_ptr<Base>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:94,1
    - Dst: std::dynamic_pointer_cast<Derived>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:95,1
    - Dst: std::bad_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:98,1
    - Dst: std::type_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:104,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:104,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:104,1
    - Dst: std::type_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:105,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:105,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 106
    functionName: BT::PolymorphicCastRegistry::registerCast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached:
    - linb::any_cast<std::shared_ptr<Derived>>
    - typeid
    - std::make_pair
    - std::type_index
    - std::bad_cast
    - std::dynamic_pointer_cast<Derived>
    - insert
    - std::static_pointer_cast<Base>
    - linb::any_cast<std::shared_ptr<Base>>
    linkageType: ''
    returnType: void
    signature: void registerCast()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:127,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:128,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:128,1
    - Dst: BT::PolymorphicCastRegistry::canUpcastTransitive
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:134,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:140,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:141,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:141,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - from_type
    - to_type
    argTypes:
    - std::type_index
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 147
    functionName: BT::PolymorphicCastRegistry::isConvertible
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached:
    - BT::PolymorphicCastRegistry::canUpcastTransitive
    - find
    - end
    - std::make_pair
    linkageType: ''
    returnType: bool
    signature: "bool isConvertible(std::type_index from_type,\n                                   std::type_index
      to_type) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::PolymorphicCastRegistry::canUpcastTransitive
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - from_type
    - to_type
    argTypes:
    - std::type_index
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 155
    functionDepth: 1
    functionLinenumber: 155
    functionLinenumberEnd: 164
    functionName: BT::PolymorphicCastRegistry::canUpcast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached:
    - BT::PolymorphicCastRegistry::canUpcastTransitive
    linkageType: ''
    returnType: bool
    signature: bool canUpcast(std::type_index from_type, std::type_index to_type)
      const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:185,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:186,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:187,1
    - Dst: auto::second
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:191,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:195,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:195,1
    - Dst: what
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:195,1
    - Dst: BT::PolymorphicCastRegistry::applyTransitiveCasts
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:200,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:207,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:208,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:209,1
    - Dst: auto::second
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:213,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:217,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:217,1
    - Dst: what
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:220,1
    - Dst: BT::PolymorphicCastRegistry::applyTransitiveCasts
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:226,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:232,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:232,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 3
    argNames:
    - ' from'
    - from_type
    - to_type
    argTypes:
    - linb::any
    - std::type_index
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 174
    functionDepth: 1
    functionLinenumber: 174
    functionLinenumberEnd: 234
    functionName: BT::PolymorphicCastRegistry::tryCast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached:
    - find
    - std::make_pair
    - string
    - nonstd::make_unexpected
    - what
    - end
    - BT::PolymorphicCastRegistry::applyTransitiveCasts
    - auto::second
    linkageType: ''
    returnType: nonstd::expected<linb::any, std::string>
    signature: nonstd::expected<linb::any, std::string> tryCast(const linb::any& from,
      std::type_index from_type, std::type_index to_type) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:242,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:243,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - type
    argTypes:
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 239
    functionDepth: 1
    functionLinenumber: 239
    functionLinenumberEnd: 248
    functionName: BT::PolymorphicCastRegistry::getBaseTypes
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached:
    - find
    - end
    linkageType: ''
    returnType: std::set<std::type_index>
    signature: std::set<std::type_index> getBaseTypes(std::type_index type) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::PolymorphicCastRegistry::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:256,1
    - Dst: BT::PolymorphicCastRegistry::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:257,1
    - Dst: BT::PolymorphicCastRegistry::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 259
    functionName: BT::PolymorphicCastRegistry::clear
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 1
    functionsReached:
    - BT::PolymorphicCastRegistry::clear
    linkageType: ''
    returnType: void
    signature: void clear()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:269,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:271,1
    - Dst: std::vector::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:273,1
    - Dst: std::vector::pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:274,1
    - Dst: std::set::count
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:276,1
    - Dst: std::set::insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:280,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:282,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:283,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:294,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 2
    argNames:
    - from_type
    - to_type
    argTypes:
    - std::type_index
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 298
    functionName: BT::PolymorphicCastRegistry::canUpcastTransitive
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 2
    functionsReached:
    - find
    - std::set::count
    - std::set::insert
    - std::vector::pop_back
    - end
    - std::vector::empty
    - std::vector::back
    - std::vector::push_back
    linkageType: ''
    returnType: bool
    signature: "bool canUpcastTransitive(std::type_index from_type,\n                                         std::type_index
      to_type) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:318,1
    - Dst: std::map::insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:319,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:321,1
    - Dst: std::vector::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:323,1
    - Dst: std::vector::pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:324,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:326,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:327,1
    - Dst: std::map::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:334,1
    - Dst: std::map::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:334,1
    - Dst: std::map::insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:338,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:346,1
    - Dst: std::map::at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:347,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:349,1
    - Dst: std::reverse
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:353,1
    - Dst: std::vector::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:353,1
    - Dst: std::vector::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:353,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:358,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:360,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:361,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:362,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:364,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:364,1
    - Dst: auto::second
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:369,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:373,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:373,1
    - Dst: what
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:375,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:380,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:383,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:383,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 5
    argNames:
    - ' from'
    - dfs_start
    - dfs_target
    - ' cast_map'
    - reverse_path
    argTypes:
    - linb::any
    - std::type_index
    - std::type_index
    - CastMap
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 384
    functionName: BT::PolymorphicCastRegistry::applyTransitiveCasts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 1
    functionsReached:
    - find
    - nonstd::make_unexpected
    - std::map::insert
    - std::vector::size
    - std::vector::back
    - auto::second
    - std::map::at
    - string
    - std::map::end
    - std::vector::pop_back
    - std::vector::end
    - std::vector::begin
    - std::make_pair
    - what
    - end
    - std::vector::empty
    - std::reverse
    - std::map::find
    - std::vector::push_back
    linkageType: ''
    returnType: nonstd::expected<linb::any, std::string>
    signature: "nonstd::expected<linb::any, std::string> applyTransitiveCasts(\n      const
      linb::any& from, std::type_index dfs_start, std::type_index dfs_target,\n      const
      CastMap& cast_map, bool reverse_path) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 51
    functionName: BT::PolymorphicCastRegistry::PolymorphicCastRegistry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PolymorphicCastRegistry()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 52
    functionName: ~PolymorphicCastRegistry()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~PolymorphicCastRegistry()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 55
    functionName: BT::PolymorphicCastRegistry::PolymorphicCastRegistry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PolymorphicCastRegistry(const PolymorphicCastRegistry&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 56
    functionName: '& operator=(const PolymorphicCastRegistry&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PolymorphicCastRegistry
    signature: PolymorphicCastRegistry & operator=(const PolymorphicCastRegistry&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 57
    functionDepth: 0
    functionLinenumber: 57
    functionLinenumberEnd: 57
    functionName: BT::PolymorphicCastRegistry::PolymorphicCastRegistry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PolymorphicCastRegistry(PolymorphicCastRegistry&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 58
    functionName: '& operator=(PolymorphicCastRegistry&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PolymorphicCastRegistry
    signature: PolymorphicCastRegistry & operator=(PolymorphicCastRegistry&&)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:81,1
    - Dst: std::type_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:81,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:81,1
    - Dst: std::type_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:82,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:82,1
    - Dst: linb::any_cast<std::shared_ptr<Derived>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:85,1
    - Dst: std::static_pointer_cast<Base>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:86,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:90,1
    - Dst: std::type_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:90,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:90,1
    - Dst: std::type_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:91,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:91,1
    - Dst: linb::any_cast<std::shared_ptr<Base>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:94,1
    - Dst: std::dynamic_pointer_cast<Derived>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:95,1
    - Dst: std::bad_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:98,1
    - Dst: std::type_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:104,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:104,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:104,1
    - Dst: std::type_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:105,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:105,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 72
    functionDepth: 1
    functionLinenumber: 72
    functionLinenumberEnd: 106
    functionName: BT::PolymorphicCastRegistry::registerCast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached:
    - linb::any_cast<std::shared_ptr<Derived>>
    - typeid
    - std::make_pair
    - std::type_index
    - std::bad_cast
    - std::dynamic_pointer_cast<Derived>
    - insert
    - std::static_pointer_cast<Base>
    - linb::any_cast<std::shared_ptr<Base>>
    linkageType: ''
    returnType: void
    signature: void registerCast()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:127,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:128,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:128,1
    - Dst: BT::PolymorphicCastRegistry::canUpcastTransitive
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:134,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:140,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:141,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:141,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - from_type
    - to_type
    argTypes:
    - std::type_index
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 116
    functionDepth: 2
    functionLinenumber: 116
    functionLinenumberEnd: 147
    functionName: BT::PolymorphicCastRegistry::isConvertible
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached:
    - BT::PolymorphicCastRegistry::canUpcastTransitive
    - find
    - end
    - std::make_pair
    linkageType: ''
    returnType: bool
    signature: "bool isConvertible(std::type_index from_type,\n                                   std::type_index
      to_type) const"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::PolymorphicCastRegistry::canUpcastTransitive
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:163,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - from_type
    - to_type
    argTypes:
    - std::type_index
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 155
    functionDepth: 2
    functionLinenumber: 155
    functionLinenumberEnd: 164
    functionName: BT::PolymorphicCastRegistry::canUpcast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached:
    - BT::PolymorphicCastRegistry::canUpcastTransitive
    linkageType: ''
    returnType: bool
    signature: bool canUpcast(std::type_index from_type, std::type_index to_type)
      const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:185,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:186,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:187,1
    - Dst: auto::second
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:191,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:195,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:195,1
    - Dst: what
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:195,1
    - Dst: BT::PolymorphicCastRegistry::applyTransitiveCasts
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:200,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:207,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:208,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:209,1
    - Dst: auto::second
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:213,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:217,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:217,1
    - Dst: what
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:220,1
    - Dst: BT::PolymorphicCastRegistry::applyTransitiveCasts
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:226,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:232,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:232,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 25
    argCount: 3
    argNames:
    - ' from'
    - from_type
    - to_type
    argTypes:
    - linb::any
    - std::type_index
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 234
      start: 174
    functionDepth: 2
    functionLinenumber: 174
    functionLinenumberEnd: 234
    functionName: BT::PolymorphicCastRegistry::tryCast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached:
    - find
    - std::make_pair
    - string
    - nonstd::make_unexpected
    - what
    - end
    - BT::PolymorphicCastRegistry::applyTransitiveCasts
    - auto::second
    linkageType: ''
    returnType: nonstd::expected<linb::any, std::string>
    signature: nonstd::expected<linb::any, std::string> tryCast(const linb::any& from,
      std::type_index from_type, std::type_index to_type) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:242,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:243,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - type
    argTypes:
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 248
      start: 239
    functionDepth: 1
    functionLinenumber: 239
    functionLinenumberEnd: 248
    functionName: BT::PolymorphicCastRegistry::getBaseTypes
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 0
    functionsReached:
    - find
    - end
    linkageType: ''
    returnType: std::set<std::type_index>
    signature: std::set<std::type_index> getBaseTypes(std::type_index type) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::PolymorphicCastRegistry::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:256,1
    - Dst: BT::PolymorphicCastRegistry::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:257,1
    - Dst: BT::PolymorphicCastRegistry::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 259
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 259
    functionName: BT::PolymorphicCastRegistry::clear
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 2
    functionsReached:
    - BT::PolymorphicCastRegistry::clear
    linkageType: ''
    returnType: void
    signature: void clear()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:269,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:271,1
    - Dst: std::vector::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:273,1
    - Dst: std::vector::pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:274,1
    - Dst: std::set::count
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:276,1
    - Dst: std::set::insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:280,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:282,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:283,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:294,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 2
    argNames:
    - from_type
    - to_type
    argTypes:
    - std::type_index
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 298
    functionName: BT::PolymorphicCastRegistry::canUpcastTransitive
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 4
    functionsReached:
    - find
    - std::set::count
    - std::set::insert
    - std::vector::pop_back
    - end
    - std::vector::empty
    - std::vector::back
    - std::vector::push_back
    linkageType: ''
    returnType: bool
    signature: "bool canUpcastTransitive(std::type_index from_type,\n                                         std::type_index
      to_type) const"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:318,1
    - Dst: std::map::insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:319,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:321,1
    - Dst: std::vector::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:323,1
    - Dst: std::vector::pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:324,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:326,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:327,1
    - Dst: std::map::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:334,1
    - Dst: std::map::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:334,1
    - Dst: std::map::insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:338,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:346,1
    - Dst: std::map::at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:347,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:349,1
    - Dst: std::reverse
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:353,1
    - Dst: std::vector::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:353,1
    - Dst: std::vector::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:353,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:358,1
    - Dst: std::make_pair
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:360,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:361,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:362,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:364,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:364,1
    - Dst: auto::second
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:369,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:373,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:373,1
    - Dst: what
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:375,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:380,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:383,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp:383,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 37
    argCount: 5
    argNames:
    - ' from'
    - dfs_start
    - dfs_target
    - ' cast_map'
    - reverse_path
    argTypes:
    - linb::any
    - std::type_index
    - std::type_index
    - CastMap
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 311
    functionDepth: 1
    functionLinenumber: 311
    functionLinenumberEnd: 384
    functionName: BT::PolymorphicCastRegistry::applyTransitiveCasts
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
    functionUses: 2
    functionsReached:
    - find
    - nonstd::make_unexpected
    - std::map::insert
    - std::vector::size
    - std::vector::back
    - auto::second
    - std::map::at
    - string
    - std::map::end
    - std::vector::pop_back
    - std::vector::end
    - std::vector::begin
    - std::make_pair
    - what
    - end
    - std::vector::empty
    - std::reverse
    - std::map::find
    - std::vector::push_back
    linkageType: ''
    returnType: nonstd::expected<linb::any, std::string>
    signature: "nonstd::expected<linb::any, std::string> applyTransitiveCasts(\n      const
      linb::any& from, std::type_index dfs_start, std::type_index dfs_target,\n      const
      CastMap& cast_map, bool reverse_path) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: demangle_alloc
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: BT::scoped_demangled_name::scoped_demangled_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached:
    - demangle_alloc
    linkageType: ''
    returnType: void
    signature: void scoped_demangled_name(char const* name) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::demangle_free
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: ~scoped_demangled_name() noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached:
    - BT::demangle_free
    linkageType: ''
    returnType: void
    signature: void ~scoped_demangled_name() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: BT::scoped_demangled_name::get
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * get() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: BT::scoped_demangled_name::scoped_demangled_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void scoped_demangled_name(scoped_demangled_name const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: '& operator=(scoped_demangled_name const&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: scoped_demangled_name
    signature: scoped_demangled_name & operator=(scoped_demangled_name const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: BT::scoped_demangled_name::scoped_demangled_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void scoped_demangled_name(scoped_demangled_name&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& operator=(scoped_demangled_name&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: scoped_demangled_name
    signature: scoped_demangled_name & operator=(scoped_demangled_name&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: abi::__cxa_demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 60
    functionName: BT::demangle_alloc
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached:
    - abi::__cxa_demangle
    linkageType: ''
    returnType: char
    signature: char * demangle_alloc(char const* name) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::free
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:65,1
    - Dst: const_cast<char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: BT::demangle_free
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 1
    functionsReached:
    - const_cast<char*>
    - std::free
    linkageType: ''
    returnType: void
    signature: void demangle_free(char const* name) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: BT::demangle_alloc
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * demangle_alloc(char const* name) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 76
    functionName: BT::demangle_free
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void demangle_free(char const*) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: BT::demangle
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 30
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string demangle(char const* name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:87,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:91,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:95,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:99,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:103,1
    - Dst: name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:108,1
    - Dst: scoped_demangled_name::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:109,1
    - Dst: name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:114,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - ' index'
    argTypes:
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 115
    functionName: BT::demangle
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 30
    functionsReached:
    - typeid
    - scoped_demangled_name::get
    - name
    linkageType: ''
    returnType: std::string
    signature: std::string demangle(const std::type_index& index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:119,1
    - Dst: std::type_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' info'
    argTypes:
    - std::type_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionName: BT::demangle
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 31
    functionsReached:
    - std::type_index
    - BT::demangle
    linkageType: ''
    returnType: std::string
    signature: std::string demangle(const std::type_info& info)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: demangle_alloc
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 35
    functionName: BT::scoped_demangled_name::scoped_demangled_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached:
    - demangle_alloc
    linkageType: ''
    returnType: void
    signature: void scoped_demangled_name(char const* name) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: demangle_free
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:39,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 40
      start: 37
    functionDepth: 0
    functionLinenumber: 37
    functionLinenumberEnd: 40
    functionName: ~scoped_demangled_name() noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached:
    - demangle_free
    linkageType: ''
    returnType: void
    signature: void ~scoped_demangled_name() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 42
    functionDepth: 0
    functionLinenumber: 42
    functionLinenumberEnd: 45
    functionName: BT::scoped_demangled_name::get
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * get() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 47
    functionName: BT::scoped_demangled_name::scoped_demangled_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void scoped_demangled_name(scoped_demangled_name const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 48
    functionName: '& operator=(scoped_demangled_name const&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: scoped_demangled_name
    signature: scoped_demangled_name & operator=(scoped_demangled_name const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 49
    functionName: BT::scoped_demangled_name::scoped_demangled_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void scoped_demangled_name(scoped_demangled_name&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: '& operator=(scoped_demangled_name&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: scoped_demangled_name
    signature: scoped_demangled_name & operator=(scoped_demangled_name&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: abi::__cxa_demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:59,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 55
    functionDepth: 0
    functionLinenumber: 55
    functionLinenumberEnd: 60
    functionName: BT::demangle_alloc
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached:
    - abi::__cxa_demangle
    linkageType: ''
    returnType: char
    signature: char * demangle_alloc(char const* name) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::free
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:65,1
    - Dst: const_cast<char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 66
    functionName: BT::demangle_free
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 1
    functionsReached:
    - const_cast<char*>
    - std::free
    linkageType: ''
    returnType: void
    signature: void demangle_free(char const* name) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 70
    functionDepth: 0
    functionLinenumber: 70
    functionLinenumberEnd: 73
    functionName: BT::demangle_alloc
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * demangle_alloc(char const* name) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 76
    functionName: BT::demangle_free
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void demangle_free(char const*) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 81
    functionName: BT::demangle
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 31
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string demangle(char const* name)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:87,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:91,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:95,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:99,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:103,1
    - Dst: name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:108,1
    - Dst: scoped_demangled_name::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:109,1
    - Dst: name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:114,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - ' index'
    argTypes:
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 85
    functionDepth: 0
    functionLinenumber: 85
    functionLinenumberEnd: 115
    functionName: BT::demangle
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 31
    functionsReached:
    - typeid
    - scoped_demangled_name::get
    - name
    linkageType: ''
    returnType: std::string
    signature: std::string demangle(const std::type_index& index)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:119,1
    - Dst: std::type_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' info'
    argTypes:
    - std::type_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionName: BT::demangle
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
    functionUses: 32
    functionsReached:
    - std::type_index
    - BT::demangle
    linkageType: ''
    returnType: std::string
    signature: std::string demangle(const std::type_info& info)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h:23,1
    - Dst: lock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h:25,1
    - Dst: erase
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h:32,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h:32,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 21
    functionDepth: 1
    functionLinenumber: 21
    functionLinenumberEnd: 35
    functionName: BT::Signal::notify
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h
    functionUses: 0
    functionsReached:
    - begin
    - erase
    - lock
    - size
    linkageType: ''
    returnType: void
    signature: void notify(CallableArgs... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<CallableFunction>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h:39,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h:39,1
    - Dst: emplace_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - func
    argTypes:
    - CallableFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: BT::Signal::subscribe
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h
    functionUses: 0
    functionsReached:
    - std::make_shared<CallableFunction>
    - emplace_back
    - std::move
    linkageType: ''
    returnType: Subscriber
    signature: Subscriber subscribe(CallableFunction func)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h:23,1
    - Dst: lock
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h:25,1
    - Dst: erase
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h:32,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h:32,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 21
    functionDepth: 1
    functionLinenumber: 21
    functionLinenumberEnd: 35
    functionName: BT::Signal::notify
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h
    functionUses: 0
    functionsReached:
    - begin
    - erase
    - lock
    - size
    linkageType: ''
    returnType: void
    signature: void notify(CallableArgs... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<CallableFunction>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h:39,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h:39,1
    - Dst: emplace_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h:40,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - func
    argTypes:
    - CallableFunction
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 42
      start: 37
    functionDepth: 1
    functionLinenumber: 37
    functionLinenumberEnd: 42
    functionName: BT::Signal::subscribe
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h
    functionUses: 0
    functionsReached:
    - std::make_shared<CallableFunction>
    - emplace_back
    - std::move
    linkageType: ''
    returnType: Subscriber
    signature: Subscriber subscribe(CallableFunction func)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 21
    functionDepth: 0
    functionLinenumber: 21
    functionLinenumberEnd: 25
    functionName: SafeAny::SimpleString::SimpleString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleString()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:27,1
    - Dst: SafeAny::SimpleString::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 28
    functionName: SafeAny::SimpleString::SimpleString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::SimpleString::data
    - SafeAny::SimpleString::size
    linkageType: ''
    returnType: void
    signature: void SimpleString(const std::string& str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:30,1
    - Dst: SafeAny::SimpleString::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 31
    functionName: SafeAny::SimpleString::SimpleString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::SimpleString::data
    - SafeAny::SimpleString::size
    linkageType: ''
    returnType: void
    signature: void SimpleString(const std::string_view& str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:33,1
    - Dst: SafeAny::SimpleString::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: SafeAny::SimpleString::SimpleString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::SimpleString::data
    - SafeAny::SimpleString::size
    linkageType: ''
    returnType: void
    signature: void SimpleString(const SimpleString& other)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::~SimpleString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:40,1
    - Dst: createImpl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:41,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:41,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 44
    functionName: '& operator=(const SimpleString& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::~SimpleString
    - data
    - createImpl
    - size
    linkageType: ''
    returnType: SimpleString
    signature: SimpleString & operator=(const SimpleString& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: SafeAny::SimpleString::SimpleString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: void
    signature: void SimpleString(SimpleString&& other) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 58
    functionName: '& operator=(SimpleString&& other) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: SimpleString
    signature: SimpleString & operator=(SimpleString&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - input_data
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 61
    functionName: SafeAny::SimpleString::SimpleString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: void
    signature: void SimpleString(const char* input_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::createImpl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - input_data
    - size
    argTypes:
    - char*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: SafeAny::SimpleString::SimpleString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::SimpleString::createImpl
    linkageType: ''
    returnType: void
    signature: void SimpleString(const char* input_data, std::size_t size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: isSOO
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 75
    functionName: ~SimpleString()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - isSOO
    linkageType: ''
    returnType: void
    signature: void ~SimpleString()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:79,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:79,1
    - Dst: SafeAny::SimpleString::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:79,1
    - Dst: SafeAny::SimpleString::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:79,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: SafeAny::SimpleString::toStdString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::SimpleString::size
    - SafeAny::SimpleString::data
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string toStdString() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:83,1
    - Dst: std::string_view
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:83,1
    - Dst: SafeAny::SimpleString::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:83,1
    - Dst: SafeAny::SimpleString::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:83,1
    - Dst: std::string_view
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: SafeAny::SimpleString::toStdStringView
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::SimpleString::size
    - SafeAny::SimpleString::data
    - std::string_view
    linkageType: ''
    returnType: std::string_view
    signature: std::string_view toStdStringView() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::isSOO
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 96
    functionName: SafeAny::SimpleString::data
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 5
    functionsReached:
    - SafeAny::SimpleString::isSOO
    linkageType: ''
    returnType: char
    signature: char * data() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::isSOO
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 108
    functionName: SafeAny::SimpleString::size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 5
    functionsReached:
    - SafeAny::SimpleString::isSOO
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:112,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:113,1
    - Dst: std::strncmp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:113,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:113,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: operator==(const SimpleString& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - data
    - std::strncmp
    - size
    linkageType: ''
    returnType: bool
    signature: bool operator==(const SimpleString& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:118,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:119,1
    - Dst: std::strncmp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:119,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:119,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 120
    functionName: operator!=(const SimpleString& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - data
    - std::strncmp
    - size
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const SimpleString& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionName: operator<=(const SimpleString& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=(const SimpleString& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionName: operator>=(const SimpleString& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=(const SimpleString& other) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:134,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:134,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:134,1
    - Dst: std::memcmp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:135,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:135,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:135,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:140,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 141
    functionName: operator<(const SimpleString& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - std::memcmp
    - data
    - std::min
    - size
    linkageType: ''
    returnType: bool
    signature: bool operator<(const SimpleString& other) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:145,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:145,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:145,1
    - Dst: std::memcmp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:146,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:146,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:146,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:151,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 152
    functionName: operator>(const SimpleString& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - std::memcmp
    - data
    - std::min
    - size
    linkageType: ''
    returnType: bool
    signature: bool operator>(const SimpleString& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: SafeAny::SimpleString::isSOO
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isSOO() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::invalid_argument
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:187,1
    - Dst: char::char
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:194,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:195,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:203,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - input_data
    - size
    argTypes:
    - char*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 210
    functionName: SafeAny::SimpleString::createImpl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 1
    functionsReached:
    - std::memcpy
    - char::char
    - std::invalid_argument
    linkageType: ''
    returnType: void
    signature: void createImpl(const char* input_data, std::size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 21
    functionDepth: 0
    functionLinenumber: 21
    functionLinenumberEnd: 25
    functionName: SafeAny::SimpleString::SimpleString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SimpleString()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:27,1
    - Dst: SafeAny::SimpleString::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:27,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 27
    functionDepth: 0
    functionLinenumber: 27
    functionLinenumberEnd: 28
    functionName: SafeAny::SimpleString::SimpleString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::SimpleString::data
    - SafeAny::SimpleString::size
    linkageType: ''
    returnType: void
    signature: void SimpleString(const std::string& str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:30,1
    - Dst: SafeAny::SimpleString::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:30,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 31
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 31
    functionName: SafeAny::SimpleString::SimpleString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::SimpleString::data
    - SafeAny::SimpleString::size
    linkageType: ''
    returnType: void
    signature: void SimpleString(const std::string_view& str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:33,1
    - Dst: SafeAny::SimpleString::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 33
    functionDepth: 0
    functionLinenumber: 33
    functionLinenumberEnd: 34
    functionName: SafeAny::SimpleString::SimpleString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::SimpleString::data
    - SafeAny::SimpleString::size
    linkageType: ''
    returnType: void
    signature: void SimpleString(const SimpleString& other)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ~SimpleString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:40,1
    - Dst: createImpl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:41,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:41,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:41,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 36
    functionDepth: 1
    functionLinenumber: 36
    functionLinenumberEnd: 44
    functionName: '& operator=(const SimpleString& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - ~SimpleString
    - data
    - createImpl
    - size
    linkageType: ''
    returnType: SimpleString
    signature: SimpleString & operator=(const SimpleString& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:48,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 46
    functionDepth: 0
    functionLinenumber: 46
    functionLinenumberEnd: 49
    functionName: SafeAny::SimpleString::SimpleString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: void
    signature: void SimpleString(SimpleString&& other) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:55,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 58
    functionName: '& operator=(SimpleString&& other) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: SimpleString
    signature: SimpleString & operator=(SimpleString&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: strlen
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:60,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - input_data
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 61
    functionName: SafeAny::SimpleString::SimpleString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - strlen
    linkageType: ''
    returnType: void
    signature: void SimpleString(const char* input_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::createImpl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - input_data
    - size
    argTypes:
    - char*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 63
    functionDepth: 1
    functionLinenumber: 63
    functionLinenumberEnd: 66
    functionName: SafeAny::SimpleString::SimpleString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::SimpleString::createImpl
    linkageType: ''
    returnType: void
    signature: void SimpleString(const char* input_data, std::size_t size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: isSOO
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:70,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 75
    functionName: ~SimpleString()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - isSOO
    linkageType: ''
    returnType: void
    signature: void ~SimpleString()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:79,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:79,1
    - Dst: SafeAny::SimpleString::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:79,1
    - Dst: SafeAny::SimpleString::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:79,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 77
    functionDepth: 1
    functionLinenumber: 77
    functionLinenumberEnd: 80
    functionName: SafeAny::SimpleString::toStdString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::SimpleString::size
    - SafeAny::SimpleString::data
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string toStdString() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:83,1
    - Dst: std::string_view
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:83,1
    - Dst: SafeAny::SimpleString::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:83,1
    - Dst: SafeAny::SimpleString::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:83,1
    - Dst: std::string_view
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:83,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 84
    functionName: SafeAny::SimpleString::toStdStringView
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - SafeAny::SimpleString::size
    - SafeAny::SimpleString::data
    - std::string_view
    linkageType: ''
    returnType: std::string_view
    signature: std::string_view toStdStringView() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::isSOO
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:88,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 86
    functionDepth: 1
    functionLinenumber: 86
    functionLinenumberEnd: 96
    functionName: SafeAny::SimpleString::data
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 10
    functionsReached:
    - SafeAny::SimpleString::isSOO
    linkageType: ''
    returnType: char
    signature: char * data() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::isSOO
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:100,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 98
    functionDepth: 1
    functionLinenumber: 98
    functionLinenumberEnd: 108
    functionName: SafeAny::SimpleString::size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 10
    functionsReached:
    - SafeAny::SimpleString::isSOO
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:112,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:113,1
    - Dst: std::strncmp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:113,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:113,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 1
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: operator==(const SimpleString& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - data
    - std::strncmp
    - size
    linkageType: ''
    returnType: bool
    signature: bool operator==(const SimpleString& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:118,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:119,1
    - Dst: std::strncmp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:119,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:119,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 116
    functionDepth: 1
    functionLinenumber: 116
    functionLinenumberEnd: 120
    functionName: operator!=(const SimpleString& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - data
    - std::strncmp
    - size
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const SimpleString& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionName: operator<=(const SimpleString& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=(const SimpleString& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 130
    functionName: operator>=(const SimpleString& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=(const SimpleString& other) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:134,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:134,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:134,1
    - Dst: std::memcmp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:135,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:135,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:135,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:140,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 132
    functionDepth: 1
    functionLinenumber: 132
    functionLinenumberEnd: 141
    functionName: operator<(const SimpleString& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - std::memcmp
    - data
    - std::min
    - size
    linkageType: ''
    returnType: bool
    signature: bool operator<(const SimpleString& other) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::min
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:145,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:145,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:145,1
    - Dst: std::memcmp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:146,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:146,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:146,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:151,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:151,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 143
    functionDepth: 1
    functionLinenumber: 143
    functionLinenumberEnd: 152
    functionName: operator>(const SimpleString& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 0
    functionsReached:
    - std::memcmp
    - data
    - std::min
    - size
    linkageType: ''
    returnType: bool
    signature: bool operator>(const SimpleString& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 157
      start: 154
    functionDepth: 0
    functionLinenumber: 154
    functionLinenumberEnd: 157
    functionName: SafeAny::SimpleString::isSOO
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool isSOO() const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::invalid_argument
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:187,1
    - Dst: char::char
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:194,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:195,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp:203,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 2
    argNames:
    - input_data
    - size
    argTypes:
    - char*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 210
    functionName: SafeAny::SimpleString::createImpl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    functionUses: 2
    functionsReached:
    - std::memcpy
    - char::char
    - std::invalid_argument
    linkageType: ''
    returnType: void
    signature: void createImpl(const char* input_data, std::size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Any()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: ~Any()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Any()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 84
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Any(const Any& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Any(Any&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 91
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const double& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 94
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const uint64_t& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 97
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const float& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::SimpleString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:100,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - SafeAny::SimpleString::SimpleString
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const std::string& str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::SimpleString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:104,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - SafeAny::SimpleString::SimpleString
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const char* str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - SafeAny::SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const SafeAny::SimpleString& str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::SimpleString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:112,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - SafeAny::SimpleString::SimpleString
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const std::string_view& str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const T& value, EnableIntegral<T> = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' type'
    argTypes:
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 122
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Any(const std::type_index& type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 130
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const T& value, EnableNonIntegral<T> = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:142,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: BT::Any::isString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - typeid
    - type
    linkageType: ''
    returnType: bool
    signature: bool isString() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: BT::Any::isType
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - typeid
    linkageType: ''
    returnType: bool
    signature: bool isType() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Any::tryCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:170,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:172,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:176,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:176,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 168
    functionDepth: 1
    functionLinenumber: 168
    functionLinenumberEnd: 178
    functionName: BT::Any::cast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - auto::value
    - BT::Any::tryCast
    - auto::error
    - std::runtime_error
    linkageType: ''
    returnType: T
    signature: T cast() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:189,1
    - Dst: linb::any_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 190
    functionName: BT::Any::castPtr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - linb::any_cast<T>
    - BT::Any::empty
    linkageType: ''
    returnType: T
    signature: T * castPtr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionName: '& type() const noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::type_index
    signature: std::type_index & type() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionName: '& castedType() const noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - type
    linkageType: ''
    returnType: std::type_info
    signature: std::type_info & castedType() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 207
    functionName: BT::Any::empty
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 4
    functionsReached:
    - BT::Any::empty
    linkageType: ''
    returnType: bool
    signature: bool empty() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:227,1
    - Dst: BT::Any::errorMsg
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 225
    functionDepth: 1
    functionLinenumber: 225
    functionLinenumberEnd: 228
    functionName: BT::Any::convert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - BT::Any::errorMsg
    - nonstd::make_unexpected
    linkageType: ''
    returnType: nonstd::expected<DST, std::string>
    signature: nonstd::expected<DST, std::string> convert(EnableUnknownType<DST> =
      0) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:233,1
    - Dst: demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:233,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:233,1
    - Dst: demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:234,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 231
    functionDepth: 1
    functionLinenumber: 231
    functionLinenumberEnd: 235
    functionName: BT::Any::errorMsg
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 1
    functionsReached:
    - StrCat
    - typeid
    - type
    - demangle
    linkageType: ''
    returnType: std::string
    signature: std::string errorMsg() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<TO>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:254,1
    - Dst: static_cast<SRC>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:255,1
    - Dst: static_cast<SRC>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:269,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:269,1
    - Dst: static_cast<SRC>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:271,1
    - Dst: std::numeric_limits<TO>::lowest
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:271,1
    - Dst: static_cast<TO>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:278,1
    - Dst: static_cast<SRC>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:279,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - SRC
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 281
    functionName: BT::ValidCast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - static_cast<SRC>
    - magic_enum::detail::reflected_max
    - static_cast<TO>
    - std::numeric_limits<TO>::lowest
    linkageType: ''
    returnType: bool
    signature: bool ValidCast(const SRC& val)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:286,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:293,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:297,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:301,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:305,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:310,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:314,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:318,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:322,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:327,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:331,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 2
    argNames:
    - ' type'
    - ' val'
    argTypes:
    - std::type_index
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 284
    functionDepth: 2
    functionLinenumber: 284
    functionLinenumberEnd: 334
    functionName: BT::isCastingSafe
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - BT::ValidCast
    - typeid
    linkageType: ''
    returnType: bool
    signature: bool isCastingSafe(const std::type_index& type, const T& val)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 336
    functionDepth: 0
    functionLinenumber: 336
    functionLinenumberEnd: 344
    functionName: '& Any::operator=(const Any& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Any
    signature: Any & Any::operator=(const Any& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:348,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 346
    functionDepth: 0
    functionLinenumber: 346
    functionLinenumberEnd: 351
    functionName: '& Any::operator=(Any&& other) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: Any
    signature: Any & Any::operator=(Any&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:355,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:355,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:355,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:355,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:356,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:356,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 353
    functionDepth: 1
    functionLinenumber: 353
    functionLinenumberEnd: 357
    functionName: BT::Any::isNumber
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - typeid
    - type
    linkageType: ''
    returnType: bool
    signature: bool Any::isNumber() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:361,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:361,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:361,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:361,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 362
    functionName: BT::Any::isIntegral
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - typeid
    - type
    linkageType: ''
    returnType: bool
    signature: bool Any::isIntegral() const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: BT::Any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:366,1
    - Dst: castedType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:372,1
    - Dst: castedType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:374,1
    - Dst: BT::Any::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:374,1
    - Dst: BT::Any::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:374,1
    - Dst: BT::Any::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:378,1
    - Dst: BT::Any::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:378,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:380,1
    - Dst: BT::Any::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:382,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:384,1
    - Dst: BT::Any::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:386,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:388,1
    - Dst: BT::Any::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:390,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:394,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:399,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 23
    argCount: 1
    argNames:
    - ' dst'
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 364
    functionDepth: 2
    functionLinenumber: 364
    functionLinenumberEnd: 401
    functionName: BT::Any::copyInto
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - BT::Any::cast
    - BT::Any::isNumber
    - typeid
    - castedType
    - std::runtime_error
    - BT::Any::empty
    - BT::Any::isString
    linkageType: ''
    returnType: void
    signature: void Any::copyInto(Any& dst) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:406,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:408,1
    - Dst: linb::any_cast<SafeAny::SimpleString>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:410,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:412,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:414,1
    - Dst: linb::any_cast<int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:414,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:416,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:418,1
    - Dst: linb::any_cast<uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:418,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:420,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:422,1
    - Dst: linb::any_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:422,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:425,1
    - Dst: BT::Any::errorMsg
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:425,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 404
    functionDepth: 2
    functionLinenumber: 404
    functionLinenumberEnd: 426
    functionName: BT::Any::convert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - linb::any_cast<double>
    - typeid
    - linb::any_cast<int64_t>
    - nonstd::make_unexpected
    - linb::any_cast<uint64_t>
    - to_string
    - BT::Any::errorMsg
    - linb::any_cast<SafeAny::SimpleString>
    - type
    linkageType: ''
    returnType: nonstd::expected<DST, std::string>
    signature: nonstd::expected<DST, std::string> Any::convert(EnableString<DST>)
      const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: linb::any_cast<SafeAny::SimpleString>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:434,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:437,1
    - Dst: auto::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:437,1
    - Dst: auto::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:437,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:437,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:438,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:444,1
    - Dst: std::stoul
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:451,1
    - Dst: auto::toStdString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:451,1
    - Dst: std::stol
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:455,1
    - Dst: auto::toStdString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:455,1
    - Dst: Any::convert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:457,1
    - Dst: std::stod
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:461,1
    - Dst: auto::toStdString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:461,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:466,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:469,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 429
    functionDepth: 1
    functionLinenumber: 429
    functionLinenumberEnd: 470
    functionName: BT::Any::stringToNumber
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - std::from_chars
    - Any::convert
    - std::stod
    - nonstd::make_unexpected
    - auto::toStdString
    - std::errc
    - std::stoul
    - std::stol
    - auto::data
    - linb::any_cast<SafeAny::SimpleString>
    - auto::size
    linkageType: ''
    returnType: nonstd::expected<T, std::string>
    signature: nonstd::expected<T, std::string> Any::stringToNumber() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:477,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:479,1
    - Dst: linb::any_cast<int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:481,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:482,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:484,1
    - Dst: linb::any_cast<uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:486,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:487,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:490,1
    - Dst: BT::Any::errorMsg
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:490,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 473
    functionDepth: 2
    functionLinenumber: 473
    functionLinenumberEnd: 491
    functionName: BT::Any::convert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - typeid
    - static_cast<DST>
    - linb::any_cast<int64_t>
    - nonstd::make_unexpected
    - linb::any_cast<uint64_t>
    - BT::Any::errorMsg
    - type
    linkageType: ''
    returnType: nonstd::expected<DST, std::string>
    signature: nonstd::expected<DST, std::string> Any::convert(EnableEnum<DST>) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:499,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:501,1
    - Dst: convertNumber<int64_t, DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:503,1
    - Dst: linb::any_cast<int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:503,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:505,1
    - Dst: convertNumber<uint64_t, DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:507,1
    - Dst: linb::any_cast<uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:507,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:509,1
    - Dst: convertNumber<double, DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:511,1
    - Dst: linb::any_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:511,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:515,1
    - Dst: BT::Any::errorMsg
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:515,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 494
    functionDepth: 2
    functionLinenumber: 494
    functionLinenumberEnd: 518
    functionName: BT::Any::convert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - convertNumber<uint64_t, DST>
    - linb::any_cast<double>
    - typeid
    - linb::any_cast<int64_t>
    - nonstd::make_unexpected
    - linb::any_cast<uint64_t>
    - BT::Any::errorMsg
    - convertNumber<int64_t, DST>
    - convertNumber<double, DST>
    - type
    linkageType: ''
    returnType: nonstd::expected<DST, std::string>
    signature: nonstd::expected<DST, std::string> Any::convert(EnableArithmetic<DST>)
      const
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: BT::Any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:526,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:528,1
    - Dst: castedType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:531,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:531,1
    - Dst: linb::any_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:533,1
    - Dst: BT::Any::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:540,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:542,1
    - Dst: BT::Any::convert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:542,1
    - Dst: BT::Any::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:544,1
    - Dst: BT::Any::stringToNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:546,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:548,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:548,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:551,1
    - Dst: BT::Any::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:554,1
    - Dst: BT::Any::stringToNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:558,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:560,1
    - Dst: BT::Any::convert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:569,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:571,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:571,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 521
    functionDepth: 2
    functionLinenumber: 521
    functionLinenumberEnd: 577
    functionName: BT::Any::tryCast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 1
    functionsReached:
    - BT::Any::isNumber
    - typeid
    - BT::Any::stringToNumber
    - std::move
    - BT::Any::convert
    - auto::value
    - nonstd::make_unexpected
    - static_cast<T>
    - castedType
    - std::runtime_error
    - linb::any_cast<T>
    - BT::Any::empty
    - BT::Any::isString
    linkageType: ''
    returnType: nonstd::expected<T, std::string>
    signature: nonstd::expected<T, std::string> Any::tryCast() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::Any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:586,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:588,1
    - Dst: BT::Any::tryCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:592,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:592,1
    - Dst: linb::any_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:597,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:597,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:601,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:601,1
    - Dst: what
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:601,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:605,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:605,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:605,1
    - Dst: demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:606,1
    - Dst: demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:607,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:607,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ' registry'
    argTypes:
    - PolymorphicCastRegistry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 580
    functionDepth: 3
    functionLinenumber: 580
    functionLinenumberEnd: 608
    functionName: BT::Any::tryCastWithRegistry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - typeid
    - auto::value
    - auto::error
    - nonstd::make_unexpected
    - BT::Any::tryCast
    - StrCat
    - demangle
    - what
    - linb::any_cast<T>
    - BT::Any::empty
    linkageType: ''
    returnType: nonstd::expected<T, std::string>
    signature: nonstd::expected<T, std::string> Any::tryCastWithRegistry(const PolymorphicCastRegistry&
      registry) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 79
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Any()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 81
    functionDepth: 0
    functionLinenumber: 81
    functionLinenumberEnd: 81
    functionName: ~Any()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Any()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 84
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Any(const Any& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 88
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void Any(Any&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 90
    functionDepth: 0
    functionLinenumber: 90
    functionLinenumberEnd: 91
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const double& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:93,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 94
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 94
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const uint64_t& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 97
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const float& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::SimpleString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:100,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 101
      start: 99
    functionDepth: 1
    functionLinenumber: 99
    functionLinenumberEnd: 101
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - SafeAny::SimpleString::SimpleString
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const std::string& str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::SimpleString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:104,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:104,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 103
    functionDepth: 1
    functionLinenumber: 103
    functionLinenumberEnd: 105
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - SafeAny::SimpleString::SimpleString
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const char* str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:108,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - SafeAny::SimpleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const SafeAny::SimpleString& str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SafeAny::SimpleString::SimpleString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:112,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 111
    functionDepth: 1
    functionLinenumber: 111
    functionLinenumberEnd: 113
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - SafeAny::SimpleString::SimpleString
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const std::string_view& str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:118,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 119
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const T& value, EnableIntegral<T> = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' type'
    argTypes:
    - std::type_index
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 122
      start: 121
    functionDepth: 0
    functionLinenumber: 121
    functionLinenumberEnd: 122
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Any(const std::type_index& type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 130
    functionName: BT::Any::Any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - typeid
    linkageType: ''
    returnType: void
    signature: void Any(const T& value, EnableNonIntegral<T> = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:142,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 143
      start: 140
    functionDepth: 1
    functionLinenumber: 140
    functionLinenumberEnd: 143
    functionName: BT::Any::isString
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 4
    functionsReached:
    - typeid
    - type
    linkageType: ''
    returnType: bool
    signature: bool isString() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 147
    functionDepth: 0
    functionLinenumber: 147
    functionLinenumberEnd: 150
    functionName: BT::Any::isType
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - typeid
    linkageType: ''
    returnType: bool
    signature: bool isType() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::Any::tryCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:170,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:172,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:176,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:176,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 168
    functionDepth: 3
    functionLinenumber: 168
    functionLinenumberEnd: 178
    functionName: BT::Any::cast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 3
    functionsReached:
    - auto::value
    - BT::Any::tryCast
    - auto::error
    - std::runtime_error
    linkageType: ''
    returnType: T
    signature: T cast() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:189,1
    - Dst: linb::any_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:189,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 190
      start: 184
    functionDepth: 0
    functionLinenumber: 184
    functionLinenumberEnd: 190
    functionName: BT::Any::castPtr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - linb::any_cast<T>
    - BT::Any::empty
    linkageType: ''
    returnType: T
    signature: T * castPtr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 193
    functionDepth: 0
    functionLinenumber: 193
    functionLinenumberEnd: 196
    functionName: '& type() const noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::type_index
    signature: std::type_index & type() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 202
      start: 199
    functionDepth: 1
    functionLinenumber: 199
    functionLinenumberEnd: 202
    functionName: '& castedType() const noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - type
    linkageType: ''
    returnType: std::type_info
    signature: std::type_info & castedType() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 207
    functionName: BT::Any::empty
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 9
    functionsReached:
    - BT::Any::empty
    linkageType: ''
    returnType: bool
    signature: bool empty() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:227,1
    - Dst: BT::Any::errorMsg
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 225
    functionDepth: 2
    functionLinenumber: 225
    functionLinenumberEnd: 228
    functionName: BT::Any::convert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 1
    functionsReached:
    - BT::Any::errorMsg
    - nonstd::make_unexpected
    linkageType: ''
    returnType: nonstd::expected<DST, std::string>
    signature: nonstd::expected<DST, std::string> convert(EnableUnknownType<DST> =
      0) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:233,1
    - Dst: demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:233,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:233,1
    - Dst: demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:234,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:234,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 235
      start: 231
    functionDepth: 1
    functionLinenumber: 231
    functionLinenumberEnd: 235
    functionName: BT::Any::errorMsg
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 5
    functionsReached:
    - StrCat
    - typeid
    - type
    - demangle
    linkageType: ''
    returnType: std::string
    signature: std::string errorMsg() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<TO>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:254,1
    - Dst: static_cast<SRC>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:255,1
    - Dst: static_cast<SRC>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:269,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:269,1
    - Dst: static_cast<SRC>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:271,1
    - Dst: std::numeric_limits<TO>::lowest
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:271,1
    - Dst: static_cast<TO>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:278,1
    - Dst: static_cast<SRC>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:279,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - SRC
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 281
      start: 243
    functionDepth: 1
    functionLinenumber: 243
    functionLinenumberEnd: 281
    functionName: BT::ValidCast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 1
    functionsReached:
    - static_cast<SRC>
    - magic_enum::detail::reflected_max
    - static_cast<TO>
    - std::numeric_limits<TO>::lowest
    linkageType: ''
    returnType: bool
    signature: bool ValidCast(const SRC& val)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:286,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:293,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:297,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:301,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:305,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:310,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:314,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:318,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:322,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:327,1
    - Dst: BT::ValidCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:331,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 35
    argCount: 2
    argNames:
    - ' type'
    - ' val'
    argTypes:
    - std::type_index
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 284
    functionDepth: 2
    functionLinenumber: 284
    functionLinenumberEnd: 334
    functionName: BT::isCastingSafe
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - BT::ValidCast
    - typeid
    linkageType: ''
    returnType: bool
    signature: bool isCastingSafe(const std::type_index& type, const T& val)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 336
    functionDepth: 0
    functionLinenumber: 336
    functionLinenumberEnd: 344
    functionName: '& Any::operator=(const Any& other)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: Any
    signature: Any & Any::operator=(const Any& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:348,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 351
      start: 346
    functionDepth: 0
    functionLinenumber: 346
    functionLinenumberEnd: 351
    functionName: '& Any::operator=(Any&& other) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: Any
    signature: Any & Any::operator=(Any&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:355,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:355,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:355,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:355,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:356,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:356,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 353
    functionDepth: 1
    functionLinenumber: 353
    functionLinenumberEnd: 357
    functionName: BT::Any::isNumber
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 2
    functionsReached:
    - typeid
    - type
    linkageType: ''
    returnType: bool
    signature: bool Any::isNumber() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:361,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:361,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:361,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:361,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 359
    functionDepth: 1
    functionLinenumber: 359
    functionLinenumberEnd: 362
    functionName: BT::Any::isIntegral
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - typeid
    - type
    linkageType: ''
    returnType: bool
    signature: bool Any::isIntegral() const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: BT::Any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:366,1
    - Dst: castedType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:372,1
    - Dst: castedType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:374,1
    - Dst: BT::Any::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:374,1
    - Dst: BT::Any::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:374,1
    - Dst: BT::Any::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:378,1
    - Dst: BT::Any::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:378,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:380,1
    - Dst: BT::Any::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:382,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:384,1
    - Dst: BT::Any::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:386,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:388,1
    - Dst: BT::Any::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:390,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:394,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:399,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 23
    argCount: 1
    argNames:
    - ' dst'
    argTypes:
    - Any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 364
    functionDepth: 2
    functionLinenumber: 364
    functionLinenumberEnd: 401
    functionName: BT::Any::copyInto
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - BT::Any::cast
    - BT::Any::isNumber
    - typeid
    - castedType
    - std::runtime_error
    - BT::Any::empty
    - BT::Any::isString
    linkageType: ''
    returnType: void
    signature: void Any::copyInto(Any& dst) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:406,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:408,1
    - Dst: linb::any_cast<SafeAny::SimpleString>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:410,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:412,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:414,1
    - Dst: linb::any_cast<int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:414,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:416,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:418,1
    - Dst: linb::any_cast<uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:418,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:420,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:422,1
    - Dst: linb::any_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:422,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:425,1
    - Dst: BT::Any::errorMsg
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:425,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 404
    functionDepth: 2
    functionLinenumber: 404
    functionLinenumberEnd: 426
    functionName: BT::Any::convert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 1
    functionsReached:
    - linb::any_cast<double>
    - typeid
    - linb::any_cast<int64_t>
    - nonstd::make_unexpected
    - linb::any_cast<uint64_t>
    - to_string
    - BT::Any::errorMsg
    - linb::any_cast<SafeAny::SimpleString>
    - type
    linkageType: ''
    returnType: nonstd::expected<DST, std::string>
    signature: nonstd::expected<DST, std::string> Any::convert(EnableString<DST>)
      const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: linb::any_cast<SafeAny::SimpleString>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:434,1
    - Dst: std::from_chars
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:437,1
    - Dst: auto::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:437,1
    - Dst: auto::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:437,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:437,1
    - Dst: std::errc
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:438,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:444,1
    - Dst: std::stoul
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:451,1
    - Dst: auto::toStdString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:451,1
    - Dst: std::stol
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:455,1
    - Dst: auto::toStdString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:455,1
    - Dst: Any::convert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:457,1
    - Dst: std::stod
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:461,1
    - Dst: auto::toStdString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:461,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:466,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:469,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 470
      start: 429
    functionDepth: 1
    functionLinenumber: 429
    functionLinenumberEnd: 470
    functionName: BT::Any::stringToNumber
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 1
    functionsReached:
    - std::from_chars
    - Any::convert
    - std::stod
    - nonstd::make_unexpected
    - auto::toStdString
    - std::errc
    - std::stoul
    - std::stol
    - auto::data
    - linb::any_cast<SafeAny::SimpleString>
    - auto::size
    linkageType: ''
    returnType: nonstd::expected<T, std::string>
    signature: nonstd::expected<T, std::string> Any::stringToNumber() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:477,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:479,1
    - Dst: linb::any_cast<int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:481,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:482,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:484,1
    - Dst: linb::any_cast<uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:486,1
    - Dst: static_cast<DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:487,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:490,1
    - Dst: BT::Any::errorMsg
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:490,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 491
      start: 473
    functionDepth: 2
    functionLinenumber: 473
    functionLinenumberEnd: 491
    functionName: BT::Any::convert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 1
    functionsReached:
    - typeid
    - static_cast<DST>
    - linb::any_cast<int64_t>
    - nonstd::make_unexpected
    - linb::any_cast<uint64_t>
    - BT::Any::errorMsg
    - type
    linkageType: ''
    returnType: nonstd::expected<DST, std::string>
    signature: nonstd::expected<DST, std::string> Any::convert(EnableEnum<DST>) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:499,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:501,1
    - Dst: convertNumber<int64_t, DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:503,1
    - Dst: linb::any_cast<int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:503,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:505,1
    - Dst: convertNumber<uint64_t, DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:507,1
    - Dst: linb::any_cast<uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:507,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:509,1
    - Dst: convertNumber<double, DST>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:511,1
    - Dst: linb::any_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:511,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:515,1
    - Dst: BT::Any::errorMsg
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:515,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 494
    functionDepth: 2
    functionLinenumber: 494
    functionLinenumberEnd: 518
    functionName: BT::Any::convert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 1
    functionsReached:
    - convertNumber<uint64_t, DST>
    - linb::any_cast<double>
    - typeid
    - linb::any_cast<int64_t>
    - nonstd::make_unexpected
    - linb::any_cast<uint64_t>
    - BT::Any::errorMsg
    - convertNumber<int64_t, DST>
    - convertNumber<double, DST>
    - type
    linkageType: ''
    returnType: nonstd::expected<DST, std::string>
    signature: nonstd::expected<DST, std::string> Any::convert(EnableArithmetic<DST>)
      const
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: BT::Any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:526,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:528,1
    - Dst: castedType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:531,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:531,1
    - Dst: linb::any_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:533,1
    - Dst: BT::Any::isNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:540,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:542,1
    - Dst: BT::Any::convert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:542,1
    - Dst: BT::Any::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:544,1
    - Dst: BT::Any::stringToNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:546,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:548,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:548,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:551,1
    - Dst: BT::Any::isString
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:554,1
    - Dst: BT::Any::stringToNumber
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:558,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:560,1
    - Dst: BT::Any::convert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:569,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:571,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:571,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 32
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 577
      start: 521
    functionDepth: 2
    functionLinenumber: 521
    functionLinenumberEnd: 577
    functionName: BT::Any::tryCast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 3
    functionsReached:
    - BT::Any::isNumber
    - typeid
    - BT::Any::stringToNumber
    - std::move
    - BT::Any::convert
    - auto::value
    - nonstd::make_unexpected
    - static_cast<T>
    - castedType
    - std::runtime_error
    - linb::any_cast<T>
    - BT::Any::empty
    - BT::Any::isString
    linkageType: ''
    returnType: nonstd::expected<T, std::string>
    signature: nonstd::expected<T, std::string> Any::tryCast() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::Any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:586,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:588,1
    - Dst: BT::Any::tryCast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:592,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:592,1
    - Dst: linb::any_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:597,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:597,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:601,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:601,1
    - Dst: what
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:601,1
    - Dst: nonstd::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:605,1
    - Dst: StrCat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:605,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:605,1
    - Dst: demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:606,1
    - Dst: demangle
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:607,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp:607,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ' registry'
    argTypes:
    - PolymorphicCastRegistry
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 580
    functionDepth: 3
    functionLinenumber: 580
    functionLinenumberEnd: 608
    functionName: BT::Any::tryCastWithRegistry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    functionUses: 0
    functionsReached:
    - typeid
    - auto::value
    - auto::error
    - nonstd::make_unexpected
    - BT::Any::tryCast
    - StrCat
    - demangle
    - what
    - linb::any_cast<T>
    - BT::Any::empty
    linkageType: ''
    returnType: nonstd::expected<T, std::string>
    signature: nonstd::expected<T, std::string> Any::tryCastWithRegistry(const PolymorphicCastRegistry&
      registry) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: wait_for
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/wakeup_signal.hpp:20,1
    - Dst: load
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/wakeup_signal.hpp:20,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - usec
    argTypes:
    - std::chrono::microseconds
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 23
    functionName: BT::WakeUpSignal::waitFor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/wakeup_signal.hpp
    functionUses: 0
    functionsReached:
    - load
    - wait_for
    linkageType: ''
    returnType: bool
    signature: bool waitFor(std::chrono::microseconds usec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notify_all
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/wakeup_signal.hpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: BT::WakeUpSignal::emitSignal
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/wakeup_signal.hpp
    functionUses: 0
    functionsReached:
    - notify_all
    linkageType: ''
    returnType: void
    signature: void emitSignal()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: wait_for
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/wakeup_signal.hpp:20,1
    - Dst: load
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/wakeup_signal.hpp:20,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - usec
    argTypes:
    - std::chrono::microseconds
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 17
    functionDepth: 0
    functionLinenumber: 17
    functionLinenumberEnd: 23
    functionName: BT::WakeUpSignal::waitFor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/wakeup_signal.hpp
    functionUses: 0
    functionsReached:
    - load
    - wait_for
    linkageType: ''
    returnType: bool
    signature: bool waitFor(std::chrono::microseconds usec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: notify_all
      Src: /src/behaviortreecpp/include/behaviortree_cpp/utils/wakeup_signal.hpp:28,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 29
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 29
    functionName: BT::WakeUpSignal::emitSignal
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/utils/wakeup_signal.hpp
    functionUses: 0
    functionsReached:
    - notify_all
    linkageType: ''
    returnType: void
    signature: void emitSignal()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 98
    functionName: NLOHMANN_JSON_ABI_TAGS_CONCAT_EX
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_ABI_TAGS_CONCAT_EX(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 98
    functionDepth: 0
    functionLinenumber: 98
    functionLinenumberEnd: 100
    functionName: NLOHMANN_JSON_ABI_TAGS_CONCAT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_ABI_TAGS_CONCAT(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 109
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 109
    functionName: NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT_EX
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT_EX(major, minor, patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 111
    functionName: NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT(major, minor, patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 123
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 123
    functionName: NLOHMANN_JSON_NAMESPACE_CONCAT_EX
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_NAMESPACE_CONCAT_EX(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 123
    functionDepth: 0
    functionLinenumber: 123
    functionLinenumberEnd: 125
    functionName: NLOHMANN_JSON_NAMESPACE_CONCAT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_NAMESPACE_CONCAT(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 257
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 315
      start: 258
    functionDepth: 0
    functionLinenumber: 258
    functionLinenumberEnd: 315
    functionName: NLOHMANN_JSON_NAMESPACE_BEGIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_END
    signature: NLOHMANN_JSON_NAMESPACE_END NLOHMANN_JSON_NAMESPACE_BEGIN
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 268
    functionDepth: 0
    functionLinenumber: 268
    functionLinenumberEnd: 268
    functionName: nonesuch
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void nonesuch()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 269
      start: 269
    functionDepth: 0
    functionLinenumber: 269
    functionLinenumberEnd: 269
    functionName: ~nonesuch()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~nonesuch()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 270
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 270
    functionName: nonesuch
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void nonesuch(nonesuch const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 271
    functionName: nonesuch
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void nonesuch(nonesuch const&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 272
      start: 272
    functionDepth: 0
    functionLinenumber: 272
    functionLinenumberEnd: 272
    functionName: operator=(nonesuch const&)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator=(nonesuch const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 273
      start: 273
    functionDepth: 0
    functionLinenumber: 273
    functionLinenumberEnd: 273
    functionName: operator=(nonesuch&&)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator=(nonesuch&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 343
    functionDepth: 0
    functionLinenumber: 343
    functionLinenumberEnd: 344
    functionName: JSON_HEDLEY_STRINGIFY_EX
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_STRINGIFY_EX(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 348
    functionDepth: 0
    functionLinenumber: 348
    functionLinenumberEnd: 349
    functionName: JSON_HEDLEY_STRINGIFY
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_STRINGIFY(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 354
      start: 353
    functionDepth: 0
    functionLinenumber: 353
    functionLinenumberEnd: 354
    functionName: JSON_HEDLEY_CONCAT_EX
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CONCAT_EX(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 359
    functionName: JSON_HEDLEY_CONCAT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CONCAT(a,b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 363
    functionDepth: 0
    functionLinenumber: 363
    functionLinenumberEnd: 364
    functionName: JSON_HEDLEY_CONCAT3_EX
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CONCAT3_EX(a,b,c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - a
    - ','
    - b
    - ','
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 368
    functionDepth: 0
    functionLinenumber: 368
    functionLinenumberEnd: 369
    functionName: JSON_HEDLEY_CONCAT3
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CONCAT3(a,b,c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - revision
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 373
    functionDepth: 0
    functionLinenumber: 373
    functionLinenumberEnd: 374
    functionName: JSON_HEDLEY_VERSION_ENCODE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_VERSION_ENCODE(major,minor,revision)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - version
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 379
    functionName: JSON_HEDLEY_VERSION_DECODE_MAJOR
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_VERSION_DECODE_MAJOR(version)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - version
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 383
    functionDepth: 0
    functionLinenumber: 383
    functionLinenumberEnd: 384
    functionName: JSON_HEDLEY_VERSION_DECODE_MINOR
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_VERSION_DECODE_MINOR(version)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - version
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 388
    functionDepth: 0
    functionLinenumber: 388
    functionLinenumberEnd: 389
    functionName: JSON_HEDLEY_VERSION_DECODE_REVISION
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_VERSION_DECODE_REVISION(version)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 403
    functionDepth: 0
    functionLinenumber: 403
    functionLinenumberEnd: 404
    functionName: JSON_HEDLEY_GNUC_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GNUC_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 406
      start: 405
    functionDepth: 0
    functionLinenumber: 405
    functionLinenumberEnd: 406
    functionName: JSON_HEDLEY_GNUC_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GNUC_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 423
    functionDepth: 0
    functionLinenumber: 423
    functionLinenumberEnd: 424
    functionName: JSON_HEDLEY_MSVC_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_MSVC_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 425
    functionDepth: 0
    functionLinenumber: 425
    functionLinenumberEnd: 426
    functionName: JSON_HEDLEY_MSVC_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_MSVC_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 427
    functionDepth: 0
    functionLinenumber: 427
    functionLinenumberEnd: 428
    functionName: JSON_HEDLEY_MSVC_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_MSVC_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 429
    functionDepth: 0
    functionLinenumber: 429
    functionLinenumberEnd: 430
    functionName: JSON_HEDLEY_MSVC_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_MSVC_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 445
    functionDepth: 0
    functionLinenumber: 445
    functionLinenumberEnd: 446
    functionName: JSON_HEDLEY_INTEL_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_INTEL_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 447
    functionDepth: 0
    functionLinenumber: 447
    functionLinenumberEnd: 448
    functionName: JSON_HEDLEY_INTEL_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_INTEL_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 461
    functionDepth: 0
    functionLinenumber: 461
    functionLinenumberEnd: 462
    functionName: JSON_HEDLEY_INTEL_CL_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_INTEL_CL_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 464
      start: 463
    functionDepth: 0
    functionLinenumber: 463
    functionLinenumberEnd: 464
    functionName: JSON_HEDLEY_INTEL_CL_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_INTEL_CL_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 478
    functionName: JSON_HEDLEY_PGI_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PGI_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 480
      start: 479
    functionDepth: 0
    functionLinenumber: 479
    functionLinenumberEnd: 480
    functionName: JSON_HEDLEY_PGI_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PGI_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 500
      start: 499
    functionDepth: 0
    functionLinenumber: 499
    functionLinenumberEnd: 500
    functionName: JSON_HEDLEY_SUNPRO_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_SUNPRO_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 502
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 502
    functionName: JSON_HEDLEY_SUNPRO_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_SUNPRO_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 515
    functionDepth: 0
    functionLinenumber: 515
    functionLinenumberEnd: 516
    functionName: JSON_HEDLEY_EMSCRIPTEN_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_EMSCRIPTEN_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 517
    functionDepth: 0
    functionLinenumber: 517
    functionLinenumberEnd: 518
    functionName: JSON_HEDLEY_EMSCRIPTEN_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_EMSCRIPTEN_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 534
      start: 533
    functionDepth: 0
    functionLinenumber: 533
    functionLinenumberEnd: 534
    functionName: JSON_HEDLEY_ARM_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_ARM_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 535
    functionDepth: 0
    functionLinenumber: 535
    functionLinenumberEnd: 536
    functionName: JSON_HEDLEY_ARM_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_ARM_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 554
      start: 553
    functionDepth: 0
    functionLinenumber: 553
    functionLinenumberEnd: 554
    functionName: JSON_HEDLEY_IBM_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_IBM_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 555
    functionDepth: 0
    functionLinenumber: 555
    functionLinenumberEnd: 556
    functionName: JSON_HEDLEY_IBM_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_IBM_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 578
      start: 577
    functionDepth: 0
    functionLinenumber: 577
    functionLinenumberEnd: 578
    functionName: JSON_HEDLEY_TI_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_TI_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 580
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 580
    functionName: JSON_HEDLEY_TI_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_TI_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 593
    functionDepth: 0
    functionLinenumber: 593
    functionLinenumberEnd: 594
    functionName: JSON_HEDLEY_TI_CL2000_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_TI_CL2000_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 596
      start: 595
    functionDepth: 0
    functionLinenumber: 595
    functionLinenumberEnd: 596
    functionName: JSON_HEDLEY_TI_CL2000_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_TI_CL2000_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 610
      start: 609
    functionDepth: 0
    functionLinenumber: 609
    functionLinenumberEnd: 610
    functionName: JSON_HEDLEY_TI_CL430_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_TI_CL430_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 611
    functionDepth: 0
    functionLinenumber: 611
    functionLinenumberEnd: 612
    functionName: JSON_HEDLEY_TI_CL430_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_TI_CL430_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 625
    functionDepth: 0
    functionLinenumber: 625
    functionLinenumberEnd: 626
    functionName: JSON_HEDLEY_TI_ARMCL_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 627
    functionDepth: 0
    functionLinenumber: 627
    functionLinenumberEnd: 628
    functionName: JSON_HEDLEY_TI_ARMCL_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_TI_ARMCL_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 641
    functionDepth: 0
    functionLinenumber: 641
    functionLinenumberEnd: 642
    functionName: JSON_HEDLEY_TI_CL6X_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_TI_CL6X_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 644
      start: 643
    functionDepth: 0
    functionLinenumber: 643
    functionLinenumberEnd: 644
    functionName: JSON_HEDLEY_TI_CL6X_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_TI_CL6X_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 658
      start: 657
    functionDepth: 0
    functionLinenumber: 657
    functionLinenumberEnd: 658
    functionName: JSON_HEDLEY_TI_CL7X_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_TI_CL7X_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 659
    functionDepth: 0
    functionLinenumber: 659
    functionLinenumberEnd: 660
    functionName: JSON_HEDLEY_TI_CL7X_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_TI_CL7X_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 673
    functionDepth: 0
    functionLinenumber: 673
    functionLinenumberEnd: 674
    functionName: JSON_HEDLEY_TI_CLPRU_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 675
    functionDepth: 0
    functionLinenumber: 675
    functionLinenumberEnd: 676
    functionName: JSON_HEDLEY_TI_CLPRU_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_TI_CLPRU_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 693
    functionDepth: 0
    functionLinenumber: 693
    functionLinenumberEnd: 694
    functionName: JSON_HEDLEY_CRAY_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CRAY_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 695
    functionDepth: 0
    functionLinenumber: 695
    functionLinenumberEnd: 696
    functionName: JSON_HEDLEY_CRAY_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CRAY_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 714
      start: 713
    functionDepth: 0
    functionLinenumber: 713
    functionLinenumberEnd: 714
    functionName: JSON_HEDLEY_IAR_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_IAR_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 715
    functionDepth: 0
    functionLinenumber: 715
    functionLinenumberEnd: 716
    functionName: JSON_HEDLEY_IAR_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_IAR_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 730
      start: 729
    functionDepth: 0
    functionLinenumber: 729
    functionLinenumberEnd: 730
    functionName: JSON_HEDLEY_TINYC_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_TINYC_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 732
      start: 731
    functionDepth: 0
    functionLinenumber: 731
    functionLinenumberEnd: 732
    functionName: JSON_HEDLEY_TINYC_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_TINYC_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 746
      start: 745
    functionDepth: 0
    functionLinenumber: 745
    functionLinenumberEnd: 746
    functionName: JSON_HEDLEY_DMC_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DMC_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 747
    functionDepth: 0
    functionLinenumber: 747
    functionLinenumberEnd: 748
    functionName: JSON_HEDLEY_DMC_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DMC_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 762
      start: 761
    functionDepth: 0
    functionLinenumber: 761
    functionLinenumberEnd: 762
    functionName: JSON_HEDLEY_COMPCERT_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_COMPCERT_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 764
      start: 763
    functionDepth: 0
    functionLinenumber: 763
    functionLinenumberEnd: 764
    functionName: JSON_HEDLEY_COMPCERT_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_COMPCERT_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 777
    functionDepth: 0
    functionLinenumber: 777
    functionLinenumberEnd: 778
    functionName: JSON_HEDLEY_PELLES_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PELLES_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 780
      start: 779
    functionDepth: 0
    functionLinenumber: 779
    functionLinenumberEnd: 780
    functionName: JSON_HEDLEY_PELLES_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PELLES_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 794
      start: 793
    functionDepth: 0
    functionLinenumber: 793
    functionLinenumberEnd: 794
    functionName: JSON_HEDLEY_MCST_LCC_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_MCST_LCC_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 796
      start: 795
    functionDepth: 0
    functionLinenumber: 795
    functionLinenumberEnd: 796
    functionName: JSON_HEDLEY_MCST_LCC_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_MCST_LCC_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 824
    functionDepth: 0
    functionLinenumber: 824
    functionLinenumberEnd: 825
    functionName: JSON_HEDLEY_GCC_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 826
    functionDepth: 0
    functionLinenumber: 826
    functionLinenumberEnd: 827
    functionName: JSON_HEDLEY_GCC_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - attribute
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 837
    functionDepth: 0
    functionLinenumber: 837
    functionLinenumberEnd: 838
    functionName: JSON_HEDLEY_HAS_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_ATTRIBUTE(attribute)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - attribute
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 840
      start: 839
    functionDepth: 0
    functionLinenumber: 839
    functionLinenumberEnd: 840
    functionName: JSON_HEDLEY_HAS_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_ATTRIBUTE(attribute)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - attribute
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 847
      start: 846
    functionDepth: 0
    functionLinenumber: 846
    functionLinenumberEnd: 847
    functionName: JSON_HEDLEY_GNUC_HAS_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GNUC_HAS_ATTRIBUTE(attribute,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - attribute
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 848
    functionDepth: 0
    functionLinenumber: 848
    functionLinenumberEnd: 849
    functionName: JSON_HEDLEY_GNUC_HAS_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GNUC_HAS_ATTRIBUTE(attribute,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - attribute
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 856
      start: 855
    functionDepth: 0
    functionLinenumber: 855
    functionLinenumberEnd: 856
    functionName: JSON_HEDLEY_GCC_HAS_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_HAS_ATTRIBUTE(attribute,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - attribute
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 858
      start: 857
    functionDepth: 0
    functionLinenumber: 857
    functionLinenumberEnd: 858
    functionName: JSON_HEDLEY_GCC_HAS_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_HAS_ATTRIBUTE(attribute,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - attribute
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 868
      start: 867
    functionDepth: 0
    functionLinenumber: 867
    functionLinenumberEnd: 868
    functionName: JSON_HEDLEY_HAS_CPP_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_CPP_ATTRIBUTE(attribute)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - attribute
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 870
      start: 869
    functionDepth: 0
    functionLinenumber: 869
    functionLinenumberEnd: 870
    functionName: JSON_HEDLEY_HAS_CPP_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_CPP_ATTRIBUTE(attribute)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ns
    - ','
    - attribute
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 877
      start: 876
    functionDepth: 0
    functionLinenumber: 876
    functionLinenumberEnd: 877
    functionName: JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS(ns,attribute)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ns
    - ','
    - attribute
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 883
      start: 882
    functionDepth: 0
    functionLinenumber: 882
    functionLinenumberEnd: 883
    functionName: JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS(ns,attribute)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ns
    - ','
    - attribute
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 885
      start: 884
    functionDepth: 0
    functionLinenumber: 884
    functionLinenumberEnd: 885
    functionName: JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS(ns,attribute)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - attribute
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 892
      start: 891
    functionDepth: 0
    functionLinenumber: 891
    functionLinenumberEnd: 892
    functionName: JSON_HEDLEY_GNUC_HAS_CPP_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GNUC_HAS_CPP_ATTRIBUTE(attribute,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - attribute
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 894
      start: 893
    functionDepth: 0
    functionLinenumber: 893
    functionLinenumberEnd: 894
    functionName: JSON_HEDLEY_GNUC_HAS_CPP_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GNUC_HAS_CPP_ATTRIBUTE(attribute,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - attribute
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 900
    functionDepth: 0
    functionLinenumber: 900
    functionLinenumberEnd: 901
    functionName: JSON_HEDLEY_GCC_HAS_CPP_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_HAS_CPP_ATTRIBUTE(attribute,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - attribute
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 903
      start: 902
    functionDepth: 0
    functionLinenumber: 902
    functionLinenumberEnd: 903
    functionName: JSON_HEDLEY_GCC_HAS_CPP_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_HAS_CPP_ATTRIBUTE(attribute,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - builtin
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 910
      start: 909
    functionDepth: 0
    functionLinenumber: 909
    functionLinenumberEnd: 910
    functionName: JSON_HEDLEY_HAS_BUILTIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_BUILTIN(builtin)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - builtin
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 912
      start: 911
    functionDepth: 0
    functionLinenumber: 911
    functionLinenumberEnd: 912
    functionName: JSON_HEDLEY_HAS_BUILTIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_BUILTIN(builtin)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - builtin
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 919
      start: 918
    functionDepth: 0
    functionLinenumber: 918
    functionLinenumberEnd: 919
    functionName: JSON_HEDLEY_GNUC_HAS_BUILTIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GNUC_HAS_BUILTIN(builtin,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - builtin
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 921
      start: 920
    functionDepth: 0
    functionLinenumber: 920
    functionLinenumberEnd: 921
    functionName: JSON_HEDLEY_GNUC_HAS_BUILTIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GNUC_HAS_BUILTIN(builtin,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - builtin
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 928
      start: 927
    functionDepth: 0
    functionLinenumber: 927
    functionLinenumberEnd: 928
    functionName: JSON_HEDLEY_GCC_HAS_BUILTIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_HAS_BUILTIN(builtin,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - builtin
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 930
      start: 929
    functionDepth: 0
    functionLinenumber: 929
    functionLinenumberEnd: 930
    functionName: JSON_HEDLEY_GCC_HAS_BUILTIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_HAS_BUILTIN(builtin,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - feature
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 937
      start: 936
    functionDepth: 0
    functionLinenumber: 936
    functionLinenumberEnd: 937
    functionName: JSON_HEDLEY_HAS_FEATURE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_FEATURE(feature)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - feature
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 939
      start: 938
    functionDepth: 0
    functionLinenumber: 938
    functionLinenumberEnd: 939
    functionName: JSON_HEDLEY_HAS_FEATURE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_FEATURE(feature)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - feature
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 946
      start: 945
    functionDepth: 0
    functionLinenumber: 945
    functionLinenumberEnd: 946
    functionName: JSON_HEDLEY_GNUC_HAS_FEATURE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GNUC_HAS_FEATURE(feature,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - feature
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 947
    functionDepth: 0
    functionLinenumber: 947
    functionLinenumberEnd: 948
    functionName: JSON_HEDLEY_GNUC_HAS_FEATURE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GNUC_HAS_FEATURE(feature,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - feature
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 954
    functionDepth: 0
    functionLinenumber: 954
    functionLinenumberEnd: 955
    functionName: JSON_HEDLEY_GCC_HAS_FEATURE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_HAS_FEATURE(feature,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - feature
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 957
      start: 956
    functionDepth: 0
    functionLinenumber: 956
    functionLinenumberEnd: 957
    functionName: JSON_HEDLEY_GCC_HAS_FEATURE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_HAS_FEATURE(feature,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - extension
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 964
      start: 963
    functionDepth: 0
    functionLinenumber: 963
    functionLinenumberEnd: 964
    functionName: JSON_HEDLEY_HAS_EXTENSION
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_EXTENSION(extension)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - extension
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 966
      start: 965
    functionDepth: 0
    functionLinenumber: 965
    functionLinenumberEnd: 966
    functionName: JSON_HEDLEY_HAS_EXTENSION
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_EXTENSION(extension)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - extension
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 973
      start: 972
    functionDepth: 0
    functionLinenumber: 972
    functionLinenumberEnd: 973
    functionName: JSON_HEDLEY_GNUC_HAS_EXTENSION
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GNUC_HAS_EXTENSION(extension,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - extension
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 975
      start: 974
    functionDepth: 0
    functionLinenumber: 974
    functionLinenumberEnd: 975
    functionName: JSON_HEDLEY_GNUC_HAS_EXTENSION
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GNUC_HAS_EXTENSION(extension,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - extension
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 982
      start: 981
    functionDepth: 0
    functionLinenumber: 981
    functionLinenumberEnd: 982
    functionName: JSON_HEDLEY_GCC_HAS_EXTENSION
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_HAS_EXTENSION(extension,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - extension
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 984
      start: 983
    functionDepth: 0
    functionLinenumber: 983
    functionLinenumberEnd: 984
    functionName: JSON_HEDLEY_GCC_HAS_EXTENSION
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_HAS_EXTENSION(extension,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - attribute
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 990
    functionDepth: 0
    functionLinenumber: 990
    functionLinenumberEnd: 991
    functionName: JSON_HEDLEY_HAS_DECLSPEC_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_DECLSPEC_ATTRIBUTE(attribute)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - attribute
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 993
      start: 992
    functionDepth: 0
    functionLinenumber: 992
    functionLinenumberEnd: 993
    functionName: JSON_HEDLEY_HAS_DECLSPEC_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_DECLSPEC_ATTRIBUTE(attribute)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - attribute
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1000
      start: 999
    functionDepth: 0
    functionLinenumber: 999
    functionLinenumberEnd: 1000
    functionName: JSON_HEDLEY_GNUC_HAS_DECLSPEC_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GNUC_HAS_DECLSPEC_ATTRIBUTE(attribute,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - attribute
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1002
      start: 1001
    functionDepth: 0
    functionLinenumber: 1001
    functionLinenumberEnd: 1002
    functionName: JSON_HEDLEY_GNUC_HAS_DECLSPEC_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GNUC_HAS_DECLSPEC_ATTRIBUTE(attribute,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - attribute
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1009
      start: 1008
    functionDepth: 0
    functionLinenumber: 1008
    functionLinenumberEnd: 1009
    functionName: JSON_HEDLEY_GCC_HAS_DECLSPEC_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_HAS_DECLSPEC_ATTRIBUTE(attribute,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - attribute
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1011
      start: 1010
    functionDepth: 0
    functionLinenumber: 1010
    functionLinenumberEnd: 1011
    functionName: JSON_HEDLEY_GCC_HAS_DECLSPEC_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_HAS_DECLSPEC_ATTRIBUTE(attribute,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - warning
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 1017
    functionDepth: 0
    functionLinenumber: 1017
    functionLinenumberEnd: 1018
    functionName: JSON_HEDLEY_HAS_WARNING
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_WARNING(warning)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - warning
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1020
      start: 1019
    functionDepth: 0
    functionLinenumber: 1019
    functionLinenumberEnd: 1020
    functionName: JSON_HEDLEY_HAS_WARNING
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_HAS_WARNING(warning)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - warning
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1027
      start: 1026
    functionDepth: 0
    functionLinenumber: 1026
    functionLinenumberEnd: 1027
    functionName: JSON_HEDLEY_GNUC_HAS_WARNING
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GNUC_HAS_WARNING(warning,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - warning
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1029
      start: 1028
    functionDepth: 0
    functionLinenumber: 1028
    functionLinenumberEnd: 1029
    functionName: JSON_HEDLEY_GNUC_HAS_WARNING
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GNUC_HAS_WARNING(warning,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - warning
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1036
      start: 1035
    functionDepth: 0
    functionLinenumber: 1035
    functionLinenumberEnd: 1036
    functionName: JSON_HEDLEY_GCC_HAS_WARNING
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_HAS_WARNING(warning,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - warning
    - ','
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1038
      start: 1037
    functionDepth: 0
    functionLinenumber: 1037
    functionLinenumberEnd: 1038
    functionName: JSON_HEDLEY_GCC_HAS_WARNING
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_HAS_WARNING(warning,major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - value
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1060
      start: 1059
    functionDepth: 0
    functionLinenumber: 1059
    functionLinenumberEnd: 1060
    functionName: JSON_HEDLEY_PRAGMA
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PRAGMA(value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - value
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1062
      start: 1061
    functionDepth: 0
    functionLinenumber: 1061
    functionLinenumberEnd: 1062
    functionName: JSON_HEDLEY_PRAGMA
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PRAGMA(value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - xpr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1122
      start: 1115
    functionDepth: 0
    functionLinenumber: 1115
    functionLinenumberEnd: 1122
    functionName: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_(xpr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - xpr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1129
      start: 1123
    functionDepth: 0
    functionLinenumber: 1123
    functionLinenumberEnd: 1129
    functionName: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_(xpr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - xpr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1136
      start: 1131
    functionDepth: 0
    functionLinenumber: 1131
    functionLinenumberEnd: 1136
    functionName: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_(xpr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1141
      start: 1140
    functionDepth: 0
    functionLinenumber: 1140
    functionLinenumberEnd: 1141
    functionName: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - T
    - ','
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1148
      start: 1147
    functionDepth: 0
    functionLinenumber: 1147
    functionLinenumberEnd: 1148
    functionName: JSON_HEDLEY_CONST_CAST
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CONST_CAST(T, expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - T
    - ','
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1158
      start: 1152
    functionDepth: 0
    functionLinenumber: 1152
    functionLinenumberEnd: 1158
    functionName: JSON_HEDLEY_CONST_CAST
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CONST_CAST(T, expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - T
    - ','
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1160
      start: 1159
    functionDepth: 0
    functionLinenumber: 1159
    functionLinenumberEnd: 1160
    functionName: JSON_HEDLEY_CONST_CAST
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CONST_CAST(T, expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - T
    - ','
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1167
      start: 1166
    functionDepth: 0
    functionLinenumber: 1166
    functionLinenumberEnd: 1167
    functionName: JSON_HEDLEY_REINTERPRET_CAST
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_REINTERPRET_CAST(T, expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - T
    - ','
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1169
      start: 1168
    functionDepth: 0
    functionLinenumber: 1168
    functionLinenumberEnd: 1169
    functionName: JSON_HEDLEY_REINTERPRET_CAST
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_REINTERPRET_CAST(T, expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - T
    - ','
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1176
      start: 1175
    functionDepth: 0
    functionLinenumber: 1175
    functionLinenumberEnd: 1176
    functionName: JSON_HEDLEY_STATIC_CAST
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_STATIC_CAST(T, expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - T
    - ','
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1178
      start: 1177
    functionDepth: 0
    functionLinenumber: 1177
    functionLinenumberEnd: 1178
    functionName: JSON_HEDLEY_STATIC_CAST
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_STATIC_CAST(T, expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - T
    - ','
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1190
      start: 1185
    functionDepth: 0
    functionLinenumber: 1185
    functionLinenumberEnd: 1190
    functionName: JSON_HEDLEY_CPP_CAST
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CPP_CAST(T, expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - T
    - ','
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1195
      start: 1191
    functionDepth: 0
    functionLinenumber: 1191
    functionLinenumberEnd: 1195
    functionName: JSON_HEDLEY_CPP_CAST
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CPP_CAST(T, expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - T
    - ','
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1197
      start: 1196
    functionDepth: 0
    functionLinenumber: 1196
    functionLinenumberEnd: 1197
    functionName: JSON_HEDLEY_CPP_CAST
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CPP_CAST(T, expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - T
    - ','
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1200
      start: 1199
    functionDepth: 0
    functionLinenumber: 1199
    functionLinenumberEnd: 1200
    functionName: JSON_HEDLEY_CPP_CAST
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CPP_CAST(T, expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - since
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1347
      start: 1346
    functionDepth: 0
    functionLinenumber: 1346
    functionLinenumberEnd: 1347
    functionName: JSON_HEDLEY_DEPRECATED
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DEPRECATED(since)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - since
    - ','
    - replacement
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1348
      start: 1347
    functionDepth: 0
    functionLinenumber: 1347
    functionLinenumberEnd: 1348
    functionName: JSON_HEDLEY_DEPRECATED_FOR
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DEPRECATED_FOR(since, replacement)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - since
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1362
      start: 1361
    functionDepth: 0
    functionLinenumber: 1361
    functionLinenumberEnd: 1362
    functionName: JSON_HEDLEY_DEPRECATED
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DEPRECATED(since)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - since
    - ','
    - replacement
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1363
      start: 1362
    functionDepth: 0
    functionLinenumber: 1362
    functionLinenumberEnd: 1363
    functionName: JSON_HEDLEY_DEPRECATED_FOR
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DEPRECATED_FOR(since, replacement)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - since
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1365
      start: 1364
    functionDepth: 0
    functionLinenumber: 1364
    functionLinenumberEnd: 1365
    functionName: JSON_HEDLEY_DEPRECATED
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DEPRECATED(since)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - since
    - ','
    - replacement
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1366
      start: 1365
    functionDepth: 0
    functionLinenumber: 1365
    functionLinenumberEnd: 1366
    functionName: JSON_HEDLEY_DEPRECATED_FOR
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DEPRECATED_FOR(since, replacement)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - since
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1384
      start: 1383
    functionDepth: 0
    functionLinenumber: 1383
    functionLinenumberEnd: 1384
    functionName: JSON_HEDLEY_DEPRECATED
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DEPRECATED(since)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - since
    - ','
    - replacement
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1385
      start: 1384
    functionDepth: 0
    functionLinenumber: 1384
    functionLinenumberEnd: 1385
    functionName: JSON_HEDLEY_DEPRECATED_FOR
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DEPRECATED_FOR(since, replacement)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - since
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1390
      start: 1389
    functionDepth: 0
    functionLinenumber: 1389
    functionLinenumberEnd: 1390
    functionName: JSON_HEDLEY_DEPRECATED
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DEPRECATED(since)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - since
    - ','
    - replacement
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1391
      start: 1390
    functionDepth: 0
    functionLinenumber: 1390
    functionLinenumberEnd: 1391
    functionName: JSON_HEDLEY_DEPRECATED_FOR
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DEPRECATED_FOR(since, replacement)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - since
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1393
      start: 1392
    functionDepth: 0
    functionLinenumber: 1392
    functionLinenumberEnd: 1393
    functionName: JSON_HEDLEY_DEPRECATED
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DEPRECATED(since)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - since
    - ','
    - replacement
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1394
      start: 1393
    functionDepth: 0
    functionLinenumber: 1393
    functionLinenumberEnd: 1394
    functionName: JSON_HEDLEY_DEPRECATED_FOR
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_DEPRECATED_FOR(since, replacement)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - available_since
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1408
      start: 1407
    functionDepth: 0
    functionLinenumber: 1407
    functionLinenumberEnd: 1408
    functionName: JSON_HEDLEY_UNAVAILABLE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_UNAVAILABLE(available_since)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1438
      start: 1437
    functionDepth: 0
    functionLinenumber: 1437
    functionLinenumberEnd: 1438
    functionName: JSON_HEDLEY_WARN_UNUSED_RESULT_MSG
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_WARN_UNUSED_RESULT_MSG(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1441
      start: 1440
    functionDepth: 0
    functionLinenumber: 1440
    functionLinenumberEnd: 1441
    functionName: JSON_HEDLEY_WARN_UNUSED_RESULT_MSG
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_WARN_UNUSED_RESULT_MSG(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1444
      start: 1443
    functionDepth: 0
    functionLinenumber: 1443
    functionLinenumberEnd: 1444
    functionName: JSON_HEDLEY_WARN_UNUSED_RESULT_MSG
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_WARN_UNUSED_RESULT_MSG(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1447
      start: 1446
    functionDepth: 0
    functionLinenumber: 1446
    functionLinenumberEnd: 1447
    functionName: JSON_HEDLEY_WARN_UNUSED_RESULT_MSG
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_WARN_UNUSED_RESULT_MSG(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - position
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1462
      start: 1461
    functionDepth: 0
    functionLinenumber: 1461
    functionLinenumberEnd: 1462
    functionName: JSON_HEDLEY_SENTINEL
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_SENTINEL(position)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1537
      start: 1536
    functionDepth: 0
    functionLinenumber: 1536
    functionLinenumberEnd: 1537
    functionName: JSON_HEDLEY_ASSUME
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_ASSUME(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1539
      start: 1538
    functionDepth: 0
    functionLinenumber: 1538
    functionLinenumberEnd: 1539
    functionName: JSON_HEDLEY_ASSUME
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_ASSUME(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1544
      start: 1543
    functionDepth: 0
    functionLinenumber: 1543
    functionLinenumberEnd: 1544
    functionName: JSON_HEDLEY_ASSUME
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_ASSUME(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1546
      start: 1545
    functionDepth: 0
    functionLinenumber: 1545
    functionLinenumberEnd: 1546
    functionName: JSON_HEDLEY_ASSUME
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_ASSUME(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1557
      start: 1556
    functionDepth: 0
    functionLinenumber: 1556
    functionLinenumberEnd: 1557
    functionName: JSON_HEDLEY_UNREACHABLE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_UNREACHABLE()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1559
      start: 1558
    functionDepth: 0
    functionLinenumber: 1558
    functionLinenumberEnd: 1559
    functionName: JSON_HEDLEY_UNREACHABLE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_UNREACHABLE()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1563
      start: 1562
    functionDepth: 0
    functionLinenumber: 1562
    functionLinenumberEnd: 1563
    functionName: JSON_HEDLEY_ASSUME
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_ASSUME(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1565
      start: 1564
    functionDepth: 0
    functionLinenumber: 1564
    functionLinenumberEnd: 1565
    functionName: JSON_HEDLEY_ASSUME
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_ASSUME(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - value
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1572
      start: 1571
    functionDepth: 0
    functionLinenumber: 1571
    functionLinenumberEnd: 1572
    functionName: JSON_HEDLEY_UNREACHABLE_RETURN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_UNREACHABLE_RETURN(value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - value
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1574
      start: 1573
    functionDepth: 0
    functionLinenumber: 1573
    functionLinenumberEnd: 1574
    functionName: JSON_HEDLEY_UNREACHABLE_RETURN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_UNREACHABLE_RETURN(value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - value
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1577
      start: 1576
    functionDepth: 0
    functionLinenumber: 1576
    functionLinenumberEnd: 1577
    functionName: JSON_HEDLEY_UNREACHABLE_RETURN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_UNREACHABLE_RETURN(value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1580
      start: 1579
    functionDepth: 0
    functionLinenumber: 1579
    functionLinenumberEnd: 1580
    functionName: JSON_HEDLEY_UNREACHABLE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_UNREACHABLE()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1605
      start: 1604
    functionDepth: 0
    functionLinenumber: 1604
    functionLinenumberEnd: 1605
    functionName: JSON_HEDLEY_NON_NULL
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_NON_NULL(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - string_idx
    - ','
    - first_to_check
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1615
      start: 1614
    functionDepth: 0
    functionLinenumber: 1614
    functionLinenumberEnd: 1615
    functionName: JSON_HEDLEY_PRINTF_FORMAT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PRINTF_FORMAT(string_idx,first_to_check)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - string_idx
    - ','
    - first_to_check
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1617
      start: 1616
    functionDepth: 0
    functionLinenumber: 1616
    functionLinenumberEnd: 1617
    functionName: JSON_HEDLEY_PRINTF_FORMAT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PRINTF_FORMAT(string_idx,first_to_check)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - string_idx
    - ','
    - first_to_check
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1636
      start: 1635
    functionDepth: 0
    functionLinenumber: 1635
    functionLinenumberEnd: 1636
    functionName: JSON_HEDLEY_PRINTF_FORMAT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PRINTF_FORMAT(string_idx,first_to_check)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - string_idx
    - ','
    - first_to_check
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1638
      start: 1637
    functionDepth: 0
    functionLinenumber: 1637
    functionLinenumberEnd: 1638
    functionName: JSON_HEDLEY_PRINTF_FORMAT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PRINTF_FORMAT(string_idx,first_to_check)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1668
      start: 1667
    functionDepth: 0
    functionLinenumber: 1667
    functionLinenumberEnd: 1668
    functionName: JSON_HEDLEY_UNPREDICTABLE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_UNPREDICTABLE(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - expr
    - ','
    - value
    - ','
    - probability
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1674
      start: 1673
    functionDepth: 0
    functionLinenumber: 1673
    functionLinenumberEnd: 1674
    functionName: JSON_HEDLEY_PREDICT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PREDICT(expr, value, probability)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - expr
    - ','
    - probability
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1675
      start: 1674
    functionDepth: 0
    functionLinenumber: 1674
    functionLinenumberEnd: 1675
    functionName: JSON_HEDLEY_PREDICT_TRUE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PREDICT_TRUE(expr, probability)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - expr
    - ','
    - probability
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1676
      start: 1675
    functionDepth: 0
    functionLinenumber: 1675
    functionLinenumberEnd: 1676
    functionName: JSON_HEDLEY_PREDICT_FALSE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PREDICT_FALSE(expr, probability)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1677
      start: 1676
    functionDepth: 0
    functionLinenumber: 1676
    functionLinenumberEnd: 1677
    functionName: JSON_HEDLEY_LIKELY
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_LIKELY(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1678
      start: 1677
    functionDepth: 0
    functionLinenumber: 1677
    functionLinenumberEnd: 1678
    functionName: JSON_HEDLEY_UNLIKELY
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_UNLIKELY(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - expr
    - ','
    - expected
    - ','
    - probability
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1697
      start: 1695
    functionDepth: 0
    functionLinenumber: 1695
    functionLinenumberEnd: 1697
    functionName: JSON_HEDLEY_PREDICT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PREDICT(expr, expected, probability)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - expr
    - ','
    - probability
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1702
      start: 1697
    functionDepth: 0
    functionLinenumber: 1697
    functionLinenumberEnd: 1702
    functionName: JSON_HEDLEY_PREDICT_TRUE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PREDICT_TRUE(expr, probability)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - expr
    - ','
    - probability
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1707
      start: 1702
    functionDepth: 0
    functionLinenumber: 1702
    functionLinenumberEnd: 1707
    functionName: JSON_HEDLEY_PREDICT_FALSE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PREDICT_FALSE(expr, probability)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1708
      start: 1707
    functionDepth: 0
    functionLinenumber: 1707
    functionLinenumberEnd: 1708
    functionName: JSON_HEDLEY_LIKELY
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_LIKELY(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1709
      start: 1708
    functionDepth: 0
    functionLinenumber: 1708
    functionLinenumberEnd: 1709
    functionName: JSON_HEDLEY_UNLIKELY
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_UNLIKELY(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - expr
    - ','
    - expected
    - ','
    - probability
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1711
      start: 1710
    functionDepth: 0
    functionLinenumber: 1710
    functionLinenumberEnd: 1711
    functionName: JSON_HEDLEY_PREDICT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PREDICT(expr, expected, probability)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - expr
    - ','
    - probability
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1712
      start: 1711
    functionDepth: 0
    functionLinenumber: 1711
    functionLinenumberEnd: 1712
    functionName: JSON_HEDLEY_PREDICT_TRUE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PREDICT_TRUE(expr, probability)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - expr
    - ','
    - probability
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1713
      start: 1712
    functionDepth: 0
    functionLinenumber: 1712
    functionLinenumberEnd: 1713
    functionName: JSON_HEDLEY_PREDICT_FALSE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_PREDICT_FALSE(expr, probability)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1714
      start: 1713
    functionDepth: 0
    functionLinenumber: 1713
    functionLinenumberEnd: 1714
    functionName: JSON_HEDLEY_LIKELY
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_LIKELY(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1715
      start: 1714
    functionDepth: 0
    functionLinenumber: 1714
    functionLinenumberEnd: 1715
    functionName: JSON_HEDLEY_UNLIKELY
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_UNLIKELY(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1718
      start: 1717
    functionDepth: 0
    functionLinenumber: 1717
    functionLinenumberEnd: 1718
    functionName: JSON_HEDLEY_UNPREDICTABLE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_UNPREDICTABLE(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2060
      start: 2059
    functionDepth: 0
    functionLinenumber: 2059
    functionLinenumberEnd: 2060
    functionName: JSON_HEDLEY_ARRAY_PARAM
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_ARRAY_PARAM(name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2087
      start: 2086
    functionDepth: 0
    functionLinenumber: 2086
    functionLinenumberEnd: 2087
    functionName: JSON_HEDLEY_IS_CONSTANT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_IS_CONSTANT(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2099
      start: 2098
    functionDepth: 0
    functionLinenumber: 2098
    functionLinenumberEnd: 2099
    functionName: JSON_HEDLEY_IS_CONSTEXPR_
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_IS_CONSTEXPR_(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2102
      start: 2101
    functionDepth: 0
    functionLinenumber: 2101
    functionLinenumberEnd: 2102
    functionName: JSON_HEDLEY_IS_CONSTEXPR_
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_IS_CONSTEXPR_(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2116
      start: 2115
    functionDepth: 0
    functionLinenumber: 2115
    functionLinenumberEnd: 2116
    functionName: JSON_HEDLEY_IS_CONSTEXPR_
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_IS_CONSTEXPR_(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2119
      start: 2118
    functionDepth: 0
    functionLinenumber: 2118
    functionLinenumberEnd: 2119
    functionName: JSON_HEDLEY_IS_CONSTEXPR_
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_IS_CONSTEXPR_(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2140
      start: 2131
    functionDepth: 0
    functionLinenumber: 2131
    functionLinenumberEnd: 2140
    functionName: JSON_HEDLEY_IS_CONSTEXPR_
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_IS_CONSTEXPR_(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2145
      start: 2144
    functionDepth: 0
    functionLinenumber: 2144
    functionLinenumberEnd: 2145
    functionName: JSON_HEDLEY_IS_CONSTANT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_IS_CONSTANT(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2147
      start: 2146
    functionDepth: 0
    functionLinenumber: 2146
    functionLinenumberEnd: 2147
    functionName: JSON_HEDLEY_REQUIRE_CONSTEXPR
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_REQUIRE_CONSTEXPR(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2150
      start: 2149
    functionDepth: 0
    functionLinenumber: 2149
    functionLinenumberEnd: 2150
    functionName: JSON_HEDLEY_IS_CONSTANT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_IS_CONSTANT(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2152
      start: 2151
    functionDepth: 0
    functionLinenumber: 2151
    functionLinenumberEnd: 2152
    functionName: JSON_HEDLEY_REQUIRE_CONSTEXPR
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_REQUIRE_CONSTEXPR(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - expr
    - ','
    - message
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2185
      start: 2184
    functionDepth: 0
    functionLinenumber: 2184
    functionLinenumberEnd: 2185
    functionName: JSON_HEDLEY_STATIC_ASSERT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_STATIC_ASSERT(expr, message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - expr
    - ','
    - message
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2190
      start: 2189
    functionDepth: 0
    functionLinenumber: 2189
    functionLinenumberEnd: 2190
    functionName: JSON_HEDLEY_STATIC_ASSERT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_STATIC_ASSERT(expr, message)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2220
      start: 2215
    functionDepth: 0
    functionLinenumber: 2215
    functionLinenumberEnd: 2220
    functionName: JSON_HEDLEY_MESSAGE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_MESSAGE(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2224
      start: 2223
    functionDepth: 0
    functionLinenumber: 2223
    functionLinenumberEnd: 2224
    functionName: JSON_HEDLEY_MESSAGE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_MESSAGE(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2226
      start: 2225
    functionDepth: 0
    functionLinenumber: 2225
    functionLinenumberEnd: 2226
    functionName: JSON_HEDLEY_MESSAGE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_MESSAGE(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2228
      start: 2227
    functionDepth: 0
    functionLinenumber: 2227
    functionLinenumberEnd: 2228
    functionName: JSON_HEDLEY_MESSAGE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_MESSAGE(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2230
      start: 2229
    functionDepth: 0
    functionLinenumber: 2229
    functionLinenumberEnd: 2230
    functionName: JSON_HEDLEY_MESSAGE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_MESSAGE(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2243
      start: 2238
    functionDepth: 0
    functionLinenumber: 2238
    functionLinenumberEnd: 2243
    functionName: JSON_HEDLEY_WARNING
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_WARNING(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2248
      start: 2247
    functionDepth: 0
    functionLinenumber: 2247
    functionLinenumberEnd: 2248
    functionName: JSON_HEDLEY_WARNING
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_WARNING(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2252
      start: 2251
    functionDepth: 0
    functionLinenumber: 2251
    functionLinenumberEnd: 2252
    functionName: JSON_HEDLEY_WARNING
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_WARNING(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2254
      start: 2253
    functionDepth: 0
    functionLinenumber: 2253
    functionLinenumberEnd: 2254
    functionName: JSON_HEDLEY_WARNING
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_WARNING(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2269
      start: 2264
    functionDepth: 0
    functionLinenumber: 2264
    functionLinenumberEnd: 2269
    functionName: JSON_HEDLEY_REQUIRE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_REQUIRE(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - expr
    - ','
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2274
      start: 2269
    functionDepth: 0
    functionLinenumber: 2269
    functionLinenumberEnd: 2274
    functionName: JSON_HEDLEY_REQUIRE_MSG
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_REQUIRE_MSG(expr,msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2276
      start: 2275
    functionDepth: 0
    functionLinenumber: 2275
    functionLinenumberEnd: 2276
    functionName: JSON_HEDLEY_REQUIRE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_REQUIRE(expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - expr
    - ','
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2277
      start: 2276
    functionDepth: 0
    functionLinenumber: 2276
    functionLinenumberEnd: 2277
    functionName: JSON_HEDLEY_REQUIRE_MSG
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_REQUIRE_MSG(expr,msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - T
    - ','
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2302
      start: 2296
    functionDepth: 0
    functionLinenumber: 2296
    functionLinenumberEnd: 2302
    functionName: JSON_HEDLEY_FLAGS_CAST
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_FLAGS_CAST(T, expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - T
    - ','
    - expr
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2304
      start: 2303
    functionDepth: 0
    functionLinenumber: 2303
    functionLinenumberEnd: 2304
    functionName: JSON_HEDLEY_FLAGS_CAST
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_FLAGS_CAST(T, expr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2324
      start: 2323
    functionDepth: 0
    functionLinenumber: 2323
    functionLinenumberEnd: 2324
    functionName: JSON_HEDLEY_GCC_NOT_CLANG_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_NOT_CLANG_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2326
      start: 2325
    functionDepth: 0
    functionLinenumber: 2325
    functionLinenumberEnd: 2326
    functionName: JSON_HEDLEY_GCC_NOT_CLANG_VERSION_CHECK
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_GCC_NOT_CLANG_VERSION_CHECK(major,minor,patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - attribute
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2332
      start: 2331
    functionDepth: 0
    functionLinenumber: 2331
    functionLinenumberEnd: 2332
    functionName: JSON_HEDLEY_CLANG_HAS_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CLANG_HAS_ATTRIBUTE(attribute)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - attribute
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2337
      start: 2336
    functionDepth: 0
    functionLinenumber: 2336
    functionLinenumberEnd: 2337
    functionName: JSON_HEDLEY_CLANG_HAS_CPP_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CLANG_HAS_CPP_ATTRIBUTE(attribute)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - builtin
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2342
      start: 2341
    functionDepth: 0
    functionLinenumber: 2341
    functionLinenumberEnd: 2342
    functionName: JSON_HEDLEY_CLANG_HAS_BUILTIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CLANG_HAS_BUILTIN(builtin)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - feature
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2347
      start: 2346
    functionDepth: 0
    functionLinenumber: 2346
    functionLinenumberEnd: 2347
    functionName: JSON_HEDLEY_CLANG_HAS_FEATURE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CLANG_HAS_FEATURE(feature)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - extension
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2352
      start: 2351
    functionDepth: 0
    functionLinenumber: 2351
    functionLinenumberEnd: 2352
    functionName: JSON_HEDLEY_CLANG_HAS_EXTENSION
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CLANG_HAS_EXTENSION(extension)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - attribute
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2357
      start: 2356
    functionDepth: 0
    functionLinenumber: 2356
    functionLinenumberEnd: 2357
    functionName: JSON_HEDLEY_CLANG_HAS_DECLSPEC_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CLANG_HAS_DECLSPEC_ATTRIBUTE(attribute)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - warning
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2362
      start: 2361
    functionDepth: 0
    functionLinenumber: 2361
    functionLinenumberEnd: 2362
    functionName: JSON_HEDLEY_CLANG_HAS_WARNING
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_HEDLEY_CLANG_HAS_WARNING(warning)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - exception
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2518
      start: 2517
    functionDepth: 0
    functionLinenumber: 2517
    functionLinenumberEnd: 2518
    functionName: JSON_THROW
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_THROW(exception)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - exception
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2520
      start: 2519
    functionDepth: 0
    functionLinenumber: 2519
    functionLinenumberEnd: 2520
    functionName: JSON_CATCH
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_CATCH(exception)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - exception
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2521
      start: 2520
    functionDepth: 0
    functionLinenumber: 2520
    functionLinenumberEnd: 2521
    functionName: JSON_INTERNAL_CATCH
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_INTERNAL_CATCH(exception)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - exception
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2524
      start: 2523
    functionDepth: 0
    functionLinenumber: 2523
    functionLinenumberEnd: 2524
    functionName: JSON_THROW
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_THROW(exception)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - exception
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2526
      start: 2525
    functionDepth: 0
    functionLinenumber: 2525
    functionLinenumberEnd: 2526
    functionName: JSON_CATCH
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_CATCH(exception)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - exception
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2527
      start: 2526
    functionDepth: 0
    functionLinenumber: 2526
    functionLinenumberEnd: 2527
    functionName: JSON_INTERNAL_CATCH
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_INTERNAL_CATCH(exception)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2553
      start: 2552
    functionDepth: 0
    functionLinenumber: 2552
    functionLinenumberEnd: 2553
    functionName: JSON_ASSERT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_ASSERT(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - ENUM_TYPE
    - ','
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2592
      start: 2567
    functionDepth: 0
    functionLinenumber: 2567
    functionLinenumberEnd: 2592
    functionName: NLOHMANN_JSON_SERIALIZE_ENUM
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_SERIALIZE_ENUM(ENUM_TYPE, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2614
      start: 2613
    functionDepth: 0
    functionLinenumber: 2613
    functionLinenumberEnd: 2614
    functionName: NLOHMANN_JSON_EXPAND
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_EXPAND( x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 133
    argNames:
    - (
    - _1
    - ','
    - _2
    - ','
    - _3
    - ','
    - _4
    - ','
    - _5
    - ','
    - _6
    - ','
    - _7
    - ','
    - _8
    - ','
    - _9
    - ','
    - _10
    - ','
    - _11
    - ','
    - _12
    - ','
    - _13
    - ','
    - _14
    - ','
    - _15
    - ','
    - _16
    - ','
    - _17
    - ','
    - _18
    - ','
    - _19
    - ','
    - _20
    - ','
    - _21
    - ','
    - _22
    - ','
    - _23
    - ','
    - _24
    - ','
    - _25
    - ','
    - _26
    - ','
    - _27
    - ','
    - _28
    - ','
    - _29
    - ','
    - _30
    - ','
    - _31
    - ','
    - _32
    - ','
    - _33
    - ','
    - _34
    - ','
    - _35
    - ','
    - _36
    - ','
    - _37
    - ','
    - _38
    - ','
    - _39
    - ','
    - _40
    - ','
    - _41
    - ','
    - _42
    - ','
    - _43
    - ','
    - _44
    - ','
    - _45
    - ','
    - _46
    - ','
    - _47
    - ','
    - _48
    - ','
    - _49
    - ','
    - _50
    - ','
    - _51
    - ','
    - _52
    - ','
    - _53
    - ','
    - _54
    - ','
    - _55
    - ','
    - _56
    - ','
    - _57
    - ','
    - _58
    - ','
    - _59
    - ','
    - _60
    - ','
    - _61
    - ','
    - _62
    - ','
    - _63
    - ','
    - _64
    - ','
    - NAME
    - ','
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2615
      start: 2614
    functionDepth: 0
    functionLinenumber: 2614
    functionLinenumberEnd: 2615
    functionName: NLOHMANN_JSON_GET_MACRO
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_GET_MACRO(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11,
      _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27,
      _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43,
      _44, _45, _46, _47, _48, _49, _50, _51, _52, _53, _54, _55, _56, _57, _58, _59,
      _60, _61, _62, _63, _64, NAME,...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2680
      start: 2615
    functionDepth: 0
    functionLinenumber: 2615
    functionLinenumberEnd: 2680
    functionName: NLOHMANN_JSON_PASTE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - func
    - ','
    - v1
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2681
      start: 2680
    functionDepth: 0
    functionLinenumber: 2680
    functionLinenumberEnd: 2681
    functionName: NLOHMANN_JSON_PASTE2
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE2(func, v1)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2682
      start: 2681
    functionDepth: 0
    functionLinenumber: 2681
    functionLinenumberEnd: 2682
    functionName: NLOHMANN_JSON_PASTE3
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE3(func, v1, v2)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2683
      start: 2682
    functionDepth: 0
    functionLinenumber: 2682
    functionLinenumberEnd: 2683
    functionName: NLOHMANN_JSON_PASTE4
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE4(func, v1, v2, v3)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 11
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2684
      start: 2683
    functionDepth: 0
    functionLinenumber: 2683
    functionLinenumberEnd: 2684
    functionName: NLOHMANN_JSON_PASTE5
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE5(func, v1, v2, v3, v4)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 13
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2685
      start: 2684
    functionDepth: 0
    functionLinenumber: 2684
    functionLinenumberEnd: 2685
    functionName: NLOHMANN_JSON_PASTE6
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE6(func, v1, v2, v3, v4, v5)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 15
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2686
      start: 2685
    functionDepth: 0
    functionLinenumber: 2685
    functionLinenumberEnd: 2686
    functionName: NLOHMANN_JSON_PASTE7
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE7(func, v1, v2, v3, v4, v5, v6)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 17
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2687
      start: 2686
    functionDepth: 0
    functionLinenumber: 2686
    functionLinenumberEnd: 2687
    functionName: NLOHMANN_JSON_PASTE8
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE8(func, v1, v2, v3, v4, v5, v6, v7)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 19
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2688
      start: 2687
    functionDepth: 0
    functionLinenumber: 2687
    functionLinenumberEnd: 2688
    functionName: NLOHMANN_JSON_PASTE9
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE9(func, v1, v2, v3, v4, v5, v6, v7, v8)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 21
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2689
      start: 2688
    functionDepth: 0
    functionLinenumber: 2688
    functionLinenumberEnd: 2689
    functionName: NLOHMANN_JSON_PASTE10
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE10(func, v1, v2, v3, v4, v5, v6, v7, v8, v9)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 23
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2690
      start: 2689
    functionDepth: 0
    functionLinenumber: 2689
    functionLinenumberEnd: 2690
    functionName: NLOHMANN_JSON_PASTE11
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE11(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 25
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2691
      start: 2690
    functionDepth: 0
    functionLinenumber: 2690
    functionLinenumberEnd: 2691
    functionName: NLOHMANN_JSON_PASTE12
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE12(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 27
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2692
      start: 2691
    functionDepth: 0
    functionLinenumber: 2691
    functionLinenumberEnd: 2692
    functionName: NLOHMANN_JSON_PASTE13
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE13(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 29
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2693
      start: 2692
    functionDepth: 0
    functionLinenumber: 2692
    functionLinenumberEnd: 2693
    functionName: NLOHMANN_JSON_PASTE14
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE14(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 31
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2694
      start: 2693
    functionDepth: 0
    functionLinenumber: 2693
    functionLinenumberEnd: 2694
    functionName: NLOHMANN_JSON_PASTE15
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE15(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 33
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2695
      start: 2694
    functionDepth: 0
    functionLinenumber: 2694
    functionLinenumberEnd: 2695
    functionName: NLOHMANN_JSON_PASTE16
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE16(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 35
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2696
      start: 2695
    functionDepth: 0
    functionLinenumber: 2695
    functionLinenumberEnd: 2696
    functionName: NLOHMANN_JSON_PASTE17
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE17(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 37
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2697
      start: 2696
    functionDepth: 0
    functionLinenumber: 2696
    functionLinenumberEnd: 2697
    functionName: NLOHMANN_JSON_PASTE18
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE18(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 39
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2698
      start: 2697
    functionDepth: 0
    functionLinenumber: 2697
    functionLinenumberEnd: 2698
    functionName: NLOHMANN_JSON_PASTE19
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE19(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 41
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2699
      start: 2698
    functionDepth: 0
    functionLinenumber: 2698
    functionLinenumberEnd: 2699
    functionName: NLOHMANN_JSON_PASTE20
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE20(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 43
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2700
      start: 2699
    functionDepth: 0
    functionLinenumber: 2699
    functionLinenumberEnd: 2700
    functionName: NLOHMANN_JSON_PASTE21
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE21(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 45
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2701
      start: 2700
    functionDepth: 0
    functionLinenumber: 2700
    functionLinenumberEnd: 2701
    functionName: NLOHMANN_JSON_PASTE22
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE22(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 47
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2702
      start: 2701
    functionDepth: 0
    functionLinenumber: 2701
    functionLinenumberEnd: 2702
    functionName: NLOHMANN_JSON_PASTE23
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE23(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 49
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2703
      start: 2702
    functionDepth: 0
    functionLinenumber: 2702
    functionLinenumberEnd: 2703
    functionName: NLOHMANN_JSON_PASTE24
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE24(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 51
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2704
      start: 2703
    functionDepth: 0
    functionLinenumber: 2703
    functionLinenumberEnd: 2704
    functionName: NLOHMANN_JSON_PASTE25
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE25(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 53
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2705
      start: 2704
    functionDepth: 0
    functionLinenumber: 2704
    functionLinenumberEnd: 2705
    functionName: NLOHMANN_JSON_PASTE26
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE26(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 55
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2706
      start: 2705
    functionDepth: 0
    functionLinenumber: 2705
    functionLinenumberEnd: 2706
    functionName: NLOHMANN_JSON_PASTE27
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE27(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 57
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2707
      start: 2706
    functionDepth: 0
    functionLinenumber: 2706
    functionLinenumberEnd: 2707
    functionName: NLOHMANN_JSON_PASTE28
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE28(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 59
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2708
      start: 2707
    functionDepth: 0
    functionLinenumber: 2707
    functionLinenumberEnd: 2708
    functionName: NLOHMANN_JSON_PASTE29
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE29(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 61
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2709
      start: 2708
    functionDepth: 0
    functionLinenumber: 2708
    functionLinenumberEnd: 2709
    functionName: NLOHMANN_JSON_PASTE30
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE30(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 63
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2710
      start: 2709
    functionDepth: 0
    functionLinenumber: 2709
    functionLinenumberEnd: 2710
    functionName: NLOHMANN_JSON_PASTE31
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE31(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 65
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2711
      start: 2710
    functionDepth: 0
    functionLinenumber: 2710
    functionLinenumberEnd: 2711
    functionName: NLOHMANN_JSON_PASTE32
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE32(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 67
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2712
      start: 2711
    functionDepth: 0
    functionLinenumber: 2711
    functionLinenumberEnd: 2712
    functionName: NLOHMANN_JSON_PASTE33
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE33(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 69
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2713
      start: 2712
    functionDepth: 0
    functionLinenumber: 2712
    functionLinenumberEnd: 2713
    functionName: NLOHMANN_JSON_PASTE34
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE34(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 71
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2714
      start: 2713
    functionDepth: 0
    functionLinenumber: 2713
    functionLinenumberEnd: 2714
    functionName: NLOHMANN_JSON_PASTE35
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE35(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 73
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2715
      start: 2714
    functionDepth: 0
    functionLinenumber: 2714
    functionLinenumberEnd: 2715
    functionName: NLOHMANN_JSON_PASTE36
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE36(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 75
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2716
      start: 2715
    functionDepth: 0
    functionLinenumber: 2715
    functionLinenumberEnd: 2716
    functionName: NLOHMANN_JSON_PASTE37
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE37(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 77
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2717
      start: 2716
    functionDepth: 0
    functionLinenumber: 2716
    functionLinenumberEnd: 2717
    functionName: NLOHMANN_JSON_PASTE38
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE38(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 79
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2718
      start: 2717
    functionDepth: 0
    functionLinenumber: 2717
    functionLinenumberEnd: 2718
    functionName: NLOHMANN_JSON_PASTE39
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE39(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 81
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2719
      start: 2718
    functionDepth: 0
    functionLinenumber: 2718
    functionLinenumberEnd: 2719
    functionName: NLOHMANN_JSON_PASTE40
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE40(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 83
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2720
      start: 2719
    functionDepth: 0
    functionLinenumber: 2719
    functionLinenumberEnd: 2720
    functionName: NLOHMANN_JSON_PASTE41
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE41(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 85
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2721
      start: 2720
    functionDepth: 0
    functionLinenumber: 2720
    functionLinenumberEnd: 2721
    functionName: NLOHMANN_JSON_PASTE42
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE42(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 87
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2722
      start: 2721
    functionDepth: 0
    functionLinenumber: 2721
    functionLinenumberEnd: 2722
    functionName: NLOHMANN_JSON_PASTE43
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE43(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 89
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2723
      start: 2722
    functionDepth: 0
    functionLinenumber: 2722
    functionLinenumberEnd: 2723
    functionName: NLOHMANN_JSON_PASTE44
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE44(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 91
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2724
      start: 2723
    functionDepth: 0
    functionLinenumber: 2723
    functionLinenumberEnd: 2724
    functionName: NLOHMANN_JSON_PASTE45
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE45(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 93
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2725
      start: 2724
    functionDepth: 0
    functionLinenumber: 2724
    functionLinenumberEnd: 2725
    functionName: NLOHMANN_JSON_PASTE46
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE46(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 95
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2726
      start: 2725
    functionDepth: 0
    functionLinenumber: 2725
    functionLinenumberEnd: 2726
    functionName: NLOHMANN_JSON_PASTE47
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE47(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 97
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2727
      start: 2726
    functionDepth: 0
    functionLinenumber: 2726
    functionLinenumberEnd: 2727
    functionName: NLOHMANN_JSON_PASTE48
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE48(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 99
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - ','
    - v48
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2728
      start: 2727
    functionDepth: 0
    functionLinenumber: 2727
    functionLinenumberEnd: 2728
    functionName: NLOHMANN_JSON_PASTE49
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE49(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47, v48)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 101
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - ','
    - v48
    - ','
    - v49
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2729
      start: 2728
    functionDepth: 0
    functionLinenumber: 2728
    functionLinenumberEnd: 2729
    functionName: NLOHMANN_JSON_PASTE50
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE50(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47, v48, v49)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 103
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - ','
    - v48
    - ','
    - v49
    - ','
    - v50
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2730
      start: 2729
    functionDepth: 0
    functionLinenumber: 2729
    functionLinenumberEnd: 2730
    functionName: NLOHMANN_JSON_PASTE51
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE51(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47, v48, v49, v50)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 105
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - ','
    - v48
    - ','
    - v49
    - ','
    - v50
    - ','
    - v51
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2731
      start: 2730
    functionDepth: 0
    functionLinenumber: 2730
    functionLinenumberEnd: 2731
    functionName: NLOHMANN_JSON_PASTE52
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE52(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47, v48, v49, v50, v51)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 107
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - ','
    - v48
    - ','
    - v49
    - ','
    - v50
    - ','
    - v51
    - ','
    - v52
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2732
      start: 2731
    functionDepth: 0
    functionLinenumber: 2731
    functionLinenumberEnd: 2732
    functionName: NLOHMANN_JSON_PASTE53
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE53(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47, v48, v49, v50, v51, v52)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 109
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - ','
    - v48
    - ','
    - v49
    - ','
    - v50
    - ','
    - v51
    - ','
    - v52
    - ','
    - v53
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2733
      start: 2732
    functionDepth: 0
    functionLinenumber: 2732
    functionLinenumberEnd: 2733
    functionName: NLOHMANN_JSON_PASTE54
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE54(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 111
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - ','
    - v48
    - ','
    - v49
    - ','
    - v50
    - ','
    - v51
    - ','
    - v52
    - ','
    - v53
    - ','
    - v54
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2734
      start: 2733
    functionDepth: 0
    functionLinenumber: 2733
    functionLinenumberEnd: 2734
    functionName: NLOHMANN_JSON_PASTE55
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE55(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 113
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - ','
    - v48
    - ','
    - v49
    - ','
    - v50
    - ','
    - v51
    - ','
    - v52
    - ','
    - v53
    - ','
    - v54
    - ','
    - v55
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2735
      start: 2734
    functionDepth: 0
    functionLinenumber: 2734
    functionLinenumberEnd: 2735
    functionName: NLOHMANN_JSON_PASTE56
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE56(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 115
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - ','
    - v48
    - ','
    - v49
    - ','
    - v50
    - ','
    - v51
    - ','
    - v52
    - ','
    - v53
    - ','
    - v54
    - ','
    - v55
    - ','
    - v56
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2736
      start: 2735
    functionDepth: 0
    functionLinenumber: 2735
    functionLinenumberEnd: 2736
    functionName: NLOHMANN_JSON_PASTE57
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE57(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 117
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - ','
    - v48
    - ','
    - v49
    - ','
    - v50
    - ','
    - v51
    - ','
    - v52
    - ','
    - v53
    - ','
    - v54
    - ','
    - v55
    - ','
    - v56
    - ','
    - v57
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2737
      start: 2736
    functionDepth: 0
    functionLinenumber: 2736
    functionLinenumberEnd: 2737
    functionName: NLOHMANN_JSON_PASTE58
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE58(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 119
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - ','
    - v48
    - ','
    - v49
    - ','
    - v50
    - ','
    - v51
    - ','
    - v52
    - ','
    - v53
    - ','
    - v54
    - ','
    - v55
    - ','
    - v56
    - ','
    - v57
    - ','
    - v58
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2738
      start: 2737
    functionDepth: 0
    functionLinenumber: 2737
    functionLinenumberEnd: 2738
    functionName: NLOHMANN_JSON_PASTE59
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE59(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 121
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - ','
    - v48
    - ','
    - v49
    - ','
    - v50
    - ','
    - v51
    - ','
    - v52
    - ','
    - v53
    - ','
    - v54
    - ','
    - v55
    - ','
    - v56
    - ','
    - v57
    - ','
    - v58
    - ','
    - v59
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2739
      start: 2738
    functionDepth: 0
    functionLinenumber: 2738
    functionLinenumberEnd: 2739
    functionName: NLOHMANN_JSON_PASTE60
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE60(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58,
      v59)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 123
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - ','
    - v48
    - ','
    - v49
    - ','
    - v50
    - ','
    - v51
    - ','
    - v52
    - ','
    - v53
    - ','
    - v54
    - ','
    - v55
    - ','
    - v56
    - ','
    - v57
    - ','
    - v58
    - ','
    - v59
    - ','
    - v60
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2740
      start: 2739
    functionDepth: 0
    functionLinenumber: 2739
    functionLinenumberEnd: 2740
    functionName: NLOHMANN_JSON_PASTE61
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE61(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58,
      v59, v60)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 125
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - ','
    - v48
    - ','
    - v49
    - ','
    - v50
    - ','
    - v51
    - ','
    - v52
    - ','
    - v53
    - ','
    - v54
    - ','
    - v55
    - ','
    - v56
    - ','
    - v57
    - ','
    - v58
    - ','
    - v59
    - ','
    - v60
    - ','
    - v61
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2741
      start: 2740
    functionDepth: 0
    functionLinenumber: 2740
    functionLinenumberEnd: 2741
    functionName: NLOHMANN_JSON_PASTE62
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE62(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58,
      v59, v60, v61)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 127
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - ','
    - v48
    - ','
    - v49
    - ','
    - v50
    - ','
    - v51
    - ','
    - v52
    - ','
    - v53
    - ','
    - v54
    - ','
    - v55
    - ','
    - v56
    - ','
    - v57
    - ','
    - v58
    - ','
    - v59
    - ','
    - v60
    - ','
    - v61
    - ','
    - v62
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2742
      start: 2741
    functionDepth: 0
    functionLinenumber: 2741
    functionLinenumberEnd: 2742
    functionName: NLOHMANN_JSON_PASTE63
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE63(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58,
      v59, v60, v61, v62)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 129
    argNames:
    - (
    - func
    - ','
    - v1
    - ','
    - v2
    - ','
    - v3
    - ','
    - v4
    - ','
    - v5
    - ','
    - v6
    - ','
    - v7
    - ','
    - v8
    - ','
    - v9
    - ','
    - v10
    - ','
    - v11
    - ','
    - v12
    - ','
    - v13
    - ','
    - v14
    - ','
    - v15
    - ','
    - v16
    - ','
    - v17
    - ','
    - v18
    - ','
    - v19
    - ','
    - v20
    - ','
    - v21
    - ','
    - v22
    - ','
    - v23
    - ','
    - v24
    - ','
    - v25
    - ','
    - v26
    - ','
    - v27
    - ','
    - v28
    - ','
    - v29
    - ','
    - v30
    - ','
    - v31
    - ','
    - v32
    - ','
    - v33
    - ','
    - v34
    - ','
    - v35
    - ','
    - v36
    - ','
    - v37
    - ','
    - v38
    - ','
    - v39
    - ','
    - v40
    - ','
    - v41
    - ','
    - v42
    - ','
    - v43
    - ','
    - v44
    - ','
    - v45
    - ','
    - v46
    - ','
    - v47
    - ','
    - v48
    - ','
    - v49
    - ','
    - v50
    - ','
    - v51
    - ','
    - v52
    - ','
    - v53
    - ','
    - v54
    - ','
    - v55
    - ','
    - v56
    - ','
    - v57
    - ','
    - v58
    - ','
    - v59
    - ','
    - v60
    - ','
    - v61
    - ','
    - v62
    - ','
    - v63
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2743
      start: 2742
    functionDepth: 0
    functionLinenumber: 2742
    functionLinenumberEnd: 2743
    functionName: NLOHMANN_JSON_PASTE64
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_PASTE64(func, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10,
      v11, v12, v13, v14, v15, v16, v17, v18, v19, v20, v21, v22, v23, v24, v25, v26,
      v27, v28, v29, v30, v31, v32, v33, v34, v35, v36, v37, v38, v39, v40, v41, v42,
      v43, v44, v45, v46, v47, v48, v49, v50, v51, v52, v53, v54, v55, v56, v57, v58,
      v59, v60, v61, v62, v63)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v1
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2745
      start: 2744
    functionDepth: 0
    functionLinenumber: 2744
    functionLinenumberEnd: 2745
    functionName: NLOHMANN_JSON_TO
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_TO(v1)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v1
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2746
      start: 2745
    functionDepth: 0
    functionLinenumber: 2745
    functionLinenumberEnd: 2746
    functionName: NLOHMANN_JSON_FROM
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_FROM(v1)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - v1
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2747
      start: 2746
    functionDepth: 0
    functionLinenumber: 2746
    functionLinenumberEnd: 2747
    functionName: NLOHMANN_JSON_FROM_WITH_DEFAULT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_JSON_FROM_WITH_DEFAULT(v1)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - Type
    - ','
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2756
      start: 2753
    functionDepth: 0
    functionLinenumber: 2753
    functionLinenumberEnd: 2756
    functionName: NLOHMANN_DEFINE_TYPE_INTRUSIVE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_DEFINE_TYPE_INTRUSIVE(Type, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - Type
    - ','
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2760
      start: 2757
    functionDepth: 0
    functionLinenumber: 2757
    functionLinenumberEnd: 2760
    functionName: NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT(Type, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - Type
    - ','
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2763
      start: 2761
    functionDepth: 0
    functionLinenumber: 2761
    functionLinenumberEnd: 2763
    functionName: NLOHMANN_DEFINE_TYPE_INTRUSIVE_ONLY_SERIALIZE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_DEFINE_TYPE_INTRUSIVE_ONLY_SERIALIZE(Type, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - Type
    - ','
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2772
      start: 2769
    functionDepth: 0
    functionLinenumber: 2769
    functionLinenumberEnd: 2772
    functionName: NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE(Type, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - Type
    - ','
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2775
      start: 2773
    functionDepth: 0
    functionLinenumber: 2773
    functionLinenumberEnd: 2775
    functionName: NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_ONLY_SERIALIZE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_ONLY_SERIALIZE(Type, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - Type
    - ','
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2779
      start: 2776
    functionDepth: 0
    functionLinenumber: 2776
    functionLinenumberEnd: 2779
    functionName: NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT(Type, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - std_name
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2811
      start: 2786
    functionDepth: 0
    functionLinenumber: 2786
    functionLinenumberEnd: 2811
    functionName: NLOHMANN_CAN_CALL_STD_FUNC_IMPL
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: NLOHMANN_CAN_CALL_STD_FUNC_IMPL(std_name)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2912,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2913,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2915,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2915,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2921,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2921,1
    - Dst: std::is_lt
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2932,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2936
      start: 2840
    functionDepth: 1
    functionLinenumber: 2840
    functionLinenumberEnd: 2936
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::array::size
    - std::is_lt
    - static_cast<std::size_t>
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2912,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2913,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2915,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2915,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2921,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2921,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - value_t
    - value_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2923
      start: 2902
    functionDepth: 1
    functionLinenumber: 2902
    functionLinenumberEnd: 2923
    functionName: operator<(const value_t lhs, const value_t rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::array::size
    - static_cast<std::size_t>
    linkageType: ''
    returnType: bool
    signature: bool operator<(const value_t lhs, const value_t rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::is_lt
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2932,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - value_t
    - value_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2933
      start: 2930
    functionDepth: 0
    functionLinenumber: 2930
    functionLinenumberEnd: 2933
    functionName: operator<(const value_t lhs, const value_t rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::is_lt
    linkageType: ''
    returnType: bool
    signature: bool operator<(const value_t lhs, const value_t rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2974,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2974,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2975,1
    - Dst: replace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2977,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2977,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2978,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2978,1
    - Dst: replace_substring
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2992,1
    - Dst: replace_substring
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2993,1
    - Dst: replace_substring
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3007,1
    - Dst: replace_substring
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3008,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3011
      start: 2937
    functionDepth: 1
    functionLinenumber: 2937
    functionLinenumberEnd: 3011
    functionName: NLOHMANN_JSON_NAMESPACE_BEGIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - find
    - replace
    - size
    - replace_substring
    - JSON_ASSERT
    - empty
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_END
    signature: NLOHMANN_JSON_NAMESPACE_END NLOHMANN_JSON_NAMESPACE_BEGIN
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2974,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2974,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2975,1
    - Dst: replace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2977,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2977,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2978,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2978,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 3
    argNames:
    - ' s'
    - ' f'
    - ' t'
    argTypes:
    - StringType
    - StringType
    - StringType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2980
      start: 2971
    functionDepth: 1
    functionLinenumber: 2971
    functionLinenumberEnd: 2980
    functionName: replace_substring
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - find
    - replace
    - size
    - JSON_ASSERT
    - empty
    linkageType: ''
    returnType: void
    signature: "void replace_substring(StringType& s, const StringType& f,\n                              const
      StringType& t)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: replace_substring
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2992,1
    - Dst: replace_substring
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:2993,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - s
    argTypes:
    - StringType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2995
      start: 2990
    functionDepth: 2
    functionLinenumber: 2990
    functionLinenumberEnd: 2995
    functionName: escape
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - replace_substring
    linkageType: ''
    returnType: StringType
    signature: StringType escape(StringType s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: replace_substring
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3007,1
    - Dst: replace_substring
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3008,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' s'
    argTypes:
    - StringType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3009
      start: 3005
    functionDepth: 2
    functionLinenumber: 3005
    functionLinenumberEnd: 3009
    functionName: unescape
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - replace_substring
    linkageType: ''
    returnType: void
    signature: void unescape(StringType& s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3051
      start: 3030
    functionDepth: 0
    functionLinenumber: 3030
    functionLinenumberEnd: 3051
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3048
      start: 3045
    functionDepth: 0
    functionLinenumber: 3045
    functionLinenumberEnd: 3048
    functionName: operator size_t() const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator size_t() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3224,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3224,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3227
      start: 3076
    functionDepth: 0
    functionLinenumber: 3076
    functionLinenumberEnd: 3227
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T>
    - std::forward<Args>
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3128
      start: 3125
    functionDepth: 0
    functionLinenumber: 3125
    functionLinenumberEnd: 3128
    functionName: size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 277
    functionsReached: []
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t size() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3224,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3224,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3225
      start: 3222
    functionDepth: 0
    functionLinenumber: 3222
    functionLinenumberEnd: 3225
    functionName: make_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - static_cast<T>
    - std::forward<Args>
    linkageType: ''
    returnType: std::array<T, sizeof...(Args)>
    signature: std::array<T, sizeof...(Args)> make_array(Args&& ... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3310
      start: 3267
    functionDepth: 0
    functionLinenumber: 3267
    functionLinenumberEnd: 3310
    functionName: detail
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN detail
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3517,1
    - Dst: std::declval<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3517,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3520,1
    - Dst: std::declval<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3520,1
    - Dst: std::declval<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3523,1
    - Dst: static_cast<int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3617,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3622,1
    - Dst: static_cast<int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3627,1
    - Dst: static_cast<int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3641,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3646,1
    - Dst: static_cast<int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3651,1
    - Dst: std::declval<R&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3744,1
    - Dst: std::declval<ConstructibleStringType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3828,1
    - Dst: std::declval<Compare>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3981,1
    - Dst: std::declval<A>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3981,1
    - Dst: std::declval<B>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3981,1
    - Dst: std::declval<Compare>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3982,1
    - Dst: std::declval<B>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3982,1
    - Dst: std::declval<A>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3982,1
    - Dst: std::declval<ObjectType&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4019,1
    - Dst: std::declval<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4019,1
    - Dst: test
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4045,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4052,1
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4091,1
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4091,1
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4101,1
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4101,1
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4111,1
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4111,1
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4121,1
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4121,1
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4122,1
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4122,1
    - Dst: test
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4136,1
    - Dst: test
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4152,1
    CyclomaticComplexity: 48
    EdgeCount: 48
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4207
      start: 3438
    functionDepth: 1
    functionLinenumber: 3438
    functionLinenumberEnd: 4207
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::declval<ConstructibleStringType>
    - std::declval<Args>
    - static_cast<char_type>
    - std::declval<T>
    - static_cast<int_type>
    - static_cast<CommonType>
    - std::declval<A>
    - std::declval<KeyType>
    - static_cast<T>
    - std::declval<ObjectType&>
    - test
    - BT::Monitor::from_json
    - std::declval<Compare>
    - std::declval<R&>
    - BT::Monitor::to_json
    - std::declval<B>
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3617,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3618
      start: 3615
    functionDepth: 0
    functionLinenumber: 3615
    functionLinenumberEnd: 3618
    functionName: to_int_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<int_type>
    linkageType: ''
    returnType: int_type
    signature: int_type to_int_type(char_type c) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3622,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - int_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3623
      start: 3620
    functionDepth: 0
    functionLinenumber: 3620
    functionLinenumberEnd: 3623
    functionName: to_char_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char_type>
    linkageType: ''
    returnType: char_type
    signature: char_type to_char_type(int_type i) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3627,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3628
      start: 3625
    functionDepth: 0
    functionLinenumber: 3625
    functionLinenumberEnd: 3628
    functionName: eof
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<int_type>
    linkageType: ''
    returnType: int_type
    signature: int_type eof() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3641,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3642
      start: 3639
    functionDepth: 0
    functionLinenumber: 3639
    functionLinenumberEnd: 3642
    functionName: to_int_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<int_type>
    linkageType: ''
    returnType: int_type
    signature: int_type to_int_type(char_type c) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3646,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - int_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3647
      start: 3644
    functionDepth: 0
    functionLinenumber: 3644
    functionLinenumberEnd: 3647
    functionName: to_char_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char_type>
    linkageType: ''
    returnType: char_type
    signature: char_type to_char_type(int_type i) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:3651,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3652
      start: 3649
    functionDepth: 0
    functionLinenumber: 3649
    functionLinenumberEnd: 3652
    functionName: eof
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<int_type>
    linkageType: ''
    returnType: int_type
    signature: int_type eof() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4052,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4053
      start: 4050
    functionDepth: 0
    functionLinenumber: 4050
    functionLinenumberEnd: 4053
    functionName: conditional_static_cast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T>
    linkageType: ''
    returnType: T
    signature: T conditional_static_cast(U value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4059
      start: 4056
    functionDepth: 0
    functionLinenumber: 4056
    functionLinenumberEnd: 4059
    functionName: conditional_static_cast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: T
    signature: T conditional_static_cast(U value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4091,1
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4091,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4092
      start: 4088
    functionDepth: 0
    functionLinenumber: 4088
    functionLinenumberEnd: 4092
    functionName: test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - static_cast<CommonType>
    linkageType: ''
    returnType: bool
    signature: bool test(T val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4101,1
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4102
      start: 4098
    functionDepth: 0
    functionLinenumber: 4098
    functionLinenumberEnd: 4102
    functionName: test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - static_cast<CommonType>
    linkageType: ''
    returnType: bool
    signature: bool test(T val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4111,1
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4111,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4112
      start: 4108
    functionDepth: 0
    functionLinenumber: 4108
    functionLinenumberEnd: 4112
    functionName: test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - static_cast<CommonType>
    linkageType: ''
    returnType: bool
    signature: bool test(T val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4121,1
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4121,1
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4122,1
    - Dst: static_cast<CommonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4123
      start: 4118
    functionDepth: 0
    functionLinenumber: 4118
    functionLinenumberEnd: 4123
    functionName: test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - static_cast<CommonType>
    linkageType: ''
    returnType: bool
    signature: bool test(T val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4137
      start: 4134
    functionDepth: 1
    functionLinenumber: 4134
    functionLinenumberEnd: 4137
    functionName: test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - test
    linkageType: ''
    returnType: bool
    signature: bool test(T val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4146
      start: 4143
    functionDepth: 0
    functionLinenumber: 4143
    functionLinenumberEnd: 4146
    functionName: test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool test(T /*val*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: test
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4153
      start: 4150
    functionDepth: 1
    functionLinenumber: 4150
    functionLinenumberEnd: 4153
    functionName: value_in_range_of
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - test
    linkageType: ''
    returnType: bool
    signature: bool value_in_range_of(T val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4175
      start: 4166
    functionDepth: 0
    functionLinenumber: 4166
    functionLinenumberEnd: 4175
    functionName: impl::is_c_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_c_string()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4175
      start: 4166
    functionDepth: 0
    functionLinenumber: 4166
    functionLinenumberEnd: 4175
    functionName: impl::is_c_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_c_string()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4197
      start: 4194
    functionDepth: 0
    functionLinenumber: 4194
    functionLinenumberEnd: 4197
    functionName: impl::is_transparent
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_transparent()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4197
      start: 4194
    functionDepth: 0
    functionLinenumber: 4194
    functionLinenumberEnd: 4197
    functionName: impl::is_transparent
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_transparent()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4248,1
    - Dst: ::strlen
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4255,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4255,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4261,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4261,1
    - Dst: std::declval<StringType&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4269,1
    - Dst: std::declval < Arg && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4269,1
    - Dst: std::declval<StringType&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4275,1
    - Dst: std::declval < Arg && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4275,1
    - Dst: std::declval<StringType&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4281,1
    - Dst: std::declval<const Arg&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4281,1
    - Dst: std::declval<const Arg&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4281,1
    - Dst: std::declval<StringType&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4287,1
    - Dst: std::declval<const Arg&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4287,1
    - Dst: std::declval<const Arg&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4287,1
    - Dst: append
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4314,1
    - Dst: std::forward<Arg>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4314,1
    - Dst: concat_into
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4315,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4315,1
    - Dst: std::forward<Arg>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4323,1
    - Dst: concat_into
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4324,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4324,1
    - Dst: append
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4333,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4333,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4333,1
    - Dst: concat_into
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4334,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4334,1
    - Dst: append
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4344,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4344,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4344,1
    - Dst: concat_into
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4345,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4345,1
    - Dst: OutStringType::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4352,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4352,1
    - Dst: concat_into
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4353,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4353,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4357
      start: 4230
    functionDepth: 1
    functionLinenumber: 4230
    functionLinenumberEnd: 4357
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - ::strlen
    - std::declval < Arg && >
    - append
    - begin
    - std::forward<Args>
    - OutStringType::reserve
    - std::declval<StringType&>
    - size
    - data
    - std::declval<const Arg&>
    - std::forward<Arg>
    - end
    - concat_length
    - concat_into
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4237
      start: 4234
    functionDepth: 0
    functionLinenumber: 4234
    functionLinenumberEnd: 4237
    functionName: concat_length
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t concat_length()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4249
      start: 4246
    functionDepth: 1
    functionLinenumber: 4246
    functionLinenumberEnd: 4249
    functionName: concat_length
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - concat_length
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t concat_length(const char /*c*/, const Args& ... rest)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ::strlen
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4255,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cstr
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4256
      start: 4252
    functionDepth: 1
    functionLinenumber: 4252
    functionLinenumberEnd: 4256
    functionName: concat_length
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - ::strlen
    - concat_length
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t concat_length(const char* cstr, const Args& ... rest)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4261,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' str'
    argTypes:
    - StringType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4262
      start: 4259
    functionDepth: 1
    functionLinenumber: 4259
    functionLinenumberEnd: 4262
    functionName: concat_length
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - concat_length
    - size
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t concat_length(const StringType& str, const Args& ... rest)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4266
      start: 4265
    functionDepth: 0
    functionLinenumber: 4265
    functionLinenumberEnd: 4266
    functionName: concat_into
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void concat_into(OutStringType& /*out*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: append
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4314,1
    - Dst: std::forward<Arg>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4314,1
    - Dst: concat_into
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4315,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4315,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - ' out'
    - ' arg'
    argTypes:
    - OutStringType
    - Arg
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4316
      start: 4312
    functionDepth: 1
    functionLinenumber: 4312
    functionLinenumberEnd: 4316
    functionName: concat_into
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - append
    - std::forward<Arg>
    - std::forward<Args>
    - concat_into
    linkageType: ''
    returnType: void
    signature: void concat_into(OutStringType& out, Arg && arg, Args && ... rest)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Arg>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4323,1
    - Dst: concat_into
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4324,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4324,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - ' out'
    - ' arg'
    argTypes:
    - OutStringType
    - Arg
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4325
      start: 4321
    functionDepth: 1
    functionLinenumber: 4321
    functionLinenumberEnd: 4325
    functionName: concat_into
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - std::forward<Arg>
    - std::forward<Args>
    - concat_into
    linkageType: ''
    returnType: void
    signature: void concat_into(OutStringType& out, Arg&& arg, Args&& ... rest)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: append
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4333,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4333,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4333,1
    - Dst: concat_into
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4334,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4334,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ' out'
    - ' arg'
    argTypes:
    - OutStringType
    - Arg
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4335
      start: 4331
    functionDepth: 1
    functionLinenumber: 4331
    functionLinenumberEnd: 4335
    functionName: concat_into
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - begin
    - append
    - std::forward<Args>
    - end
    - concat_into
    linkageType: ''
    returnType: void
    signature: void concat_into(OutStringType& out, const Arg& arg, Args&& ... rest)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: append
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4344,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4344,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4344,1
    - Dst: concat_into
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4345,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4345,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 2
    argNames:
    - ' out'
    - ' arg'
    argTypes:
    - OutStringType
    - Arg
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4346
      start: 4342
    functionDepth: 1
    functionLinenumber: 4342
    functionLinenumberEnd: 4346
    functionName: concat_into
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 5
    functionsReached:
    - append
    - std::forward<Args>
    - size
    - data
    - concat_into
    linkageType: ''
    returnType: void
    signature: void concat_into(OutStringType& out, const Arg& arg, Args&& ... rest)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OutStringType::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4352,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4352,1
    - Dst: concat_into
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4353,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4353,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4355
      start: 4349
    functionDepth: 1
    functionLinenumber: 4349
    functionLinenumberEnd: 4355
    functionName: concat
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - OutStringType::reserve
    - concat_length
    - std::forward<Args>
    - concat_into
    linkageType: ''
    returnType: OutStringType
    signature: OutStringType concat(Args && ... args)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: what
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4377,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4389,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4389,1
    - Dst: auto*::m_parent::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4404,1
    - Dst: auto*::m_parent::m_data::m_value::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4408,1
    - Dst: auto*::m_parent::m_data::m_value::array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4410,1
    - Dst: std::vector::emplace_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4412,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4412,1
    - Dst: std::vector::emplace_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4425,1
    - Dst: first::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4425,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4445,1
    - Dst: std::accumulate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4450,1
    - Dst: std::vector::rbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4450,1
    - Dst: std::vector::rend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4450,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4453,1
    - Dst: escape
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4453,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4455,1
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4457,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4484,1
    - Dst: exception::name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4484,1
    - Dst: position_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4485,1
    - Dst: exception::diagnostics
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4485,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4486,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4492,1
    - Dst: exception::name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4492,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4493,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4493,1
    - Dst: exception::diagnostics
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4494,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4495,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4515,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4515,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4516,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4528,1
    - Dst: exception::name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4528,1
    - Dst: exception::diagnostics
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4528,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4529,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4546,1
    - Dst: exception::name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4546,1
    - Dst: exception::diagnostics
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4546,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4547,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4563,1
    - Dst: exception::name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4563,1
    - Dst: exception::diagnostics
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4563,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4564,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4580,1
    - Dst: exception::name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4580,1
    - Dst: exception::diagnostics
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4580,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4581,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 67
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4589
      start: 4358
    functionDepth: 3
    functionLinenumber: 4358
    functionLinenumberEnd: 4589
    functionName: NLOHMANN_JSON_NAMESPACE_BEGIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::accumulate
    - std::vector::emplace_back
    - auto*::m_parent::type
    - position_string
    - std::string::c_str
    - exception::diagnostics
    - exception::name
    - concat
    - auto*::m_parent::m_data::m_value::array::size
    - to_string
    - static_cast<void>
    - std::vector::rbegin
    - what
    - std::vector::empty
    - escape
    - std::vector::rend
    - auto*::m_parent::m_data::m_value::array
    - first::c_str
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_END
    signature: NLOHMANN_JSON_NAMESPACE_END NLOHMANN_JSON_NAMESPACE_BEGIN
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: exception::what
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4377,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4378
      start: 4375
    functionDepth: 1
    functionLinenumber: 4375
    functionLinenumberEnd: 4378
    functionName: exception::what
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - exception::what
    linkageType: ''
    returnType: char
    signature: char * what() const noexcept override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4385
      start: 4384
    functionDepth: 0
    functionLinenumber: 4384
    functionLinenumberEnd: 4385
    functionName: "(3)\n    exception(int id_, const char* what_arg) : id(id_), m(what_arg)"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSON_HEDLEY_NON_NULL
    signature: "JSON_HEDLEY_NON_NULL (3)\n    exception(int id_, const char* what_arg)
      : id(id_), m(what_arg)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4389,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4389,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' ename'
    - id_
    argTypes:
    - std::string
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4390
      start: 4387
    functionDepth: 2
    functionLinenumber: 4387
    functionLinenumberEnd: 4390
    functionName: exception::name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - to_string
    - concat
    linkageType: ''
    returnType: std::string
    signature: std::string name(const std::string& ename, int id_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4395
      start: 4392
    functionDepth: 0
    functionLinenumber: 4392
    functionLinenumberEnd: 4395
    functionName: exception::diagnostics
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string diagnostics(std::nullptr_t /*leaf_element*/)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: auto*::m_parent::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4404,1
    - Dst: auto*::m_parent::m_data::m_value::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4408,1
    - Dst: auto*::m_parent::m_data::m_value::array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4410,1
    - Dst: std::vector::emplace_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4412,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4412,1
    - Dst: std::vector::emplace_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4425,1
    - Dst: first::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4425,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4445,1
    - Dst: std::accumulate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4450,1
    - Dst: std::vector::rbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4450,1
    - Dst: std::vector::rend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4450,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4453,1
    - Dst: escape
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4453,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4455,1
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4457,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 40
    argCount: 1
    argNames:
    - leaf_element
    argTypes:
    - BasicJsonType*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4460
      start: 4398
    functionDepth: 3
    functionLinenumber: 4398
    functionLinenumberEnd: 4460
    functionName: exception::diagnostics
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - std::accumulate
    - std::vector::emplace_back
    - auto*::m_parent::type
    - concat
    - auto*::m_parent::m_data::m_value::array::size
    - to_string
    - static_cast<void>
    - std::vector::rbegin
    - std::vector::empty
    - escape
    - std::vector::rend
    - auto*::m_parent::m_data::m_value::array
    - first::c_str
    linkageType: ''
    returnType: std::string
    signature: std::string diagnostics(const BasicJsonType* leaf_element)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4484,1
    - Dst: exception::name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4484,1
    - Dst: parse_error::position_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4485,1
    - Dst: exception::diagnostics
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4485,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - id_
    - ' pos'
    - ' what_arg'
    - context
    argTypes:
    - int
    - position_t
    - std::string
    - BasicJsonContext
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4487
      start: 4482
    functionDepth: 3
    functionLinenumber: 4482
    functionLinenumberEnd: 4487
    functionName: parse_error::create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::string::c_str
    - exception::diagnostics
    - concat
    - exception::name
    - parse_error::position_string
    linkageType: ''
    returnType: parse_error
    signature: parse_error create(int id_, const position_t& pos, const std::string&
      what_arg, BasicJsonContext context)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4492,1
    - Dst: exception::name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4492,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4493,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4493,1
    - Dst: exception::diagnostics
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4494,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4495,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - id_
    - byte_
    - ' what_arg'
    - context
    argTypes:
    - int
    - std::size_t
    - std::string
    - BasicJsonContext
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4496
      start: 4490
    functionDepth: 3
    functionLinenumber: 4490
    functionLinenumberEnd: 4496
    functionName: parse_error::create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::string::c_str
    - exception::diagnostics
    - concat
    - to_string
    - exception::name
    linkageType: ''
    returnType: parse_error
    signature: parse_error create(int id_, std::size_t byte_, const std::string& what_arg,
      BasicJsonContext context)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 3
    argNames:
    - id_
    - byte_
    - what_arg
    argTypes:
    - int
    - std::size_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4511
      start: 4510
    functionDepth: 0
    functionLinenumber: 4510
    functionLinenumberEnd: 4511
    functionName: parse_error::parse_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void parse_error(int id_, std::size_t byte_, const char* what_arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4515,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4515,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4516,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' pos'
    argTypes:
    - position_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4517
      start: 4513
    functionDepth: 2
    functionLinenumber: 4513
    functionLinenumberEnd: 4517
    functionName: parse_error::position_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - to_string
    - concat
    linkageType: ''
    returnType: std::string
    signature: std::string position_string(const position_t& pos)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4528,1
    - Dst: exception::name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4528,1
    - Dst: exception::diagnostics
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4528,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - id_
    - ' what_arg'
    - context
    argTypes:
    - int
    - std::string
    - BasicJsonContext
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4530
      start: 4526
    functionDepth: 3
    functionLinenumber: 4526
    functionLinenumberEnd: 4530
    functionName: invalid_iterator::create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::string::c_str
    - exception::diagnostics
    - concat
    - exception::name
    linkageType: ''
    returnType: invalid_iterator
    signature: invalid_iterator create(int id_, const std::string& what_arg, BasicJsonContext
      context)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4535
      start: 4533
    functionDepth: 0
    functionLinenumber: 4533
    functionLinenumberEnd: 4535
    functionName: "(3)\n    invalid_iterator(int id_, const char* what_arg)\n        :
      exception(id_, what_arg)"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSON_HEDLEY_NON_NULL
    signature: "JSON_HEDLEY_NON_NULL (3)\n    invalid_iterator(int id_, const char*
      what_arg)\n        : exception(id_, what_arg)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4546,1
    - Dst: exception::name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4546,1
    - Dst: exception::diagnostics
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4546,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4547,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - id_
    - ' what_arg'
    - context
    argTypes:
    - int
    - std::string
    - BasicJsonContext
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4548
      start: 4544
    functionDepth: 3
    functionLinenumber: 4544
    functionLinenumberEnd: 4548
    functionName: type_error::create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::string::c_str
    - exception::diagnostics
    - concat
    - exception::name
    linkageType: ''
    returnType: type_error
    signature: type_error create(int id_, const std::string& what_arg, BasicJsonContext
      context)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4552
      start: 4551
    functionDepth: 0
    functionLinenumber: 4551
    functionLinenumberEnd: 4552
    functionName: "(3)\n    type_error(int id_, const char* what_arg) : exception(id_,
      what_arg)"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSON_HEDLEY_NON_NULL
    signature: "JSON_HEDLEY_NON_NULL (3)\n    type_error(int id_, const char* what_arg)
      : exception(id_, what_arg)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4563,1
    - Dst: exception::name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4563,1
    - Dst: exception::diagnostics
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4563,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4564,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - id_
    - ' what_arg'
    - context
    argTypes:
    - int
    - std::string
    - BasicJsonContext
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4565
      start: 4561
    functionDepth: 3
    functionLinenumber: 4561
    functionLinenumberEnd: 4565
    functionName: out_of_range::create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::string::c_str
    - exception::diagnostics
    - concat
    - exception::name
    linkageType: ''
    returnType: out_of_range
    signature: out_of_range create(int id_, const std::string& what_arg, BasicJsonContext
      context)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4569
      start: 4568
    functionDepth: 0
    functionLinenumber: 4568
    functionLinenumberEnd: 4569
    functionName: "(3)\n    out_of_range(int id_, const char* what_arg) : exception(id_,
      what_arg)"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSON_HEDLEY_NON_NULL
    signature: "JSON_HEDLEY_NON_NULL (3)\n    out_of_range(int id_, const char* what_arg)
      : exception(id_, what_arg)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4580,1
    - Dst: exception::name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4580,1
    - Dst: exception::diagnostics
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4580,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4581,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - id_
    - ' what_arg'
    - context
    argTypes:
    - int
    - std::string
    - BasicJsonContext
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4582
      start: 4578
    functionDepth: 3
    functionLinenumber: 4578
    functionLinenumberEnd: 4582
    functionName: other_error::create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::string::c_str
    - exception::diagnostics
    - concat
    - exception::name
    linkageType: ''
    returnType: other_error
    signature: other_error create(int id_, const std::string& what_arg, BasicJsonContext
      context)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4586
      start: 4585
    functionDepth: 0
    functionLinenumber: 4585
    functionLinenumberEnd: 4586
    functionName: "(3)\n    other_error(int id_, const char* what_arg) : exception(id_,
      what_arg)"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSON_HEDLEY_NON_NULL
    signature: "JSON_HEDLEY_NON_NULL (3)\n    other_error(int id_, const char* what_arg)
      : exception(id_, what_arg)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4617
      start: 4590
    functionDepth: 0
    functionLinenumber: 4590
    functionLinenumberEnd: 4617
    functionName: NLOHMANN_JSON_NAMESPACE_BEGIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_END
    signature: NLOHMANN_JSON_NAMESPACE_END NLOHMANN_JSON_NAMESPACE_BEGIN
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4640
      start: 4636
    functionDepth: 0
    functionLinenumber: 4636
    functionLinenumberEnd: 4640
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4648
      start: 4644
    functionDepth: 0
    functionLinenumber: 4644
    functionLinenumberEnd: 4648
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4666,1
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4666,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4668,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4668,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4668,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4668,1
    - Dst: static_cast<value_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4680,1
    - Dst: static_cast<ArithmeticType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4684,1
    - Dst: template get_ptr<const typename BasicJsonType::number_unsigned_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4684,1
    - Dst: static_cast<ArithmeticType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4689,1
    - Dst: template get_ptr<const typename BasicJsonType::number_integer_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4689,1
    - Dst: static_cast<ArithmeticType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4694,1
    - Dst: template get_ptr<const typename BasicJsonType::number_float_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4694,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4706,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4706,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4706,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4706,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4713,1
    - Dst: is_boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4713,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4715,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4715,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4715,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4715,1
    - Dst: template get_ptr<const typename BasicJsonType::boolean_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4717,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4723,1
    - Dst: is_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4723,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4725,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4725,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4725,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4725,1
    - Dst: template get_ptr<const typename BasicJsonType::string_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4727,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4739,1
    - Dst: is_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4739,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4741,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4741,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4741,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4741,1
    - Dst: template get_ptr<const typename BasicJsonType::string_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4744,1
    - Dst: get_arithmetic_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4750,1
    - Dst: get_arithmetic_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4756,1
    - Dst: get_arithmetic_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4762,1
    - Dst: get_arithmetic_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4771,1
    - Dst: static_cast<EnumType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4772,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4781,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4781,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4783,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4783,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4783,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4783,1
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4785,1
    - Dst: std::transform
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4786,1
    - Dst: rbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4786,1
    - Dst: rend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4786,1
    - Dst: std::front_inserter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4787,1
    - Dst: template get<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4789,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4798,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4798,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4800,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4800,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4800,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4800,1
    - Dst: resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4802,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4802,1
    - Dst: std::transform
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4803,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4803,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4803,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4803,1
    - Dst: template get<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4806,1
    - Dst: template get<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4812,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4816,1
    - Dst: template get_ptr<const typename BasicJsonType::array_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4823,1
    - Dst: template get<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4829,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4833,1
    - Dst: reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4843,1
    - Dst: std::declval<typename ConstructibleArrayType::size_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4843,1
    - Dst: template get<typename ConstructibleArrayType::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4844,1
    - Dst: ConstructibleArrayType::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4850,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4850,1
    - Dst: std::transform
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4851,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4851,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4851,1
    - Dst: std::inserter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4852,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4852,1
    - Dst: std::size_t::template get<typename ConstructibleArrayType::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4856,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4858,1
    - Dst: std::transform
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4871,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4872,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4872,1
    - Dst: std::inserter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4872,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4872,1
    - Dst: std::size_t::template get<typename ConstructibleArrayType::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4877,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4879,1
    - Dst: from_json_array_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4891,1
    - Dst: template get<typename ConstructibleArrayType::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4892,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4895,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4895,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4897,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4897,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4897,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4897,1
    - Dst: from_json_array_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4900,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4907,1
    - Dst: from_json_inplace_array_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4912,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4912,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4914,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4914,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4916,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4916,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4916,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4916,1
    - Dst: from_json_inplace_array_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4919,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4919,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4925,1
    - Dst: is_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4925,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4927,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4927,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4927,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4927,1
    - Dst: template get_ptr<const typename BasicJsonType::binary_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4930,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4937,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4937,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4939,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4939,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4939,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4939,1
    - Dst: template get_ptr<const typename BasicJsonType::object_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4943,1
    - Dst: std::transform
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4945,1
    - Dst: auto*::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4946,1
    - Dst: auto*::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4946,1
    - Dst: std::inserter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4947,1
    - Dst: ConstructibleObjectType::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4947,1
    - Dst: value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4950,1
    - Dst: second::template get<typename ConstructibleObjectType::mapped_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4950,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4952,1
    - Dst: static_cast<value_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4969,1
    - Dst: static_cast<ArithmeticType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4973,1
    - Dst: template get_ptr<const typename BasicJsonType::number_unsigned_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4973,1
    - Dst: static_cast<ArithmeticType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4978,1
    - Dst: template get_ptr<const typename BasicJsonType::number_integer_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4978,1
    - Dst: static_cast<ArithmeticType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4983,1
    - Dst: template get_ptr<const typename BasicJsonType::number_float_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4983,1
    - Dst: static_cast<ArithmeticType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4988,1
    - Dst: template get_ptr<const typename BasicJsonType::boolean_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4988,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4999,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4999,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4999,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4999,1
    - Dst: std::make_tuple
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5006,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5006,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5012,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5013,1
    - Dst: from_json_tuple_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5019,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5019,1
    - Dst: from_json_tuple_impl_base
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5025,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5025,1
    - Dst: from_json_tuple_impl_base
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5031,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5031,1
    - Dst: from_json_tuple_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5036,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5036,1
    - Dst: std::forward<TupleRelated>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5036,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5038,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5038,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5040,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5040,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5040,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5040,1
    - Dst: from_json_tuple_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5043,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5043,1
    - Dst: std::forward<TupleRelated>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5043,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5051,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5051,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5053,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5053,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5053,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5053,1
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5055,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5058,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5058,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5060,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5060,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5060,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5060,1
    - Dst: emplace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5062,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5062,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5062,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5071,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5071,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5073,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5073,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5073,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5073,1
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5075,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5078,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5078,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5080,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5080,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5080,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5080,1
    - Dst: emplace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5082,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5082,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5082,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5090,1
    - Dst: is_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5090,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5092,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5092,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5092,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5092,1
    - Dst: template get_ptr<const typename BasicJsonType::string_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5094,1
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5102,1
    - Dst: from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5102,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5102,1
    - Dst: from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5103,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5103,1
    - Dst: from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5105,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5105,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 185
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5109
      start: 4659
    functionDepth: 4
    functionLinenumber: 4659
    functionLinenumberEnd: 5109
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - second::template get<typename ConstructibleObjectType::mapped_type>
    - rend
    - static_cast<ArithmeticType>
    - begin
    - template get_ptr<const typename BasicJsonType::number_unsigned_t*>
    - from_json
    - is_boolean
    - size
    - std::inserter
    - std::transform
    - template get<typename ConstructibleArrayType::value_type>
    - ConstructibleArrayType::reserve
    - JSON_THROW
    - template get_ptr<const typename BasicJsonType::string_t*>
    - emplace
    - template get_ptr<const typename BasicJsonType::object_t*>
    - template get_ptr<const typename BasicJsonType::number_integer_t*>
    - from_json_tuple_impl_base
    - JSON_HEDLEY_UNLIKELY
    - reserve
    - template get_ptr<const typename BasicJsonType::array_t*>
    - std::size_t::template get<typename ConstructibleArrayType::value_type>
    - ConstructibleObjectType::begin
    - std::declval<typename ConstructibleArrayType::size_type>
    - is_binary
    - std::make_tuple
    - type_name
    - is_string
    - static_cast<EnumType>
    - std::forward<BasicJsonType>
    - clear
    - from_json_tuple_impl
    - std::front_inserter
    - static_cast<value_t>
    - is_array
    - rbegin
    - concat
    - value_type
    - is_null
    - template get_ptr<const typename BasicJsonType::boolean_t*>
    - end
    - template get<T>
    - at
    - from_json_inplace_array_impl
    - noexcept
    - std::forward<TupleRelated>
    - template get_ptr<const typename BasicJsonType::number_float_t*>
    - std::move
    - from_json_array_impl
    - template get_ptr<const typename BasicJsonType::binary_t*>
    - is_object
    - auto*::end
    - std::forward<T>
    - type_error::create
    - auto*::begin
    - get_arithmetic_value
    - resize
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4666,1
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4666,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4668,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4668,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4668,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4668,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' n'
    argTypes:
    - BasicJsonType
    - typename std::nullptr_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4671
      start: 4664
    functionDepth: 4
    functionLinenumber: 4664
    functionLinenumberEnd: 4671
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - concat
    - is_null
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: void
    signature: void from_json(const BasicJsonType& j, typename std::nullptr_t& n)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<value_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4680,1
    - Dst: static_cast<ArithmeticType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4684,1
    - Dst: template get_ptr<const typename BasicJsonType::number_unsigned_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4684,1
    - Dst: static_cast<ArithmeticType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4689,1
    - Dst: template get_ptr<const typename BasicJsonType::number_integer_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4689,1
    - Dst: static_cast<ArithmeticType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4694,1
    - Dst: template get_ptr<const typename BasicJsonType::number_float_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4694,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4706,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4706,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4706,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4706,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - ' j'
    - ' val'
    argTypes:
    - BasicJsonType
    - ArithmeticType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4708
      start: 4678
    functionDepth: 4
    functionLinenumber: 4678
    functionLinenumberEnd: 4708
    functionName: get_arithmetic_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - template get_ptr<const typename BasicJsonType::number_float_t*>
    - template get_ptr<const typename BasicJsonType::number_integer_t*>
    - static_cast<value_t>
    - static_cast<ArithmeticType>
    - template get_ptr<const typename BasicJsonType::number_unsigned_t*>
    - concat
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: void
    signature: void get_arithmetic_value(const BasicJsonType& j, ArithmeticType& val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4713,1
    - Dst: is_boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4713,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4715,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4715,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4715,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4715,1
    - Dst: template get_ptr<const typename BasicJsonType::boolean_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4717,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' b'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::boolean_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4718
      start: 4711
    functionDepth: 4
    functionLinenumber: 4711
    functionLinenumberEnd: 4718
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - is_boolean
    - concat
    - type_name
    - template get_ptr<const typename BasicJsonType::boolean_t*>
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: void
    signature: void from_json(const BasicJsonType& j, typename BasicJsonType::boolean_t&
      b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4723,1
    - Dst: is_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4723,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4725,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4725,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4725,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4725,1
    - Dst: template get_ptr<const typename BasicJsonType::string_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4727,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' s'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4728
      start: 4721
    functionDepth: 4
    functionLinenumber: 4721
    functionLinenumberEnd: 4728
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - concat
    - is_string
    - type_name
    - type_error::create
    - JSON_THROW
    - template get_ptr<const typename BasicJsonType::string_t*>
    linkageType: ''
    returnType: void
    signature: void from_json(const BasicJsonType& j, typename BasicJsonType::string_t&
      s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4739,1
    - Dst: is_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4739,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4741,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4741,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4741,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4741,1
    - Dst: template get_ptr<const typename BasicJsonType::string_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4744,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' s'
    argTypes:
    - BasicJsonType
    - StringType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4745
      start: 4737
    functionDepth: 4
    functionLinenumber: 4737
    functionLinenumberEnd: 4745
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - concat
    - is_string
    - type_name
    - type_error::create
    - JSON_THROW
    - template get_ptr<const typename BasicJsonType::string_t*>
    linkageType: ''
    returnType: void
    signature: void from_json(const BasicJsonType& j, StringType& s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_arithmetic_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4750,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' val'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::number_float_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4751
      start: 4748
    functionDepth: 5
    functionLinenumber: 4748
    functionLinenumberEnd: 4751
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - get_arithmetic_value
    linkageType: ''
    returnType: void
    signature: void from_json(const BasicJsonType& j, typename BasicJsonType::number_float_t&
      val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_arithmetic_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4756,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' val'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::number_unsigned_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4757
      start: 4754
    functionDepth: 5
    functionLinenumber: 4754
    functionLinenumberEnd: 4757
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - get_arithmetic_value
    linkageType: ''
    returnType: void
    signature: void from_json(const BasicJsonType& j, typename BasicJsonType::number_unsigned_t&
      val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_arithmetic_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4762,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' val'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::number_integer_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4763
      start: 4760
    functionDepth: 5
    functionLinenumber: 4760
    functionLinenumberEnd: 4763
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - get_arithmetic_value
    linkageType: ''
    returnType: void
    signature: void from_json(const BasicJsonType& j, typename BasicJsonType::number_integer_t&
      val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_arithmetic_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4771,1
    - Dst: static_cast<EnumType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4772,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' j'
    - ' e'
    argTypes:
    - BasicJsonType
    - EnumType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4773
      start: 4768
    functionDepth: 5
    functionLinenumber: 4768
    functionLinenumberEnd: 4773
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - get_arithmetic_value
    - static_cast<EnumType>
    linkageType: ''
    returnType: void
    signature: void from_json(const BasicJsonType& j, EnumType& e)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4781,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4781,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4783,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4783,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4783,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4783,1
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4785,1
    - Dst: std::transform
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4786,1
    - Dst: rbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4786,1
    - Dst: rend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4786,1
    - Dst: std::front_inserter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4787,1
    - Dst: template get<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4789,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' j'
    - ' l'
    argTypes:
    - BasicJsonType
    - std::forward_list<T, Allocator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4791
      start: 4779
    functionDepth: 4
    functionLinenumber: 4779
    functionLinenumberEnd: 4791
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - std::front_inserter
    - rend
    - JSON_HEDLEY_UNLIKELY
    - is_array
    - rbegin
    - concat
    - template get<T>
    - std::transform
    - type_name
    - type_error::create
    - JSON_THROW
    - clear
    linkageType: ''
    returnType: void
    signature: void from_json(const BasicJsonType& j, std::forward_list<T, Allocator>&
      l)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4798,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4798,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4800,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4800,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4800,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4800,1
    - Dst: resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4802,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4802,1
    - Dst: std::transform
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4803,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4803,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4803,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4803,1
    - Dst: template get<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4806,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' j'
    - ' l'
    argTypes:
    - BasicJsonType
    - std::valarray<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4808
      start: 4796
    functionDepth: 4
    functionLinenumber: 4796
    functionLinenumberEnd: 4808
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - begin
    - JSON_HEDLEY_UNLIKELY
    - is_array
    - concat
    - size
    - template get<T>
    - std::transform
    - type_name
    - end
    - type_error::create
    - JSON_THROW
    - resize
    linkageType: ''
    returnType: void
    signature: void from_json(const BasicJsonType& j, std::valarray<T>& l)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: template get<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4812,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4816,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' j'
    - (arr)
    argTypes:
    - BasicJsonType
    - T[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4818
      start: 4811
    functionDepth: 1
    functionLinenumber: 4811
    functionLinenumberEnd: 4818
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - template get<T>
    - at
    linkageType: ''
    returnType: auto
    signature: 'auto from_json(const BasicJsonType& j, T (&arr)[N])  // NOLINT(cppcoreguidelines-avoid-c-arrays,hicpp-avoid-c-arrays,modernize-avoid-c-arrays)

      -> decltype(j.template get<T>(), void())'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: template get_ptr<const typename BasicJsonType::array_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4823,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::array_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4824
      start: 4821
    functionDepth: 0
    functionLinenumber: 4821
    functionLinenumberEnd: 4824
    functionName: from_json_array_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - template get_ptr<const typename BasicJsonType::array_t*>
    linkageType: ''
    returnType: void
    signature: void from_json_array_impl(const BasicJsonType& j, typename BasicJsonType::array_t&
      arr, priority_tag<3> /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: template get<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4829,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4833,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - std::array<T, N>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4835
      start: 4827
    functionDepth: 1
    functionLinenumber: 4827
    functionLinenumberEnd: 4835
    functionName: from_json_array_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - template get<T>
    - at
    linkageType: ''
    returnType: auto
    signature: "auto from_json_array_impl(const BasicJsonType& j, std::array<T, N>&
      arr,\n                          priority_tag<2> /*unused*/)\n-> decltype(j.template
      get<T>(), void())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4843,1
    - Dst: std::declval<typename ConstructibleArrayType::size_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4843,1
    - Dst: template get<typename ConstructibleArrayType::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4844,1
    - Dst: ConstructibleArrayType::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4850,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4850,1
    - Dst: std::transform
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4851,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4851,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4851,1
    - Dst: std::inserter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4852,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4852,1
    - Dst: template get<typename ConstructibleArrayType::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4856,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4858,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - ConstructibleArrayType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4859
      start: 4841
    functionDepth: 1
    functionLinenumber: 4841
    functionLinenumberEnd: 4859
    functionName: from_json_array_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - begin
    - std::move
    - reserve
    - size
    - std::inserter
    - std::declval<typename ConstructibleArrayType::size_type>
    - std::transform
    - template get<typename ConstructibleArrayType::value_type>
    - end
    - ConstructibleArrayType::reserve
    linkageType: ''
    returnType: auto
    signature: "auto from_json_array_impl(const BasicJsonType& j, ConstructibleArrayType&
      arr, priority_tag<1> /*unused*/)\n-> decltype(\n    arr.reserve(std::declval<typename
      ConstructibleArrayType::size_type>()),\n    j.template get<typename ConstructibleArrayType::value_type>(),\n
      \   void())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::transform
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4871,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4872,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4872,1
    - Dst: std::inserter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4872,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4872,1
    - Dst: template get<typename ConstructibleArrayType::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4877,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4879,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - ConstructibleArrayType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4880
      start: 4865
    functionDepth: 1
    functionLinenumber: 4865
    functionLinenumberEnd: 4880
    functionName: from_json_array_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - begin
    - std::move
    - std::inserter
    - std::transform
    - template get<typename ConstructibleArrayType::value_type>
    - end
    linkageType: ''
    returnType: void
    signature: "void from_json_array_impl(const BasicJsonType& j, ConstructibleArrayType&
      arr,\n                                 priority_tag<0> /*unused*/)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: from_json_array_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4891,1
    - Dst: template get<typename ConstructibleArrayType::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4892,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4895,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4895,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4897,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4897,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4897,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4897,1
    - Dst: from_json_array_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4900,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - ConstructibleArrayType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4901
      start: 4890
    functionDepth: 4
    functionLinenumber: 4890
    functionLinenumberEnd: 4901
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - from_json_array_impl
    - is_array
    - concat
    - template get<typename ConstructibleArrayType::value_type>
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: auto
    signature: 'auto from_json(const BasicJsonType& j, ConstructibleArrayType& arr)

      -> decltype(from_json_array_impl(j, arr, priority_tag<3> {}),

      j.template get<typename ConstructibleArrayType::value_type>(),

      void())'
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4907,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4908
      start: 4904
    functionDepth: 0
    functionLinenumber: 4904
    functionLinenumberEnd: 4908
    functionName: from_json_inplace_array_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - std::forward<BasicJsonType>
    linkageType: ''
    returnType: std::array<T, sizeof...(Idx)>
    signature: "std::array<T, sizeof...(Idx)> from_json_inplace_array_impl(BasicJsonType&&
      j,\n        identity_tag<std::array<T, sizeof...(Idx)>> /*unused*/, index_sequence<Idx...>
      /*unused*/)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: from_json_inplace_array_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4912,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4912,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4914,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4914,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4916,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4916,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4916,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4916,1
    - Dst: from_json_inplace_array_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4919,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4919,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - tag
    argTypes:
    - BasicJsonType
    - identity_tag<std::array<T, N>>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4920
      start: 4911
    functionDepth: 4
    functionLinenumber: 4911
    functionLinenumberEnd: 4920
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - is_array
    - JSON_THROW
    - concat
    - type_name
    - from_json_inplace_array_impl
    - type_error::create
    - std::forward<BasicJsonType>
    linkageType: ''
    returnType: auto
    signature: 'auto from_json(BasicJsonType&& j, identity_tag<std::array<T, N>> tag)

      -> decltype(from_json_inplace_array_impl(std::forward<BasicJsonType>(j), tag,
      make_index_sequence<N> {}))'
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4925,1
    - Dst: is_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4925,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4927,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4927,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4927,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4927,1
    - Dst: template get_ptr<const typename BasicJsonType::binary_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4930,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' bin'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4931
      start: 4923
    functionDepth: 4
    functionLinenumber: 4923
    functionLinenumberEnd: 4931
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - concat
    - template get_ptr<const typename BasicJsonType::binary_t*>
    - is_binary
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: void
    signature: void from_json(const BasicJsonType& j, typename BasicJsonType::binary_t&
      bin)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4937,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4937,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4939,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4939,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4939,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4939,1
    - Dst: template get_ptr<const typename BasicJsonType::object_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4943,1
    - Dst: std::transform
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4945,1
    - Dst: auto*::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4946,1
    - Dst: auto*::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4946,1
    - Dst: std::inserter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4947,1
    - Dst: ConstructibleObjectType::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4947,1
    - Dst: value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4950,1
    - Dst: second::template get<typename ConstructibleObjectType::mapped_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4950,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4952,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - ' j'
    - ' obj'
    argTypes:
    - BasicJsonType
    - ConstructibleObjectType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 4953
      start: 4935
    functionDepth: 4
    functionLinenumber: 4935
    functionLinenumberEnd: 4953
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - second::template get<typename ConstructibleObjectType::mapped_type>
    - JSON_HEDLEY_UNLIKELY
    - std::move
    - ConstructibleObjectType::begin
    - concat
    - std::inserter
    - is_object
    - auto*::end
    - value_type
    - std::transform
    - type_name
    - type_error::create
    - JSON_THROW
    - auto*::begin
    - template get_ptr<const typename BasicJsonType::object_t*>
    linkageType: ''
    returnType: void
    signature: void from_json(const BasicJsonType& j, ConstructibleObjectType& obj)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<value_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4969,1
    - Dst: static_cast<ArithmeticType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4973,1
    - Dst: template get_ptr<const typename BasicJsonType::number_unsigned_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4973,1
    - Dst: static_cast<ArithmeticType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4978,1
    - Dst: template get_ptr<const typename BasicJsonType::number_integer_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4978,1
    - Dst: static_cast<ArithmeticType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4983,1
    - Dst: template get_ptr<const typename BasicJsonType::number_float_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4983,1
    - Dst: static_cast<ArithmeticType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4988,1
    - Dst: template get_ptr<const typename BasicJsonType::boolean_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4988,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4999,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4999,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4999,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:4999,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 27
    argCount: 2
    argNames:
    - ' j'
    - ' val'
    argTypes:
    - BasicJsonType
    - ArithmeticType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5001
      start: 4967
    functionDepth: 4
    functionLinenumber: 4967
    functionLinenumberEnd: 5001
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - template get_ptr<const typename BasicJsonType::number_float_t*>
    - template get_ptr<const typename BasicJsonType::number_integer_t*>
    - static_cast<value_t>
    - static_cast<ArithmeticType>
    - template get_ptr<const typename BasicJsonType::number_unsigned_t*>
    - concat
    - template get_ptr<const typename BasicJsonType::boolean_t*>
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: void
    signature: void from_json(const BasicJsonType& j, ArithmeticType& val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_tuple
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5006,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5006,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5007
      start: 5004
    functionDepth: 0
    functionLinenumber: 5004
    functionLinenumberEnd: 5007
    functionName: from_json_tuple_impl_base
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - std::forward<BasicJsonType>
    - std::make_tuple
    linkageType: ''
    returnType: std::tuple<Args...>
    signature: std::tuple<Args...> from_json_tuple_impl_base(BasicJsonType&& j, index_sequence<Idx...>
      /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5012,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5013,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5014
      start: 5010
    functionDepth: 0
    functionLinenumber: 5010
    functionLinenumberEnd: 5014
    functionName: from_json_tuple_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - std::forward<BasicJsonType>
    linkageType: ''
    returnType: std::pair<A1, A2>
    signature: std::pair<A1, A2> from_json_tuple_impl(BasicJsonType&& j, identity_tag<std::pair<A1,
      A2>> /*unused*/, priority_tag<0> /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: from_json_tuple_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5019,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5019,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' p'
    argTypes:
    - BasicJsonType
    - std::pair<A1, A2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5020
      start: 5017
    functionDepth: 1
    functionLinenumber: 5017
    functionLinenumberEnd: 5020
    functionName: from_json_tuple_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - std::forward<BasicJsonType>
    - from_json_tuple_impl
    linkageType: ''
    returnType: void
    signature: void from_json_tuple_impl(BasicJsonType&& j, std::pair<A1, A2>& p,
      priority_tag<1> /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: from_json_tuple_impl_base
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5025,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5025,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5026
      start: 5023
    functionDepth: 1
    functionLinenumber: 5023
    functionLinenumberEnd: 5026
    functionName: from_json_tuple_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - std::forward<BasicJsonType>
    - from_json_tuple_impl_base
    linkageType: ''
    returnType: std::tuple<Args...>
    signature: std::tuple<Args...> from_json_tuple_impl(BasicJsonType&& j, identity_tag<std::tuple<Args...>>
      /*unused*/, priority_tag<2> /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: from_json_tuple_impl_base
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5031,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5031,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' t'
    argTypes:
    - BasicJsonType
    - std::tuple<Args...>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5032
      start: 5029
    functionDepth: 1
    functionLinenumber: 5029
    functionLinenumberEnd: 5032
    functionName: from_json_tuple_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - std::forward<BasicJsonType>
    - from_json_tuple_impl_base
    linkageType: ''
    returnType: void
    signature: void from_json_tuple_impl(BasicJsonType&& j, std::tuple<Args...>& t,
      priority_tag<3> /*unused*/)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: from_json_tuple_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5036,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5036,1
    - Dst: std::forward<TupleRelated>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5036,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5038,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5038,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5040,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5040,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5040,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5040,1
    - Dst: from_json_tuple_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5043,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5043,1
    - Dst: std::forward<TupleRelated>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5043,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' t'
    argTypes:
    - BasicJsonType
    - TupleRelated
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5044
      start: 5035
    functionDepth: 4
    functionLinenumber: 5035
    functionLinenumberEnd: 5044
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - is_array
    - JSON_HEDLEY_UNLIKELY
    - JSON_THROW
    - concat
    - type_name
    - type_error::create
    - std::forward<BasicJsonType>
    - std::forward<TupleRelated>
    - from_json_tuple_impl
    linkageType: ''
    returnType: auto
    signature: 'auto from_json(BasicJsonType&& j, TupleRelated&& t)

      -> decltype(from_json_tuple_impl(std::forward<BasicJsonType>(j), std::forward<TupleRelated>(t),
      priority_tag<3> {}))'
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5051,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5051,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5053,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5053,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5053,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5053,1
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5055,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5058,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5058,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5060,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5060,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5060,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5060,1
    - Dst: emplace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5062,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5062,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5062,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' j'
    - ' m'
    argTypes:
    - BasicJsonType
    - std::map<Key, Value, Compare, Allocator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5064
      start: 5049
    functionDepth: 4
    functionLinenumber: 5049
    functionLinenumberEnd: 5064
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - is_array
    - concat
    - at
    - type_name
    - type_error::create
    - JSON_THROW
    - emplace
    - clear
    linkageType: ''
    returnType: void
    signature: void from_json(const BasicJsonType& j, std::map<Key, Value, Compare,
      Allocator>& m)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5071,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5071,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5073,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5073,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5073,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5073,1
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5075,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5078,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5078,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5080,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5080,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5080,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5080,1
    - Dst: emplace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5082,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5082,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5082,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - ' j'
    - ' m'
    argTypes:
    - BasicJsonType
    - std::unordered_map<Key, Value, Hash, KeyEqual, Allocator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5084
      start: 5069
    functionDepth: 4
    functionLinenumber: 5069
    functionLinenumberEnd: 5084
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - is_array
    - concat
    - at
    - type_name
    - type_error::create
    - JSON_THROW
    - emplace
    - clear
    linkageType: ''
    returnType: void
    signature: void from_json(const BasicJsonType& j, std::unordered_map<Key, Value,
      Hash, KeyEqual, Allocator>& m)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5090,1
    - Dst: is_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5090,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5092,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5092,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5092,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5092,1
    - Dst: template get_ptr<const typename BasicJsonType::string_t*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5094,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' p'
    argTypes:
    - BasicJsonType
    - std_fs::path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5095
      start: 5088
    functionDepth: 4
    functionLinenumber: 5088
    functionLinenumberEnd: 5095
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - concat
    - is_string
    - type_name
    - type_error::create
    - JSON_THROW
    - template get_ptr<const typename BasicJsonType::string_t*>
    linkageType: ''
    returnType: void
    signature: void from_json(const BasicJsonType& j, std_fs::path& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5102,1
    - Dst: from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5102,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5102,1
    - Dst: from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5103,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5103,1
    - Dst: from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5105,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5105,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' val'
    argTypes:
    - BasicJsonType
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5106
      start: 5101
    functionDepth: 5
    functionLinenumber: 5101
    functionLinenumberEnd: 5106
    functionName: "operator()(const BasicJsonType& j, T&& val) const\n    noexcept(noexcept(from_json(j,
      std::forward<T>(val))))\n    -> decltype(from_json(j, std::forward<T>(val)))"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::forward<T>
    - from_json
    linkageType: ''
    returnType: auto
    signature: "auto operator()(const BasicJsonType& j, T&& val) const\n    noexcept(noexcept(from_json(j,
      std::forward<T>(val))))\n    -> decltype(from_json(j, std::forward<T>(val)))"
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5183,1
    - Dst: std::declval<IteratorType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5193,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5212,1
    - Dst: iteration_proxy_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5244,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5265,1
    - Dst: m_object::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5267,1
    - Dst: int_to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5274,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5282,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5301,1
    - Dst: iteration_proxy_value<IteratorType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5328,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5328,1
    - Dst: iteration_proxy_value<IteratorType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5334,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5334,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5342,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5344,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5350,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5352,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 52
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5355
      start: 5174
    functionDepth: 1
    functionLinenumber: 5174
    functionLinenumberEnd: 5355
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - value
    - begin
    - std::move
    - iteration_proxy_value
    - std::declval<IteratorType>
    - m_object::type
    - key
    - to_string
    - int_to_string
    - end
    - JSON_ASSERT
    - iteration_proxy_value<IteratorType>
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' target'
    - value
    argTypes:
    - string_type
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5184
      start: 5179
    functionDepth: 1
    functionLinenumber: 5179
    functionLinenumberEnd: 5184
    functionName: int_to_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - to_string
    linkageType: ''
    returnType: void
    signature: void int_to_string( string_type& target, std::size_t value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5208
      start: 5208
    functionDepth: 0
    functionLinenumber: 5208
    functionLinenumberEnd: 5208
    functionName: iteration_proxy_value::iteration_proxy_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iteration_proxy_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5212,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - it
    argTypes:
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5214
      start: 5209
    functionDepth: 0
    functionLinenumber: 5209
    functionLinenumberEnd: 5214
    functionName: iteration_proxy_value::iteration_proxy_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void iteration_proxy_value(IteratorType it, std::size_t array_index_
      = 0)\n    noexcept(std::is_nothrow_move_constructible<IteratorType>::value\n
      \            && std::is_nothrow_default_constructible<string_type>::value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5216
      start: 5216
    functionDepth: 0
    functionLinenumber: 5216
    functionLinenumberEnd: 5216
    functionName: iteration_proxy_value::iteration_proxy_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iteration_proxy_value(iteration_proxy_value const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5217
      start: 5217
    functionDepth: 0
    functionLinenumber: 5217
    functionLinenumberEnd: 5217
    functionName: '& operator=(iteration_proxy_value const&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iteration_proxy_value
    signature: iteration_proxy_value & operator=(iteration_proxy_value const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5221
      start: 5219
    functionDepth: 0
    functionLinenumber: 5219
    functionLinenumberEnd: 5221
    functionName: iteration_proxy_value::iteration_proxy_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void iteration_proxy_value(iteration_proxy_value&&)\n    noexcept(std::is_nothrow_move_constructible<IteratorType>::value\n
      \            && std::is_nothrow_move_constructible<string_type>::value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5224
      start: 5222
    functionDepth: 0
    functionLinenumber: 5222
    functionLinenumberEnd: 5224
    functionName: "& operator=(iteration_proxy_value&&)\n    noexcept(std::is_nothrow_move_assignable<IteratorType>::value\n
      \            && std::is_nothrow_move_assignable<string_type>::value)"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iteration_proxy_value
    signature: "iteration_proxy_value & operator=(iteration_proxy_value&&)\n    noexcept(std::is_nothrow_move_assignable<IteratorType>::value\n
      \            && std::is_nothrow_move_assignable<string_type>::value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5225
      start: 5225
    functionDepth: 0
    functionLinenumber: 5225
    functionLinenumberEnd: 5225
    functionName: ~iteration_proxy_value()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~iteration_proxy_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5231
      start: 5228
    functionDepth: 0
    functionLinenumber: 5228
    functionLinenumberEnd: 5231
    functionName: '& operator*() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iteration_proxy_value
    signature: iteration_proxy_value & operator*() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5240
      start: 5234
    functionDepth: 0
    functionLinenumber: 5234
    functionLinenumberEnd: 5240
    functionName: '& operator++()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iteration_proxy_value
    signature: iteration_proxy_value & operator++()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: iteration_proxy_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5248
      start: 5242
    functionDepth: 0
    functionLinenumber: 5242
    functionLinenumberEnd: 5248
    functionName: operator++(int)&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - iteration_proxy_value
    linkageType: ''
    returnType: iteration_proxy_value
    signature: iteration_proxy_value operator++(int)&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - iteration_proxy_value
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5254
      start: 5251
    functionDepth: 0
    functionLinenumber: 5251
    functionLinenumberEnd: 5254
    functionName: operator==(const iteration_proxy_value& o) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const iteration_proxy_value& o) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - iteration_proxy_value
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5260
      start: 5257
    functionDepth: 0
    functionLinenumber: 5257
    functionLinenumberEnd: 5260
    functionName: operator!=(const iteration_proxy_value& o) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const iteration_proxy_value& o) const
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5265,1
    - Dst: m_object::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5267,1
    - Dst: int_to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5274,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5282,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5296
      start: 5263
    functionDepth: 2
    functionLinenumber: 5263
    functionLinenumberEnd: 5296
    functionName: '& key() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - key
    - JSON_ASSERT
    - int_to_string
    - m_object::type
    linkageType: ''
    returnType: string_type
    signature: string_type & key() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: iteration_proxy_value::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5302
      start: 5299
    functionDepth: 1
    functionLinenumber: 5299
    functionLinenumberEnd: 5302
    functionName: iteration_proxy_value::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - iteration_proxy_value::value
    linkageType: ''
    returnType: typename IteratorType::reference
    signature: typename IteratorType::reference value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5313
      start: 5313
    functionDepth: 0
    functionLinenumber: 5313
    functionLinenumberEnd: 5313
    functionName: iteration_proxy::iteration_proxy
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iteration_proxy()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - cont
    argTypes:
    - typename IteratorType::reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5317
      start: 5316
    functionDepth: 0
    functionLinenumber: 5316
    functionLinenumberEnd: 5317
    functionName: iteration_proxy::iteration_proxy
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iteration_proxy(typename IteratorType::reference cont) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5319
      start: 5319
    functionDepth: 0
    functionLinenumber: 5319
    functionLinenumberEnd: 5319
    functionName: iteration_proxy::iteration_proxy
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iteration_proxy(iteration_proxy const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5320
      start: 5320
    functionDepth: 0
    functionLinenumber: 5320
    functionLinenumberEnd: 5320
    functionName: '& operator=(iteration_proxy const&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iteration_proxy
    signature: iteration_proxy & operator=(iteration_proxy const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5321
      start: 5321
    functionDepth: 0
    functionLinenumber: 5321
    functionLinenumberEnd: 5321
    functionName: iteration_proxy::iteration_proxy
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iteration_proxy(iteration_proxy&&) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5322
      start: 5322
    functionDepth: 0
    functionLinenumber: 5322
    functionLinenumberEnd: 5322
    functionName: '& operator=(iteration_proxy&&) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iteration_proxy
    signature: iteration_proxy & operator=(iteration_proxy&&) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5323
      start: 5323
    functionDepth: 0
    functionLinenumber: 5323
    functionLinenumberEnd: 5323
    functionName: ~iteration_proxy()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~iteration_proxy()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: iteration_proxy_value<IteratorType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5328,1
    - Dst: iteration_proxy::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5329
      start: 5326
    functionDepth: 1
    functionLinenumber: 5326
    functionLinenumberEnd: 5329
    functionName: iteration_proxy::begin
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - iteration_proxy::begin
    - iteration_proxy_value<IteratorType>
    linkageType: ''
    returnType: iteration_proxy_value<IteratorType>
    signature: iteration_proxy_value<IteratorType> begin() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: iteration_proxy_value<IteratorType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5334,1
    - Dst: iteration_proxy::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5334,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5335
      start: 5332
    functionDepth: 1
    functionLinenumber: 5332
    functionLinenumberEnd: 5335
    functionName: iteration_proxy::end
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - iteration_proxy::end
    - iteration_proxy_value<IteratorType>
    linkageType: ''
    returnType: iteration_proxy_value<IteratorType>
    signature: iteration_proxy_value<IteratorType> end() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5342,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - nlohmann::detail::iteration_proxy_value<IteratorType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5345
      start: 5342
    functionDepth: 1
    functionLinenumber: 5342
    functionLinenumberEnd: 5345
    functionName: get
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 101
    functionsReached:
    - key
    linkageType: ''
    returnType: auto
    signature: auto get(const nlohmann::detail::iteration_proxy_value<IteratorType>&
      i) -> decltype(i.key())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5350,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5352,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - nlohmann::detail::iteration_proxy_value<IteratorType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5353
      start: 5350
    functionDepth: 1
    functionLinenumber: 5350
    functionLinenumberEnd: 5353
    functionName: get
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 101
    functionsReached:
    - value
    linkageType: ''
    returnType: auto
    signature: auto get(const nlohmann::detail::iteration_proxy_value<IteratorType>&
      i) -> decltype(i.value())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5379,1
    - Dst: "std::declval <\n                            ::nlohmann::detail::iteration_proxy_value<IteratorType
        >>"
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5386
      start: 5356
    functionDepth: 0
    functionLinenumber: 5356
    functionLinenumberEnd: 5386
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get
    - "std::declval <\n                            ::nlohmann::detail::iteration_proxy_value<IteratorType
      >>"
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_END
    signature: NLOHMANN_JSON_NAMESPACE_END namespace
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5427,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5430,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5440,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5443,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5449,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5451,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5452,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5460,1
    - Dst: template create<typename BasicJsonType::string_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5462,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5463,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5473,1
    - Dst: BasicJsonType::binary_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5475,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5476,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5482,1
    - Dst: BasicJsonType::binary_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5484,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5484,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5485,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5495,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5498,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5508,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5511,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5521,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5524,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5534,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5537,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5538,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5544,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5546,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5547,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5548,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5559,1
    - Dst: template create<typename BasicJsonType::array_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5561,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5561,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5561,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5562,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5563,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5569,1
    - Dst: m_data::m_value::array::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5572,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5572,1
    - Dst: m_data::m_value::array::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5575,1
    - Dst: set_parent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5576,1
    - Dst: m_data::m_value::array::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5576,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5578,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5585,1
    - Dst: m_data::m_value::array::resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5588,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5588,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5589,1
    - Dst: std::copy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5591,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5591,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5591,1
    - Dst: m_data::m_value::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5591,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5593,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5594,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5604,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5607,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5608,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5614,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5616,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5617,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5618,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5628,1
    - Dst: template create<typename BasicJsonType::object_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5630,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5630,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5630,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5631,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5632,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5644,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5657,1
    - Dst: static_cast<typename BasicJsonType::boolean_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5657,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5664,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5670,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5670,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5677,1
    - Dst: static_cast<typename BasicJsonType::number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5677,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5684,1
    - Dst: static_cast<typename BasicJsonType::number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5684,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5691,1
    - Dst: static_cast<typename BasicJsonType::number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5691,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5700,1
    - Dst: static_cast<underlying_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5700,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5707,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5720,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5726,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5733,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5733,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5739,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5739,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5746,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5752,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5752,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5762,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5776,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5776,1
    - Dst: std::get<Idx>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5782,1
    - Dst: to_json_tuple_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5788,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5795,1
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5802,1
    - Dst: to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5802,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5802,1
    - Dst: to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5803,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5803,1
    - Dst: to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5805,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5805,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 145
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5808
      start: 5404
    functionDepth: 1
    functionLinenumber: 5404
    functionLinenumberEnd: 5808
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - m_data::m_value::array::reserve
    - template create<typename BasicJsonType::string_t>
    - begin
    - set_parent
    - m_data::m_value::array::back
    - size
    - construct
    - value
    - to_json_tuple_impl
    - string
    - m_data::m_value::array::begin
    - template create<typename BasicJsonType::object_t>
    - static_cast<typename BasicJsonType::number_unsigned_t>
    - std::get<Idx>
    - m_data::m_value::array::resize
    - m_data::m_value::array::push_back
    - to_json
    - BasicJsonType::binary_t
    - end
    - static_cast<typename BasicJsonType::number_float_t>
    - std::copy
    - set_parents
    - static_cast<typename BasicJsonType::boolean_t>
    - noexcept
    - static_cast<typename BasicJsonType::number_integer_t>
    - std::move
    - key
    - m_data::m_value::destroy
    - static_cast<underlying_type>
    - assert_invariant
    - std::forward<T>
    - template create<typename BasicJsonType::array_t>
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5427,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - b
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::boolean_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5431
      start: 5425
    functionDepth: 1
    functionLinenumber: 5425
    functionLinenumberEnd: 5431
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - m_data::m_value::destroy
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, typename BasicJsonType::boolean_t
      b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5440,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' s'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5444
      start: 5438
    functionDepth: 1
    functionLinenumber: 5438
    functionLinenumberEnd: 5444
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - m_data::m_value::destroy
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const typename BasicJsonType::string_t&
      s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5449,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5451,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5452,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' s'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5453
      start: 5447
    functionDepth: 1
    functionLinenumber: 5447
    functionLinenumberEnd: 5453
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - m_data::m_value::destroy
    - std::move
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, typename BasicJsonType::string_t&&
      s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5460,1
    - Dst: template create<typename BasicJsonType::string_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5462,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5463,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' str'
    argTypes:
    - BasicJsonType
    - CompatibleStringType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5464
      start: 5458
    functionDepth: 1
    functionLinenumber: 5458
    functionLinenumberEnd: 5464
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - template create<typename BasicJsonType::string_t>
    - m_data::m_value::destroy
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const CompatibleStringType& str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5473,1
    - Dst: BasicJsonType::binary_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5475,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5476,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' b'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5477
      start: 5471
    functionDepth: 1
    functionLinenumber: 5471
    functionLinenumberEnd: 5477
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - assert_invariant
    - m_data::m_value::destroy
    - BasicJsonType::binary_t
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const typename BasicJsonType::binary_t&
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5482,1
    - Dst: BasicJsonType::binary_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5484,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5484,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5485,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' b'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5486
      start: 5480
    functionDepth: 1
    functionLinenumber: 5480
    functionLinenumberEnd: 5486
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - assert_invariant
    - m_data::m_value::destroy
    - std::move
    - BasicJsonType::binary_t
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, typename BasicJsonType::binary_t&&
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5495,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5498,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - val
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::number_float_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5499
      start: 5493
    functionDepth: 1
    functionLinenumber: 5493
    functionLinenumberEnd: 5499
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - m_data::m_value::destroy
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, typename BasicJsonType::number_float_t
      val) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5508,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5511,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - val
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::number_unsigned_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5512
      start: 5506
    functionDepth: 1
    functionLinenumber: 5506
    functionLinenumberEnd: 5512
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - m_data::m_value::destroy
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, typename BasicJsonType::number_unsigned_t
      val) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5521,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5524,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - val
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::number_integer_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5525
      start: 5519
    functionDepth: 1
    functionLinenumber: 5519
    functionLinenumberEnd: 5525
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - m_data::m_value::destroy
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, typename BasicJsonType::number_integer_t
      val) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5534,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5537,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5538,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::array_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5539
      start: 5532
    functionDepth: 1
    functionLinenumber: 5532
    functionLinenumberEnd: 5539
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - set_parents
    - m_data::m_value::destroy
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const typename BasicJsonType::array_t&
      arr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5544,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5546,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5547,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::array_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5549
      start: 5542
    functionDepth: 1
    functionLinenumber: 5542
    functionLinenumberEnd: 5549
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - set_parents
    - m_data::m_value::destroy
    - std::move
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, typename BasicJsonType::array_t&&
      arr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5559,1
    - Dst: template create<typename BasicJsonType::array_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5561,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5561,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5561,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5562,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5563,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - CompatibleArrayType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5564
      start: 5554
    functionDepth: 1
    functionLinenumber: 5554
    functionLinenumberEnd: 5564
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - begin
    - m_data::m_value::destroy
    - assert_invariant
    - end
    - template create<typename BasicJsonType::array_t>
    - set_parents
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const CompatibleArrayType& arr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5569,1
    - Dst: m_data::m_value::array::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5572,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5572,1
    - Dst: m_data::m_value::array::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5575,1
    - Dst: set_parent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5576,1
    - Dst: m_data::m_value::array::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5576,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5578,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - std::vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5579
      start: 5567
    functionDepth: 1
    functionLinenumber: 5567
    functionLinenumberEnd: 5579
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - m_data::m_value::array::reserve
    - set_parent
    - m_data::m_value::destroy
    - m_data::m_value::array::push_back
    - m_data::m_value::array::back
    - size
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const std::vector<bool>& arr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5585,1
    - Dst: m_data::m_value::array::resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5588,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5588,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5589,1
    - Dst: std::copy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5591,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5591,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5591,1
    - Dst: m_data::m_value::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5591,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5593,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5594,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - std::valarray<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5595
      start: 5583
    functionDepth: 1
    functionLinenumber: 5583
    functionLinenumberEnd: 5595
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - begin
    - m_data::m_value::destroy
    - m_data::m_value::array::resize
    - size
    - assert_invariant
    - set_parents
    - end
    - m_data::m_value::array::begin
    - std::copy
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const std::valarray<T>& arr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5604,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5607,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5608,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' j'
    - ' obj'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::object_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5609
      start: 5602
    functionDepth: 1
    functionLinenumber: 5602
    functionLinenumberEnd: 5609
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - set_parents
    - m_data::m_value::destroy
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const typename BasicJsonType::object_t&
      obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5614,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5616,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5617,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5618,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' j'
    - ' obj'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::object_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5619
      start: 5612
    functionDepth: 1
    functionLinenumber: 5612
    functionLinenumberEnd: 5619
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - set_parents
    - m_data::m_value::destroy
    - std::move
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, typename BasicJsonType::object_t&&
      obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5628,1
    - Dst: template create<typename BasicJsonType::object_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5630,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5630,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5630,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5631,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5632,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' j'
    - ' obj'
    argTypes:
    - BasicJsonType
    - CompatibleObjectType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5633
      start: 5623
    functionDepth: 1
    functionLinenumber: 5623
    functionLinenumberEnd: 5633
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - begin
    - m_data::m_value::destroy
    - assert_invariant
    - end
    - set_parents
    - template create<typename BasicJsonType::object_t>
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const CompatibleObjectType& obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5644,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - b
    argTypes:
    - BasicJsonType
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5645
      start: 5642
    functionDepth: 2
    functionLinenumber: 5642
    functionLinenumberEnd: 5645
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, T b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5657,1
    - Dst: static_cast<typename BasicJsonType::boolean_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5657,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' b'
    argTypes:
    - BasicJsonType
    - BoolRef
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5658
      start: 5655
    functionDepth: 2
    functionLinenumber: 5655
    functionLinenumberEnd: 5658
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - static_cast<typename BasicJsonType::boolean_t>
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const BoolRef& b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' s'
    argTypes:
    - BasicJsonType
    - CompatibleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5665
      start: 5662
    functionDepth: 2
    functionLinenumber: 5662
    functionLinenumberEnd: 5665
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const CompatibleString& s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5670,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5670,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' s'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5671
      start: 5668
    functionDepth: 2
    functionLinenumber: 5668
    functionLinenumberEnd: 5671
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - std::move
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, typename BasicJsonType::string_t&& s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5677,1
    - Dst: static_cast<typename BasicJsonType::number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5677,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - val
    argTypes:
    - BasicJsonType
    - FloatType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5678
      start: 5675
    functionDepth: 2
    functionLinenumber: 5675
    functionLinenumberEnd: 5678
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - static_cast<typename BasicJsonType::number_float_t>
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, FloatType val) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5684,1
    - Dst: static_cast<typename BasicJsonType::number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5684,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - val
    argTypes:
    - BasicJsonType
    - CompatibleNumberUnsignedType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5685
      start: 5682
    functionDepth: 2
    functionLinenumber: 5682
    functionLinenumberEnd: 5685
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - static_cast<typename BasicJsonType::number_unsigned_t>
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, CompatibleNumberUnsignedType val) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5691,1
    - Dst: static_cast<typename BasicJsonType::number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5691,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - val
    argTypes:
    - BasicJsonType
    - CompatibleNumberIntegerType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5692
      start: 5689
    functionDepth: 2
    functionLinenumber: 5689
    functionLinenumberEnd: 5692
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - static_cast<typename BasicJsonType::number_integer_t>
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, CompatibleNumberIntegerType val) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5700,1
    - Dst: static_cast<underlying_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5700,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - e
    argTypes:
    - BasicJsonType
    - EnumType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5701
      start: 5697
    functionDepth: 2
    functionLinenumber: 5697
    functionLinenumberEnd: 5701
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - static_cast<underlying_type>
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, EnumType e) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5707,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' e'
    argTypes:
    - BasicJsonType
    - std::vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5708
      start: 5705
    functionDepth: 2
    functionLinenumber: 5705
    functionLinenumberEnd: 5708
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const std::vector<bool>& e)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5720,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - CompatibleArrayType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5721
      start: 5718
    functionDepth: 2
    functionLinenumber: 5718
    functionLinenumberEnd: 5721
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const CompatibleArrayType& arr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5726,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' bin'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5727
      start: 5724
    functionDepth: 2
    functionLinenumber: 5724
    functionLinenumberEnd: 5727
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const typename BasicJsonType::binary_t&
      bin)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5733,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5733,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - std::valarray<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5734
      start: 5731
    functionDepth: 2
    functionLinenumber: 5731
    functionLinenumberEnd: 5734
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - std::move
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const std::valarray<T>& arr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5739,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5739,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::array_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5740
      start: 5737
    functionDepth: 2
    functionLinenumber: 5737
    functionLinenumberEnd: 5740
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - std::move
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, typename BasicJsonType::array_t&& arr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5746,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' obj'
    argTypes:
    - BasicJsonType
    - CompatibleObjectType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5747
      start: 5744
    functionDepth: 2
    functionLinenumber: 5744
    functionLinenumberEnd: 5747
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const CompatibleObjectType& obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5752,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5752,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' obj'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::object_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5753
      start: 5750
    functionDepth: 2
    functionLinenumber: 5750
    functionLinenumberEnd: 5753
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - std::move
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, typename BasicJsonType::object_t&& obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5762,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - (arr)
    argTypes:
    - BasicJsonType
    - T[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5763
      start: 5760
    functionDepth: 2
    functionLinenumber: 5760
    functionLinenumberEnd: 5763
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const T(&arr)[N])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' p'
    argTypes:
    - BasicJsonType
    - std::pair<T1, T2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5769
      start: 5766
    functionDepth: 0
    functionLinenumber: 5766
    functionLinenumberEnd: 5769
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const std::pair<T1, T2>& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5776,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5776,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' b'
    argTypes:
    - BasicJsonType
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5777
      start: 5774
    functionDepth: 1
    functionLinenumber: 5774
    functionLinenumberEnd: 5777
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - key
    - value
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const T& b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::get<Idx>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5782,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' t'
    argTypes:
    - BasicJsonType
    - Tuple
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5783
      start: 5780
    functionDepth: 0
    functionLinenumber: 5780
    functionLinenumberEnd: 5783
    functionName: to_json_tuple_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - std::get<Idx>
    linkageType: ''
    returnType: void
    signature: void to_json_tuple_impl(BasicJsonType& j, const Tuple& t, index_sequence<Idx...>
      /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: to_json_tuple_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5788,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' t'
    argTypes:
    - BasicJsonType
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5789
      start: 5786
    functionDepth: 1
    functionLinenumber: 5786
    functionLinenumberEnd: 5789
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - to_json_tuple_impl
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const T& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5795,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' p'
    argTypes:
    - BasicJsonType
    - std_fs::path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5796
      start: 5793
    functionDepth: 1
    functionLinenumber: 5793
    functionLinenumberEnd: 5796
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - string
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const std_fs::path& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5802,1
    - Dst: to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5802,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5802,1
    - Dst: to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5803,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5803,1
    - Dst: to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5805,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5805,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' val'
    argTypes:
    - BasicJsonType
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5806
      start: 5802
    functionDepth: 3
    functionLinenumber: 5802
    functionLinenumberEnd: 5806
    functionName: "operator()(BasicJsonType& j, T&& val) const noexcept(noexcept(to_json(j,
      std::forward<T>(val))))\n    -> decltype(to_json(j, std::forward<T>(val)), void())"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::forward<T>
    - to_json
    linkageType: ''
    returnType: auto
    signature: "auto operator()(BasicJsonType& j, T&& val) const noexcept(noexcept(to_json(j,
      std::forward<T>(val))))\n    -> decltype(to_json(j, std::forward<T>(val)), void())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5838,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5838,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5838,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5839,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5839,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5841,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5841,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' val'
    argTypes:
    - BasicJsonType
    - TargetType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5842
      start: 5837
    functionDepth: 1
    functionLinenumber: 5837
    functionLinenumberEnd: 5842
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 6
    functionsReached:
    - std::forward<BasicJsonType>
    - noexcept
    - BT::Monitor::from_json
    linkageType: ''
    returnType: auto
    signature: "auto from_json(BasicJsonType && j, TargetType& val) noexcept(\n        noexcept(::nlohmann::from_json(std::forward<BasicJsonType>(j),
      val)))\n    -> decltype(::nlohmann::from_json(std::forward<BasicJsonType>(j),
      val), void())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5848,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5848,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5848,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5849,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5849,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5851,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5851,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5852
      start: 5847
    functionDepth: 1
    functionLinenumber: 5847
    functionLinenumberEnd: 5852
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 7
    functionsReached:
    - std::forward<BasicJsonType>
    - noexcept
    - BT::Monitor::from_json
    linkageType: ''
    returnType: auto
    signature: "auto from_json(BasicJsonType && j) noexcept(\n    noexcept(::nlohmann::from_json(std::forward<BasicJsonType>(j),
      detail::identity_tag<TargetType> {})))\n    -> decltype(::nlohmann::from_json(std::forward<BasicJsonType>(j),
      detail::identity_tag<TargetType> {}))"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5858,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5858,1
    - Dst: std::forward<TargetType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5858,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5859,1
    - Dst: std::forward<TargetType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5859,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5861,1
    - Dst: std::forward<TargetType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5861,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' val'
    argTypes:
    - BasicJsonType
    - TargetType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5862
      start: 5857
    functionDepth: 1
    functionLinenumber: 5857
    functionLinenumberEnd: 5862
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 6
    functionsReached:
    - std::forward<TargetType>
    - noexcept
    - BT::Monitor::to_json
    linkageType: ''
    returnType: auto
    signature: "auto to_json(BasicJsonType& j, TargetType && val) noexcept(\n        noexcept(::nlohmann::to_json(j,
      std::forward<TargetType>(val))))\n    -> decltype(::nlohmann::to_json(j, std::forward<TargetType>(val)),
      void())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5838,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5838,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5838,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5839,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5839,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5841,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5841,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' val'
    argTypes:
    - BasicJsonType
    - TargetType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5842
      start: 5837
    functionDepth: 1
    functionLinenumber: 5837
    functionLinenumberEnd: 5842
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - std::forward<BasicJsonType>
    - noexcept
    - BT::Monitor::from_json
    linkageType: ''
    returnType: auto
    signature: "auto from_json(BasicJsonType && j, TargetType& val) noexcept(\n        noexcept(::nlohmann::from_json(std::forward<BasicJsonType>(j),
      val)))\n    -> decltype(::nlohmann::from_json(std::forward<BasicJsonType>(j),
      val), void())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5848,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5848,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5848,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5849,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5849,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5851,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5851,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5852
      start: 5847
    functionDepth: 1
    functionLinenumber: 5847
    functionLinenumberEnd: 5852
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 9
    functionsReached:
    - std::forward<BasicJsonType>
    - noexcept
    - BT::Monitor::from_json
    linkageType: ''
    returnType: auto
    signature: "auto from_json(BasicJsonType && j) noexcept(\n    noexcept(::nlohmann::from_json(std::forward<BasicJsonType>(j),
      detail::identity_tag<TargetType> {})))\n    -> decltype(::nlohmann::from_json(std::forward<BasicJsonType>(j),
      detail::identity_tag<TargetType> {}))"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5858,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5858,1
    - Dst: std::forward<TargetType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5858,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5859,1
    - Dst: std::forward<TargetType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5859,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5861,1
    - Dst: std::forward<TargetType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5861,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' val'
    argTypes:
    - BasicJsonType
    - TargetType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5862
      start: 5857
    functionDepth: 1
    functionLinenumber: 5857
    functionLinenumberEnd: 5862
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 7
    functionsReached:
    - std::forward<TargetType>
    - noexcept
    - BT::Monitor::to_json
    linkageType: ''
    returnType: auto
    signature: "auto to_json(BasicJsonType& j, TargetType && val) noexcept(\n        noexcept(::nlohmann::to_json(j,
      std::forward<TargetType>(val))))\n    -> decltype(::nlohmann::to_json(j, std::forward<TargetType>(val)),
      void())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' rhs'
    argTypes:
    - byte_container_with_subtype
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5934
      start: 5931
    functionDepth: 0
    functionLinenumber: 5931
    functionLinenumberEnd: 5934
    functionName: operator!=(const byte_container_with_subtype& rhs) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const byte_container_with_subtype& rhs) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - subtype_
    argTypes:
    - subtype_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5942
      start: 5938
    functionDepth: 0
    functionLinenumber: 5938
    functionLinenumberEnd: 5942
    functionName: set_subtype
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_subtype(subtype_type subtype_) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<subtype_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5948,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5949
      start: 5946
    functionDepth: 0
    functionLinenumber: 5946
    functionLinenumberEnd: 5949
    functionName: subtype
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<subtype_type>
    linkageType: ''
    returnType: subtype_type
    signature: subtype_type subtype() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5956
      start: 5953
    functionDepth: 0
    functionLinenumber: 5953
    functionLinenumberEnd: 5956
    functionName: has_subtype
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_subtype() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5964
      start: 5960
    functionDepth: 0
    functionLinenumber: 5960
    functionLinenumberEnd: 5964
    functionName: clear_subtype
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void clear_subtype() noexcept
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6029,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6029,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6030,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6035,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6040,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6040,1
    - Dst: items
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6041,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6043,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6044,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6045,1
    - Dst: hash
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6045,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6045,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6052,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6052,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6055,1
    - Dst: hash
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6055,1
    - Dst: template get_ref<const string_t&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6062,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6063,1
    - Dst: template get<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6068,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6069,1
    - Dst: template get<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6074,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6075,1
    - Dst: template get<number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6080,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6081,1
    - Dst: template get<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6086,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6087,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6092,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6092,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6093,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6094,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6095,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6095,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6095,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6096,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6098,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6104,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6109
      start: 5999
    functionDepth: 1
    functionLinenumber: 5999
    functionLinenumberEnd: 6109
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - items
    - static_cast<std::size_t>
    - value
    - template get<number_integer_t>
    - hash
    - key
    - template get<number_float_t>
    - size
    - get_binary
    - template get_ref<const string_t&>
    - JSON_ASSERT
    - template get<bool>
    - template get<number_unsigned_t>
    - type
    - combine
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - seed
    - h
    argTypes:
    - std::size_t
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6008
      start: 6004
    functionDepth: 0
    functionLinenumber: 6004
    functionLinenumberEnd: 6008
    functionName: combine
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t combine(std::size_t seed, std::size_t h) noexcept
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6029,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6029,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6030,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6035,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6040,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6040,1
    - Dst: items
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6041,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6043,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6044,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6045,1
    - Dst: hash
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6045,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6045,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6052,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6052,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6055,1
    - Dst: hash
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6055,1
    - Dst: template get_ref<const string_t&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6062,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6063,1
    - Dst: template get<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6068,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6069,1
    - Dst: template get<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6074,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6075,1
    - Dst: template get<number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6080,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6081,1
    - Dst: template get<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6086,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6087,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6092,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6092,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6093,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6094,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6095,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6095,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6095,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6096,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6098,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6104,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 43
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6107
      start: 6022
    functionDepth: 1
    functionLinenumber: 6022
    functionLinenumberEnd: 6107
    functionName: hash
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - items
    - static_cast<std::size_t>
    - value
    - template get<number_integer_t>
    - hash
    - key
    - template get<number_float_t>
    - size
    - get_binary
    - template get_ref<const string_t&>
    - JSON_ASSERT
    - template get<bool>
    - template get<number_unsigned_t>
    - type
    - combine
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t hash(const BasicJsonType& j)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6196,1
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6204,1
    - Dst: std::fgetc
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6208,1
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6236,1
    - Dst: rdstate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6236,1
    - Dst: rdbuf
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6241,1
    - Dst: sbumpc
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6261,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6263,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6263,1
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6265,1
    - Dst: rdstate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6265,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6286,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6286,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6291,1
    - Dst: to_int_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6293,1
    - Dst: std::advance
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6294,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6298,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6328,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6328,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6330,1
    - Dst: get_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6336,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6341,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6346,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6346,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6347,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6347,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6352,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6352,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6353,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6353,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6354,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6354,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6359,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6359,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6360,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6360,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6361,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6361,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6362,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6362,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6368,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6386,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6386,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6388,1
    - Dst: get_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6394,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6399,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6404,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6404,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6405,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6405,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6410,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6410,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6411,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6411,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6412,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6412,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6417,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6417,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6419,1
    - Dst: get_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6419,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6420,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6421,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6422,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6423,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6424,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6429,1
    - Dst: fill_buffer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6452,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6454,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6455,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6459,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6460,1
    - Dst: fill_buffer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6470,1
    - Dst: adapter_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6491,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6491,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6491,1
    - Dst: adapter_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6515,1
    - Dst: base_adapter_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6515,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6515,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6515,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6524,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6542,1
    - Dst: std::declval<ContainerType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6542,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6542,1
    - Dst: std::declval<ContainerType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6542,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6544,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6544,1
    - Dst: std::declval<ContainerType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6544,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6544,1
    - Dst: std::declval<ContainerType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6544,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6557,1
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6564,1
    - Dst: input_stream_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6569,1
    - Dst: input_stream_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6574,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6578,1
    - Dst: std::declval<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6578,1
    - Dst: std::declval<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6578,1
    - Dst: std::strlen
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6590,1
    - Dst: reinterpret_cast<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6590,1
    - Dst: reinterpret_cast<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6591,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6592,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6596,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6598,1
    - Dst: reinterpret_cast<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6614,1
    - Dst: reinterpret_cast<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6614,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6621,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6625,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 131
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6632
      start: 6171
    functionDepth: 1
    functionLinenumber: 6171
    functionLinenumberEnd: 6632
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - input_stream_adapter
    - begin
    - std::declval<const char*>
    - file_input_adapter
    - sbumpc
    - empty
    - base_adapter_type
    - get_character
    - JSON_HEDLEY_UNLIKELY
    - BT::Blackboard::create
    - eof
    - std::declval<ContainerType>
    - JSON_ASSERT
    - to_int_type
    - clear
    - std::advance
    - static_cast<unsigned int>
    - std::strlen
    - std::fgetc
    - reinterpret_cast<const char*>
    - adapter_type
    - end
    - rdstate
    - std::move
    - JSON_HEDLEY_LIKELY
    - rdbuf
    - input_adapter
    - static_cast<std::char_traits<char>::int_type>
    - fill_buffer
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - std::FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6197
      start: 6193
    functionDepth: 1
    functionLinenumber: 6193
    functionLinenumberEnd: 6197
    functionName: file_input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - JSON_ASSERT
    linkageType: ''
    returnType: void
    signature: void file_input_adapter(std::FILE* f) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6200
      start: 6200
    functionDepth: 0
    functionLinenumber: 6200
    functionLinenumberEnd: 6200
    functionName: file_input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void file_input_adapter(const file_input_adapter&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6201
      start: 6201
    functionDepth: 0
    functionLinenumber: 6201
    functionLinenumberEnd: 6201
    functionName: file_input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void file_input_adapter(file_input_adapter&&) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fgetc
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6209
      start: 6206
    functionDepth: 0
    functionLinenumber: 6206
    functionLinenumberEnd: 6209
    functionName: get_character
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - std::fgetc
    linkageType: ''
    returnType: std::char_traits<char>::int_type
    signature: std::char_traits<char>::int_type get_character() noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6236,1
    - Dst: rdstate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6236,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6238
      start: 6230
    functionDepth: 1
    functionLinenumber: 6230
    functionLinenumberEnd: 6238
    functionName: ~input_stream_adapter()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - rdstate
    - clear
    linkageType: ''
    returnType: void
    signature: void ~input_stream_adapter()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rdbuf
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - std::istream
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6242
      start: 6240
    functionDepth: 0
    functionLinenumber: 6240
    functionLinenumberEnd: 6242
    functionName: input_stream_adapter::input_stream_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - rdbuf
    linkageType: ''
    returnType: void
    signature: void input_stream_adapter(std::istream& i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6245
      start: 6245
    functionDepth: 0
    functionLinenumber: 6245
    functionLinenumberEnd: 6245
    functionName: input_stream_adapter::input_stream_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void input_stream_adapter(const input_stream_adapter&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6246
      start: 6246
    functionDepth: 0
    functionLinenumber: 6246
    functionLinenumberEnd: 6246
    functionName: '& operator=(input_stream_adapter&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: input_stream_adapter
    signature: input_stream_adapter & operator=(input_stream_adapter&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6247
      start: 6247
    functionDepth: 0
    functionLinenumber: 6247
    functionLinenumberEnd: 6247
    functionName: '& operator=(input_stream_adapter&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: input_stream_adapter
    signature: input_stream_adapter & operator=(input_stream_adapter&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' rhs'
    argTypes:
    - input_stream_adapter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6254
      start: 6249
    functionDepth: 0
    functionLinenumber: 6249
    functionLinenumberEnd: 6254
    functionName: input_stream_adapter::input_stream_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void input_stream_adapter(input_stream_adapter&& rhs) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sbumpc
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6261,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6263,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6263,1
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6265,1
    - Dst: rdstate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6265,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6268
      start: 6259
    functionDepth: 1
    functionLinenumber: 6259
    functionLinenumberEnd: 6268
    functionName: input_stream_adapter::get_character
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - eof
    - sbumpc
    - clear
    - rdstate
    linkageType: ''
    returnType: std::char_traits<char>::int_type
    signature: std::char_traits<char>::int_type get_character()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6286,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6287
      start: 6285
    functionDepth: 0
    functionLinenumber: 6285
    functionLinenumberEnd: 6287
    functionName: iterator_input_adapter::iterator_input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void iterator_input_adapter(IteratorType first, IteratorType last)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6291,1
    - Dst: to_int_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6293,1
    - Dst: std::advance
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6294,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6299
      start: 6289
    functionDepth: 1
    functionLinenumber: 6289
    functionLinenumberEnd: 6299
    functionName: iterator_input_adapter::get_character
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - to_int_type
    - eof
    - std::advance
    - JSON_HEDLEY_LIKELY
    linkageType: ''
    returnType: typename char_traits<char_type>::int_type
    signature: typename char_traits<char_type>::int_type get_character()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6311
      start: 6308
    functionDepth: 0
    functionLinenumber: 6308
    functionLinenumberEnd: 6311
    functionName: iterator_input_adapter::empty
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool empty() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6328,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6328,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6330,1
    - Dst: get_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6336,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6341,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6346,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6346,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6347,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6347,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6352,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6352,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6353,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6353,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6354,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6354,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6359,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6359,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6360,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6360,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6361,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6361,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6362,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6362,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6368,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 32
    argCount: 4
    argNames:
    - ' input'
    - ' utf8_bytes'
    - ' utf8_bytes_index'
    - ' utf8_bytes_filled'
    argTypes:
    - BaseInputAdapter
    - std::array<std::char_traits<char>::int_type, 4>
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6372
      start: 6321
    functionDepth: 1
    functionLinenumber: 6321
    functionLinenumberEnd: 6372
    functionName: fill_buffer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - get_character
    - JSON_HEDLEY_UNLIKELY
    - eof
    - empty
    - static_cast<std::char_traits<char>::int_type>
    - static_cast<unsigned int>
    linkageType: ''
    returnType: void
    signature: "void fill_buffer(BaseInputAdapter& input,\n                            std::array<std::char_traits<char>::int_type,
      4>& utf8_bytes,\n                            size_t& utf8_bytes_index,\n                            size_t&
      utf8_bytes_filled)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6386,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6386,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6388,1
    - Dst: get_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6394,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6399,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6404,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6404,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6405,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6405,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6410,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6410,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6411,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6411,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6412,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6412,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6417,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6417,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6419,1
    - Dst: get_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6419,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6420,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6421,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6422,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6423,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6424,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6429,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 4
    argNames:
    - ' input'
    - ' utf8_bytes'
    - ' utf8_bytes_index'
    - ' utf8_bytes_filled'
    argTypes:
    - BaseInputAdapter
    - std::array<std::char_traits<char>::int_type, 4>
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6434
      start: 6379
    functionDepth: 1
    functionLinenumber: 6379
    functionLinenumberEnd: 6434
    functionName: fill_buffer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - get_character
    - JSON_HEDLEY_UNLIKELY
    - eof
    - empty
    - static_cast<std::char_traits<char>::int_type>
    - static_cast<unsigned int>
    linkageType: ''
    returnType: void
    signature: "void fill_buffer(BaseInputAdapter& input,\n                            std::array<std::char_traits<char>::int_type,
      4>& utf8_bytes,\n                            size_t& utf8_bytes_index,\n                            size_t&
      utf8_bytes_filled)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - base
    argTypes:
    - BaseInputAdapter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6445
      start: 6444
    functionDepth: 0
    functionLinenumber: 6444
    functionLinenumberEnd: 6445
    functionName: wide_string_input_adapter::wide_string_input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void wide_string_input_adapter(BaseInputAdapter base)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: wide_string_input_adapter::fill_buffer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6452,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6454,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6455,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6459,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6460,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6462
      start: 6447
    functionDepth: 1
    functionLinenumber: 6447
    functionLinenumberEnd: 6462
    functionName: wide_string_input_adapter::get_character
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_ASSERT
    - wide_string_input_adapter::fill_buffer
    linkageType: ''
    returnType: typename std::char_traits<char>::int_type
    signature: typename std::char_traits<char>::int_type get_character() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: wide_string_input_adapter::fill_buffer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6470,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6471
      start: 6468
    functionDepth: 1
    functionLinenumber: 6468
    functionLinenumberEnd: 6471
    functionName: wide_string_input_adapter::fill_buffer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - wide_string_input_adapter::fill_buffer
    linkageType: ''
    returnType: void
    signature: void fill_buffer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: adapter_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6491,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6491,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6491,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6492
      start: 6489
    functionDepth: 0
    functionLinenumber: 6489
    functionLinenumberEnd: 6492
    functionName: create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 85
    functionsReached:
    - adapter_type
    - std::move
    linkageType: ''
    returnType: adapter_type
    signature: adapter_type create(IteratorType first, IteratorType last)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: adapter_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6515,1
    - Dst: base_adapter_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6515,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6515,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6515,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6516
      start: 6513
    functionDepth: 0
    functionLinenumber: 6513
    functionLinenumberEnd: 6516
    functionName: create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 85
    functionsReached:
    - base_adapter_type
    - adapter_type
    - std::move
    linkageType: ''
    returnType: adapter_type
    signature: adapter_type create(IteratorType first, IteratorType last)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6524,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6525
      start: 6521
    functionDepth: 0
    functionLinenumber: 6521
    functionLinenumberEnd: 6525
    functionName: input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - BT::Blackboard::create
    linkageType: ''
    returnType: typename iterator_input_adapter_factory<IteratorType>::adapter_type
    signature: typename iterator_input_adapter_factory<IteratorType>::adapter_type
      input_adapter(IteratorType first, IteratorType last)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' container'
    argTypes:
    - ContainerType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6549
      start: 6546
    functionDepth: 1
    functionLinenumber: 6546
    functionLinenumberEnd: 6549
    functionName: container_input_adapter_factory_impl::create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - input_adapter
    linkageType: ''
    returnType: adapter_type
    signature: adapter_type create(const ContainerType& container)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' container'
    argTypes:
    - ContainerType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6549
      start: 6546
    functionDepth: 1
    functionLinenumber: 6546
    functionLinenumberEnd: 6549
    functionName: container_input_adapter_factory_impl::create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - input_adapter
    linkageType: ''
    returnType: adapter_type
    signature: adapter_type create(const ContainerType& container)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6557,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' container'
    argTypes:
    - ContainerType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6558
      start: 6555
    functionDepth: 0
    functionLinenumber: 6555
    functionLinenumberEnd: 6558
    functionName: input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - BT::Blackboard::create
    linkageType: ''
    returnType: typename container_input_adapter_factory_impl::container_input_adapter_factory<ContainerType>::adapter_type
    signature: typename container_input_adapter_factory_impl::container_input_adapter_factory<ContainerType>::adapter_type
      input_adapter(const ContainerType& container)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6564,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - file
    argTypes:
    - std::FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6565
      start: 6562
    functionDepth: 2
    functionLinenumber: 6562
    functionLinenumberEnd: 6565
    functionName: input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - file_input_adapter
    linkageType: ''
    returnType: file_input_adapter
    signature: file_input_adapter input_adapter(std::FILE* file)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: input_stream_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6569,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' stream'
    argTypes:
    - std::istream
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6570
      start: 6567
    functionDepth: 0
    functionLinenumber: 6567
    functionLinenumberEnd: 6570
    functionName: input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - input_stream_adapter
    linkageType: ''
    returnType: input_stream_adapter
    signature: input_stream_adapter input_adapter(std::istream& stream)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: input_stream_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6574,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' stream'
    argTypes:
    - std::istream
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6575
      start: 6572
    functionDepth: 0
    functionLinenumber: 6572
    functionLinenumberEnd: 6575
    functionName: input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - input_stream_adapter
    linkageType: ''
    returnType: input_stream_adapter
    signature: input_stream_adapter input_adapter(std::istream&& stream)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::strlen
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6590,1
    - Dst: reinterpret_cast<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6590,1
    - Dst: reinterpret_cast<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6591,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6592,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - b
    argTypes:
    - CharT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6593
      start: 6588
    functionDepth: 1
    functionLinenumber: 6588
    functionLinenumberEnd: 6593
    functionName: input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 5
    functionsReached:
    - input_adapter
    - std::strlen
    - reinterpret_cast<const char*>
    linkageType: ''
    returnType: contiguous_bytes_input_adapter
    signature: contiguous_bytes_input_adapter input_adapter(CharT b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6596,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - (array)
    argTypes:
    - T[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6599
      start: 6596
    functionDepth: 1
    functionLinenumber: 6596
    functionLinenumberEnd: 6599
    functionName: input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 6
    functionsReached:
    - input_adapter
    linkageType: ''
    returnType: auto
    signature: auto input_adapter(T (&array)[N]) -> decltype(input_adapter(array,
      array + N))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6614,1
    - Dst: reinterpret_cast<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6614,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - b
    - l
    argTypes:
    - CharT
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6614
      start: 6613
    functionDepth: 0
    functionLinenumber: 6613
    functionLinenumberEnd: 6614
    functionName: span_input_adapter::span_input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - reinterpret_cast<const char*>
    linkageType: ''
    returnType: void
    signature: void span_input_adapter(CharT b, std::size_t l)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6621,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6621
      start: 6620
    functionDepth: 1
    functionLinenumber: 6620
    functionLinenumberEnd: 6621
    functionName: span_input_adapter::span_input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - input_adapter
    linkageType: ''
    returnType: void
    signature: void span_input_adapter(IteratorType first, IteratorType last)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6625,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6626
      start: 6623
    functionDepth: 0
    functionLinenumber: 6623
    functionLinenumberEnd: 6626
    functionName: '&& get()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: contiguous_bytes_input_adapter
    signature: contiguous_bytes_input_adapter && get()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6815
      start: 6813
    functionDepth: 0
    functionLinenumber: 6813
    functionLinenumberEnd: 6815
    functionName: json_sax_dom_parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_sax_dom_parser(BasicJsonType& r, const bool allow_exceptions_
      = true)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6818
      start: 6818
    functionDepth: 0
    functionLinenumber: 6818
    functionLinenumberEnd: 6818
    functionName: json_sax_dom_parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_sax_dom_parser(const json_sax_dom_parser&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6819
      start: 6819
    functionDepth: 0
    functionLinenumber: 6819
    functionLinenumberEnd: 6819
    functionName: json_sax_dom_parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_sax_dom_parser(json_sax_dom_parser&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6822
      start: 6822
    functionDepth: 0
    functionLinenumber: 6822
    functionLinenumberEnd: 6822
    functionName: ~json_sax_dom_parser()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~json_sax_dom_parser()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6826,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6828
      start: 6824
    functionDepth: 0
    functionLinenumber: 6824
    functionLinenumberEnd: 6828
    functionName: 'null'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - handle_value
    linkageType: ''
    returnType: bool
    signature: bool null()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6832,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6834
      start: 6830
    functionDepth: 0
    functionLinenumber: 6830
    functionLinenumberEnd: 6834
    functionName: boolean
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - handle_value
    linkageType: ''
    returnType: bool
    signature: bool boolean(bool val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6838,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - number_integer_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6840
      start: 6836
    functionDepth: 0
    functionLinenumber: 6836
    functionLinenumberEnd: 6840
    functionName: number_integer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - handle_value
    linkageType: ''
    returnType: bool
    signature: bool number_integer(number_integer_t val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6844,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - number_unsigned_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6846
      start: 6842
    functionDepth: 0
    functionLinenumber: 6842
    functionLinenumberEnd: 6846
    functionName: number_unsigned
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - handle_value
    linkageType: ''
    returnType: bool
    signature: bool number_unsigned(number_unsigned_t val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6850,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - number_float_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6852
      start: 6848
    functionDepth: 0
    functionLinenumber: 6848
    functionLinenumberEnd: 6852
    functionName: number_float
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - handle_value
    linkageType: ''
    returnType: bool
    signature: bool number_float(number_float_t val, const string_t& /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6856,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6858
      start: 6854
    functionDepth: 0
    functionLinenumber: 6854
    functionLinenumberEnd: 6858
    functionName: string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 162
    functionsReached:
    - handle_value
    linkageType: ''
    returnType: bool
    signature: bool string(string_t& val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6862,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6862,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6864
      start: 6860
    functionDepth: 0
    functionLinenumber: 6860
    functionLinenumberEnd: 6864
    functionName: binary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - std::move
    - handle_value
    linkageType: ''
    returnType: bool
    signature: bool binary(binary_t& val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6868,1
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6868,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6870,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6870,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6870,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6872,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6872,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6872,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6872,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6872,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - len
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6876
      start: 6866
    functionDepth: 4
    functionLinenumber: 6866
    functionLinenumberEnd: 6876
    functionName: start_object
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - handle_value
    - out_of_range::create
    - concat
    - push_back
    - to_string
    - back
    - JSON_THROW
    - static_cast<std::size_t>
    linkageType: ''
    returnType: bool
    signature: bool start_object(std::size_t len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6880,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6880,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6881,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6881,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6884,1
    - Dst: m_value::object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6884,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6886
      start: 6878
    functionDepth: 1
    functionLinenumber: 6878
    functionLinenumberEnd: 6886
    functionName: key
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 9
    functionsReached:
    - JSON_ASSERT
    - empty
    - back
    - m_value::object
    linkageType: ''
    returnType: bool
    signature: bool key(string_t& val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6890,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6890,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6891,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6891,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6893,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6894,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6896
      start: 6888
    functionDepth: 1
    functionLinenumber: 6888
    functionLinenumberEnd: 6896
    functionName: end_object
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_ASSERT
    - empty
    - back
    - pop_back
    linkageType: ''
    returnType: bool
    signature: bool end_object()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6900,1
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6900,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6902,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6902,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6902,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6904,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6904,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6904,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6904,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6904,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - len
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6908
      start: 6898
    functionDepth: 4
    functionLinenumber: 6898
    functionLinenumberEnd: 6908
    functionName: start_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - handle_value
    - out_of_range::create
    - concat
    - push_back
    - to_string
    - back
    - JSON_THROW
    - static_cast<std::size_t>
    linkageType: ''
    returnType: bool
    signature: bool start_array(std::size_t len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6912,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6912,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6913,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6913,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6915,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6916,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6918
      start: 6910
    functionDepth: 1
    functionLinenumber: 6910
    functionLinenumberEnd: 6918
    functionName: end_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_ASSERT
    - empty
    - back
    - pop_back
    linkageType: ''
    returnType: bool
    signature: bool end_array()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6925,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6928,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' ex'
    argTypes:
    - Exception
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6931
      start: 6921
    functionDepth: 1
    functionLinenumber: 6921
    functionLinenumberEnd: 6931
    functionName: parse_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<void>
    - JSON_THROW
    linkageType: ''
    returnType: bool
    signature: "bool parse_error(std::size_t /*unused*/, const std::string& /*unused*/,\n
      \                    const Exception& ex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6936
      start: 6933
    functionDepth: 0
    functionLinenumber: 6933
    functionLinenumberEnd: 6936
    functionName: is_errored
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_errored() const
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5183,1
    - Dst: std::declval<IteratorType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5193,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5212,1
    - Dst: iteration_proxy_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5244,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5265,1
    - Dst: m_object::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5267,1
    - Dst: int_to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5274,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5282,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5301,1
    - Dst: iteration_proxy_value<IteratorType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5328,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5328,1
    - Dst: iteration_proxy_value<IteratorType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5334,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5334,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5342,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5344,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5350,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5352,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 52
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5355
      start: 5174
    functionDepth: 2
    functionLinenumber: 5174
    functionLinenumberEnd: 5355
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - value
    - begin
    - std::move
    - iteration_proxy_value
    - std::declval<IteratorType>
    - m_object::type
    - key
    - to_string
    - int_to_string
    - end
    - JSON_ASSERT
    - iteration_proxy_value<IteratorType>
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5183,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' target'
    - value
    argTypes:
    - string_type
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5184
      start: 5179
    functionDepth: 1
    functionLinenumber: 5179
    functionLinenumberEnd: 5184
    functionName: int_to_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - to_string
    linkageType: ''
    returnType: void
    signature: void int_to_string( string_type& target, std::size_t value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5208
      start: 5208
    functionDepth: 0
    functionLinenumber: 5208
    functionLinenumberEnd: 5208
    functionName: iteration_proxy_value::iteration_proxy_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iteration_proxy_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5212,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - it
    argTypes:
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5214
      start: 5209
    functionDepth: 0
    functionLinenumber: 5209
    functionLinenumberEnd: 5214
    functionName: iteration_proxy_value::iteration_proxy_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: "void iteration_proxy_value(IteratorType it, std::size_t array_index_
      = 0)\n    noexcept(std::is_nothrow_move_constructible<IteratorType>::value\n
      \            && std::is_nothrow_default_constructible<string_type>::value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5216
      start: 5216
    functionDepth: 0
    functionLinenumber: 5216
    functionLinenumberEnd: 5216
    functionName: iteration_proxy_value::iteration_proxy_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iteration_proxy_value(iteration_proxy_value const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5217
      start: 5217
    functionDepth: 0
    functionLinenumber: 5217
    functionLinenumberEnd: 5217
    functionName: '& operator=(iteration_proxy_value const&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iteration_proxy_value
    signature: iteration_proxy_value & operator=(iteration_proxy_value const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5221
      start: 5219
    functionDepth: 0
    functionLinenumber: 5219
    functionLinenumberEnd: 5221
    functionName: iteration_proxy_value::iteration_proxy_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void iteration_proxy_value(iteration_proxy_value&&)\n    noexcept(std::is_nothrow_move_constructible<IteratorType>::value\n
      \            && std::is_nothrow_move_constructible<string_type>::value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5224
      start: 5222
    functionDepth: 0
    functionLinenumber: 5222
    functionLinenumberEnd: 5224
    functionName: "& operator=(iteration_proxy_value&&)\n    noexcept(std::is_nothrow_move_assignable<IteratorType>::value\n
      \            && std::is_nothrow_move_assignable<string_type>::value)"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iteration_proxy_value
    signature: "iteration_proxy_value & operator=(iteration_proxy_value&&)\n    noexcept(std::is_nothrow_move_assignable<IteratorType>::value\n
      \            && std::is_nothrow_move_assignable<string_type>::value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5225
      start: 5225
    functionDepth: 0
    functionLinenumber: 5225
    functionLinenumberEnd: 5225
    functionName: ~iteration_proxy_value()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~iteration_proxy_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5231
      start: 5228
    functionDepth: 0
    functionLinenumber: 5228
    functionLinenumberEnd: 5231
    functionName: '& operator*() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iteration_proxy_value
    signature: iteration_proxy_value & operator*() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5240
      start: 5234
    functionDepth: 0
    functionLinenumber: 5234
    functionLinenumberEnd: 5240
    functionName: '& operator++()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iteration_proxy_value
    signature: iteration_proxy_value & operator++()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: iteration_proxy_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5244,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5248
      start: 5242
    functionDepth: 0
    functionLinenumber: 5242
    functionLinenumberEnd: 5248
    functionName: operator++(int)&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - iteration_proxy_value
    linkageType: ''
    returnType: iteration_proxy_value
    signature: iteration_proxy_value operator++(int)&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - iteration_proxy_value
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5254
      start: 5251
    functionDepth: 0
    functionLinenumber: 5251
    functionLinenumberEnd: 5254
    functionName: operator==(const iteration_proxy_value& o) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const iteration_proxy_value& o) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - iteration_proxy_value
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5260
      start: 5257
    functionDepth: 0
    functionLinenumber: 5257
    functionLinenumberEnd: 5260
    functionName: operator!=(const iteration_proxy_value& o) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const iteration_proxy_value& o) const
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5265,1
    - Dst: m_object::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5267,1
    - Dst: int_to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5274,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5282,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5296
      start: 5263
    functionDepth: 2
    functionLinenumber: 5263
    functionLinenumberEnd: 5296
    functionName: '& key() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - key
    - JSON_ASSERT
    - int_to_string
    - m_object::type
    linkageType: ''
    returnType: string_type
    signature: string_type & key() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: iteration_proxy_value::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5302
      start: 5299
    functionDepth: 1
    functionLinenumber: 5299
    functionLinenumberEnd: 5302
    functionName: iteration_proxy_value::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - iteration_proxy_value::value
    linkageType: ''
    returnType: typename IteratorType::reference
    signature: typename IteratorType::reference value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5313
      start: 5313
    functionDepth: 0
    functionLinenumber: 5313
    functionLinenumberEnd: 5313
    functionName: iteration_proxy::iteration_proxy
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iteration_proxy()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - cont
    argTypes:
    - typename IteratorType::reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5317
      start: 5316
    functionDepth: 0
    functionLinenumber: 5316
    functionLinenumberEnd: 5317
    functionName: iteration_proxy::iteration_proxy
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iteration_proxy(typename IteratorType::reference cont) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5319
      start: 5319
    functionDepth: 0
    functionLinenumber: 5319
    functionLinenumberEnd: 5319
    functionName: iteration_proxy::iteration_proxy
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iteration_proxy(iteration_proxy const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5320
      start: 5320
    functionDepth: 0
    functionLinenumber: 5320
    functionLinenumberEnd: 5320
    functionName: '& operator=(iteration_proxy const&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iteration_proxy
    signature: iteration_proxy & operator=(iteration_proxy const&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5321
      start: 5321
    functionDepth: 0
    functionLinenumber: 5321
    functionLinenumberEnd: 5321
    functionName: iteration_proxy::iteration_proxy
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iteration_proxy(iteration_proxy&&) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5322
      start: 5322
    functionDepth: 0
    functionLinenumber: 5322
    functionLinenumberEnd: 5322
    functionName: '& operator=(iteration_proxy&&) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iteration_proxy
    signature: iteration_proxy & operator=(iteration_proxy&&) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5323
      start: 5323
    functionDepth: 0
    functionLinenumber: 5323
    functionLinenumberEnd: 5323
    functionName: ~iteration_proxy()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~iteration_proxy()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: iteration_proxy_value<IteratorType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5328,1
    - Dst: iteration_proxy::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5329
      start: 5326
    functionDepth: 1
    functionLinenumber: 5326
    functionLinenumberEnd: 5329
    functionName: iteration_proxy::begin
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - iteration_proxy::begin
    - iteration_proxy_value<IteratorType>
    linkageType: ''
    returnType: iteration_proxy_value<IteratorType>
    signature: iteration_proxy_value<IteratorType> begin() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: iteration_proxy_value<IteratorType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5334,1
    - Dst: iteration_proxy::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5334,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5335
      start: 5332
    functionDepth: 1
    functionLinenumber: 5332
    functionLinenumberEnd: 5335
    functionName: iteration_proxy::end
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - iteration_proxy::end
    - iteration_proxy_value<IteratorType>
    linkageType: ''
    returnType: iteration_proxy_value<IteratorType>
    signature: iteration_proxy_value<IteratorType> end() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5342,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - nlohmann::detail::iteration_proxy_value<IteratorType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5345
      start: 5342
    functionDepth: 2
    functionLinenumber: 5342
    functionLinenumberEnd: 5345
    functionName: get
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 102
    functionsReached:
    - key
    linkageType: ''
    returnType: auto
    signature: auto get(const nlohmann::detail::iteration_proxy_value<IteratorType>&
      i) -> decltype(i.key())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5350,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5352,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - nlohmann::detail::iteration_proxy_value<IteratorType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5353
      start: 5350
    functionDepth: 1
    functionLinenumber: 5350
    functionLinenumberEnd: 5353
    functionName: get
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 102
    functionsReached:
    - value
    linkageType: ''
    returnType: auto
    signature: auto get(const nlohmann::detail::iteration_proxy_value<IteratorType>&
      i) -> decltype(i.value())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5379,1
    - Dst: "std::declval <\n                            ::nlohmann::detail::iteration_proxy_value<IteratorType
        >>"
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5379,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5386
      start: 5356
    functionDepth: 0
    functionLinenumber: 5356
    functionLinenumberEnd: 5386
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get
    - "std::declval <\n                            ::nlohmann::detail::iteration_proxy_value<IteratorType
      >>"
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_END
    signature: NLOHMANN_JSON_NAMESPACE_END namespace
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5427,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5430,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5440,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5443,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5449,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5451,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5452,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5460,1
    - Dst: template create<typename BasicJsonType::string_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5462,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5463,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5473,1
    - Dst: BasicJsonType::binary_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5475,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5476,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5482,1
    - Dst: BasicJsonType::binary_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5484,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5484,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5485,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5495,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5498,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5508,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5511,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5521,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5524,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5534,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5537,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5538,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5544,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5546,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5547,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5548,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5559,1
    - Dst: template create<typename BasicJsonType::array_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5561,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5561,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5561,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5562,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5563,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5569,1
    - Dst: m_data::m_value::array::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5572,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5572,1
    - Dst: m_data::m_value::array::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5575,1
    - Dst: set_parent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5576,1
    - Dst: m_data::m_value::array::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5576,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5578,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5585,1
    - Dst: m_data::m_value::array::resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5588,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5588,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5589,1
    - Dst: std::copy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5591,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5591,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5591,1
    - Dst: m_data::m_value::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5591,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5593,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5594,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5604,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5607,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5608,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5614,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5616,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5617,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5618,1
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5628,1
    - Dst: template create<typename BasicJsonType::object_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5630,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5630,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5630,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5631,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5632,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5644,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5657,1
    - Dst: static_cast<typename BasicJsonType::boolean_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5657,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5664,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5670,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5670,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5677,1
    - Dst: static_cast<typename BasicJsonType::number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5677,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5684,1
    - Dst: static_cast<typename BasicJsonType::number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5684,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5691,1
    - Dst: static_cast<typename BasicJsonType::number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5691,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5700,1
    - Dst: static_cast<underlying_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5700,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5707,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5720,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5726,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5733,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5733,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5739,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5739,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5746,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5752,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5752,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5762,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5776,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5776,1
    - Dst: std::get<Idx>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5782,1
    - Dst: to_json_tuple_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5788,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5795,1
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5802,1
    - Dst: to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5802,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5802,1
    - Dst: to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5803,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5803,1
    - Dst: to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5805,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5805,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 145
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5808
      start: 5404
    functionDepth: 3
    functionLinenumber: 5404
    functionLinenumberEnd: 5808
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - m_data::m_value::array::reserve
    - template create<typename BasicJsonType::string_t>
    - begin
    - set_parent
    - m_data::m_value::array::back
    - size
    - construct
    - value
    - to_json_tuple_impl
    - string
    - m_data::m_value::array::begin
    - template create<typename BasicJsonType::object_t>
    - static_cast<typename BasicJsonType::number_unsigned_t>
    - std::get<Idx>
    - m_data::m_value::array::resize
    - m_data::m_value::array::push_back
    - to_json
    - BasicJsonType::binary_t
    - end
    - static_cast<typename BasicJsonType::number_float_t>
    - std::copy
    - set_parents
    - static_cast<typename BasicJsonType::boolean_t>
    - noexcept
    - static_cast<typename BasicJsonType::number_integer_t>
    - std::move
    - key
    - m_data::m_value::destroy
    - static_cast<underlying_type>
    - assert_invariant
    - std::forward<T>
    - template create<typename BasicJsonType::array_t>
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5427,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - b
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::boolean_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5431
      start: 5425
    functionDepth: 1
    functionLinenumber: 5425
    functionLinenumberEnd: 5431
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - m_data::m_value::destroy
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, typename BasicJsonType::boolean_t
      b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5440,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' s'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5444
      start: 5438
    functionDepth: 1
    functionLinenumber: 5438
    functionLinenumberEnd: 5444
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - m_data::m_value::destroy
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const typename BasicJsonType::string_t&
      s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5449,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5451,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5452,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' s'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5453
      start: 5447
    functionDepth: 1
    functionLinenumber: 5447
    functionLinenumberEnd: 5453
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - m_data::m_value::destroy
    - std::move
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, typename BasicJsonType::string_t&&
      s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5460,1
    - Dst: template create<typename BasicJsonType::string_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5462,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5463,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' str'
    argTypes:
    - BasicJsonType
    - CompatibleStringType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5464
      start: 5458
    functionDepth: 1
    functionLinenumber: 5458
    functionLinenumberEnd: 5464
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - template create<typename BasicJsonType::string_t>
    - m_data::m_value::destroy
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const CompatibleStringType& str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5473,1
    - Dst: BasicJsonType::binary_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5475,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5476,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' b'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5477
      start: 5471
    functionDepth: 1
    functionLinenumber: 5471
    functionLinenumberEnd: 5477
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - assert_invariant
    - m_data::m_value::destroy
    - BasicJsonType::binary_t
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const typename BasicJsonType::binary_t&
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5482,1
    - Dst: BasicJsonType::binary_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5484,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5484,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5485,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - ' b'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5486
      start: 5480
    functionDepth: 1
    functionLinenumber: 5480
    functionLinenumberEnd: 5486
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - assert_invariant
    - m_data::m_value::destroy
    - std::move
    - BasicJsonType::binary_t
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, typename BasicJsonType::binary_t&&
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5495,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5498,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - val
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::number_float_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5499
      start: 5493
    functionDepth: 1
    functionLinenumber: 5493
    functionLinenumberEnd: 5499
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - m_data::m_value::destroy
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, typename BasicJsonType::number_float_t
      val) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5508,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5511,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - val
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::number_unsigned_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5512
      start: 5506
    functionDepth: 1
    functionLinenumber: 5506
    functionLinenumberEnd: 5512
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - m_data::m_value::destroy
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, typename BasicJsonType::number_unsigned_t
      val) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5521,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5524,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' j'
    - val
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::number_integer_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5525
      start: 5519
    functionDepth: 1
    functionLinenumber: 5519
    functionLinenumberEnd: 5525
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - m_data::m_value::destroy
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, typename BasicJsonType::number_integer_t
      val) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5534,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5537,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5538,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::array_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5539
      start: 5532
    functionDepth: 1
    functionLinenumber: 5532
    functionLinenumberEnd: 5539
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - set_parents
    - m_data::m_value::destroy
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const typename BasicJsonType::array_t&
      arr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5544,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5546,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5547,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::array_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5549
      start: 5542
    functionDepth: 1
    functionLinenumber: 5542
    functionLinenumberEnd: 5549
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - set_parents
    - m_data::m_value::destroy
    - std::move
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, typename BasicJsonType::array_t&&
      arr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5559,1
    - Dst: template create<typename BasicJsonType::array_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5561,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5561,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5561,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5562,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5563,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - CompatibleArrayType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5564
      start: 5554
    functionDepth: 1
    functionLinenumber: 5554
    functionLinenumberEnd: 5564
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - begin
    - m_data::m_value::destroy
    - assert_invariant
    - end
    - template create<typename BasicJsonType::array_t>
    - set_parents
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const CompatibleArrayType& arr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5569,1
    - Dst: m_data::m_value::array::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5572,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5572,1
    - Dst: m_data::m_value::array::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5575,1
    - Dst: set_parent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5576,1
    - Dst: m_data::m_value::array::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5576,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5578,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - std::vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5579
      start: 5567
    functionDepth: 1
    functionLinenumber: 5567
    functionLinenumberEnd: 5579
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - m_data::m_value::array::reserve
    - set_parent
    - m_data::m_value::destroy
    - m_data::m_value::array::push_back
    - m_data::m_value::array::back
    - size
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const std::vector<bool>& arr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5585,1
    - Dst: m_data::m_value::array::resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5588,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5588,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5589,1
    - Dst: std::copy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5591,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5591,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5591,1
    - Dst: m_data::m_value::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5591,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5593,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5594,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - std::valarray<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5595
      start: 5583
    functionDepth: 1
    functionLinenumber: 5583
    functionLinenumberEnd: 5595
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - begin
    - m_data::m_value::destroy
    - m_data::m_value::array::resize
    - size
    - assert_invariant
    - set_parents
    - end
    - m_data::m_value::array::begin
    - std::copy
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const std::valarray<T>& arr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5604,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5607,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5608,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' j'
    - ' obj'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::object_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5609
      start: 5602
    functionDepth: 1
    functionLinenumber: 5602
    functionLinenumberEnd: 5609
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - set_parents
    - m_data::m_value::destroy
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const typename BasicJsonType::object_t&
      obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5614,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5616,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5617,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5618,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' j'
    - ' obj'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::object_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5619
      start: 5612
    functionDepth: 1
    functionLinenumber: 5612
    functionLinenumberEnd: 5619
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - set_parents
    - m_data::m_value::destroy
    - std::move
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, typename BasicJsonType::object_t&&
      obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5628,1
    - Dst: template create<typename BasicJsonType::object_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5630,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5630,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5630,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5631,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5632,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 2
    argNames:
    - ' j'
    - ' obj'
    argTypes:
    - BasicJsonType
    - CompatibleObjectType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5633
      start: 5623
    functionDepth: 1
    functionLinenumber: 5623
    functionLinenumberEnd: 5633
    functionName: construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - begin
    - m_data::m_value::destroy
    - assert_invariant
    - end
    - set_parents
    - template create<typename BasicJsonType::object_t>
    linkageType: ''
    returnType: void
    signature: void construct(BasicJsonType& j, const CompatibleObjectType& obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5644,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - b
    argTypes:
    - BasicJsonType
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5645
      start: 5642
    functionDepth: 2
    functionLinenumber: 5642
    functionLinenumberEnd: 5645
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, T b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5657,1
    - Dst: static_cast<typename BasicJsonType::boolean_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5657,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' b'
    argTypes:
    - BasicJsonType
    - BoolRef
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5658
      start: 5655
    functionDepth: 2
    functionLinenumber: 5655
    functionLinenumberEnd: 5658
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - static_cast<typename BasicJsonType::boolean_t>
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const BoolRef& b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' s'
    argTypes:
    - BasicJsonType
    - CompatibleString
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5665
      start: 5662
    functionDepth: 2
    functionLinenumber: 5662
    functionLinenumberEnd: 5665
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const CompatibleString& s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5670,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5670,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' s'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5671
      start: 5668
    functionDepth: 2
    functionLinenumber: 5668
    functionLinenumberEnd: 5671
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - std::move
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, typename BasicJsonType::string_t&& s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5677,1
    - Dst: static_cast<typename BasicJsonType::number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5677,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - val
    argTypes:
    - BasicJsonType
    - FloatType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5678
      start: 5675
    functionDepth: 2
    functionLinenumber: 5675
    functionLinenumberEnd: 5678
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - static_cast<typename BasicJsonType::number_float_t>
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, FloatType val) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5684,1
    - Dst: static_cast<typename BasicJsonType::number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5684,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - val
    argTypes:
    - BasicJsonType
    - CompatibleNumberUnsignedType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5685
      start: 5682
    functionDepth: 2
    functionLinenumber: 5682
    functionLinenumberEnd: 5685
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - static_cast<typename BasicJsonType::number_unsigned_t>
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, CompatibleNumberUnsignedType val) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5691,1
    - Dst: static_cast<typename BasicJsonType::number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5691,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - val
    argTypes:
    - BasicJsonType
    - CompatibleNumberIntegerType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5692
      start: 5689
    functionDepth: 2
    functionLinenumber: 5689
    functionLinenumberEnd: 5692
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - static_cast<typename BasicJsonType::number_integer_t>
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, CompatibleNumberIntegerType val) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5700,1
    - Dst: static_cast<underlying_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5700,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - e
    argTypes:
    - BasicJsonType
    - EnumType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5701
      start: 5697
    functionDepth: 2
    functionLinenumber: 5697
    functionLinenumberEnd: 5701
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - static_cast<underlying_type>
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, EnumType e) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5707,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' e'
    argTypes:
    - BasicJsonType
    - std::vector<bool>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5708
      start: 5705
    functionDepth: 2
    functionLinenumber: 5705
    functionLinenumberEnd: 5708
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const std::vector<bool>& e)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5720,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - CompatibleArrayType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5721
      start: 5718
    functionDepth: 2
    functionLinenumber: 5718
    functionLinenumberEnd: 5721
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const CompatibleArrayType& arr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5726,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' bin'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5727
      start: 5724
    functionDepth: 2
    functionLinenumber: 5724
    functionLinenumberEnd: 5727
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const typename BasicJsonType::binary_t&
      bin)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5733,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5733,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - std::valarray<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5734
      start: 5731
    functionDepth: 2
    functionLinenumber: 5731
    functionLinenumberEnd: 5734
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - std::move
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const std::valarray<T>& arr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5739,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5739,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' arr'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::array_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5740
      start: 5737
    functionDepth: 2
    functionLinenumber: 5737
    functionLinenumberEnd: 5740
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - std::move
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, typename BasicJsonType::array_t&& arr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5746,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' obj'
    argTypes:
    - BasicJsonType
    - CompatibleObjectType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5747
      start: 5744
    functionDepth: 2
    functionLinenumber: 5744
    functionLinenumberEnd: 5747
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const CompatibleObjectType& obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5752,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5752,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' obj'
    argTypes:
    - BasicJsonType
    - typename BasicJsonType::object_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5753
      start: 5750
    functionDepth: 2
    functionLinenumber: 5750
    functionLinenumberEnd: 5753
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - std::move
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, typename BasicJsonType::object_t&& obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5762,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - (arr)
    argTypes:
    - BasicJsonType
    - T[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5763
      start: 5760
    functionDepth: 2
    functionLinenumber: 5760
    functionLinenumberEnd: 5763
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - construct
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const T(&arr)[N])
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' p'
    argTypes:
    - BasicJsonType
    - std::pair<T1, T2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5769
      start: 5766
    functionDepth: 0
    functionLinenumber: 5766
    functionLinenumberEnd: 5769
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const std::pair<T1, T2>& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5776,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5776,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' b'
    argTypes:
    - BasicJsonType
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5777
      start: 5774
    functionDepth: 2
    functionLinenumber: 5774
    functionLinenumberEnd: 5777
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - key
    - value
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const T& b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::get<Idx>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5782,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' t'
    argTypes:
    - BasicJsonType
    - Tuple
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5783
      start: 5780
    functionDepth: 0
    functionLinenumber: 5780
    functionLinenumberEnd: 5783
    functionName: to_json_tuple_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - std::get<Idx>
    linkageType: ''
    returnType: void
    signature: void to_json_tuple_impl(BasicJsonType& j, const Tuple& t, index_sequence<Idx...>
      /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: to_json_tuple_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5788,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' t'
    argTypes:
    - BasicJsonType
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5789
      start: 5786
    functionDepth: 1
    functionLinenumber: 5786
    functionLinenumberEnd: 5789
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - to_json_tuple_impl
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const T& t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5795,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' p'
    argTypes:
    - BasicJsonType
    - std_fs::path
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5796
      start: 5793
    functionDepth: 1
    functionLinenumber: 5793
    functionLinenumberEnd: 5796
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - string
    linkageType: ''
    returnType: void
    signature: void to_json(BasicJsonType& j, const std_fs::path& p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5802,1
    - Dst: to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5802,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5802,1
    - Dst: to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5803,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5803,1
    - Dst: to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5805,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5805,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' val'
    argTypes:
    - BasicJsonType
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5806
      start: 5802
    functionDepth: 3
    functionLinenumber: 5802
    functionLinenumberEnd: 5806
    functionName: "operator()(BasicJsonType& j, T&& val) const noexcept(noexcept(to_json(j,
      std::forward<T>(val))))\n    -> decltype(to_json(j, std::forward<T>(val)), void())"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::forward<T>
    - to_json
    linkageType: ''
    returnType: auto
    signature: "auto operator()(BasicJsonType& j, T&& val) const noexcept(noexcept(to_json(j,
      std::forward<T>(val))))\n    -> decltype(to_json(j, std::forward<T>(val)), void())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5838,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5838,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5838,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5839,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5839,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5841,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5841,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' val'
    argTypes:
    - BasicJsonType
    - TargetType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5842
      start: 5837
    functionDepth: 1
    functionLinenumber: 5837
    functionLinenumberEnd: 5842
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 10
    functionsReached:
    - std::forward<BasicJsonType>
    - noexcept
    - BT::Monitor::from_json
    linkageType: ''
    returnType: auto
    signature: "auto from_json(BasicJsonType && j, TargetType& val) noexcept(\n        noexcept(::nlohmann::from_json(std::forward<BasicJsonType>(j),
      val)))\n    -> decltype(::nlohmann::from_json(std::forward<BasicJsonType>(j),
      val), void())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5848,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5848,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5848,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5849,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5849,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5851,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5851,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5852
      start: 5847
    functionDepth: 1
    functionLinenumber: 5847
    functionLinenumberEnd: 5852
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 11
    functionsReached:
    - std::forward<BasicJsonType>
    - noexcept
    - BT::Monitor::from_json
    linkageType: ''
    returnType: auto
    signature: "auto from_json(BasicJsonType && j) noexcept(\n    noexcept(::nlohmann::from_json(std::forward<BasicJsonType>(j),
      detail::identity_tag<TargetType> {})))\n    -> decltype(::nlohmann::from_json(std::forward<BasicJsonType>(j),
      detail::identity_tag<TargetType> {}))"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5858,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5858,1
    - Dst: std::forward<TargetType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5858,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5859,1
    - Dst: std::forward<TargetType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5859,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5861,1
    - Dst: std::forward<TargetType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5861,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' val'
    argTypes:
    - BasicJsonType
    - TargetType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5862
      start: 5857
    functionDepth: 1
    functionLinenumber: 5857
    functionLinenumberEnd: 5862
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 10
    functionsReached:
    - std::forward<TargetType>
    - noexcept
    - BT::Monitor::to_json
    linkageType: ''
    returnType: auto
    signature: "auto to_json(BasicJsonType& j, TargetType && val) noexcept(\n        noexcept(::nlohmann::to_json(j,
      std::forward<TargetType>(val))))\n    -> decltype(::nlohmann::to_json(j, std::forward<TargetType>(val)),
      void())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5838,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5838,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5838,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5839,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5839,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5841,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5841,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' val'
    argTypes:
    - BasicJsonType
    - TargetType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5842
      start: 5837
    functionDepth: 1
    functionLinenumber: 5837
    functionLinenumberEnd: 5842
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 12
    functionsReached:
    - std::forward<BasicJsonType>
    - noexcept
    - BT::Monitor::from_json
    linkageType: ''
    returnType: auto
    signature: "auto from_json(BasicJsonType && j, TargetType& val) noexcept(\n        noexcept(::nlohmann::from_json(std::forward<BasicJsonType>(j),
      val)))\n    -> decltype(::nlohmann::from_json(std::forward<BasicJsonType>(j),
      val), void())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5848,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5848,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5848,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5849,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5849,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5851,1
    - Dst: std::forward<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5851,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5852
      start: 5847
    functionDepth: 1
    functionLinenumber: 5847
    functionLinenumberEnd: 5852
    functionName: from_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 13
    functionsReached:
    - std::forward<BasicJsonType>
    - noexcept
    - BT::Monitor::from_json
    linkageType: ''
    returnType: auto
    signature: "auto from_json(BasicJsonType && j) noexcept(\n    noexcept(::nlohmann::from_json(std::forward<BasicJsonType>(j),
      detail::identity_tag<TargetType> {})))\n    -> decltype(::nlohmann::from_json(std::forward<BasicJsonType>(j),
      detail::identity_tag<TargetType> {}))"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5858,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5858,1
    - Dst: std::forward<TargetType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5858,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5859,1
    - Dst: std::forward<TargetType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5859,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5861,1
    - Dst: std::forward<TargetType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5861,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - ' val'
    argTypes:
    - BasicJsonType
    - TargetType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5862
      start: 5857
    functionDepth: 1
    functionLinenumber: 5857
    functionLinenumberEnd: 5862
    functionName: to_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 11
    functionsReached:
    - std::forward<TargetType>
    - noexcept
    - BT::Monitor::to_json
    linkageType: ''
    returnType: auto
    signature: "auto to_json(BasicJsonType& j, TargetType && val) noexcept(\n        noexcept(::nlohmann::to_json(j,
      std::forward<TargetType>(val))))\n    -> decltype(::nlohmann::to_json(j, std::forward<TargetType>(val)),
      void())"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' rhs'
    argTypes:
    - byte_container_with_subtype
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5934
      start: 5931
    functionDepth: 0
    functionLinenumber: 5931
    functionLinenumberEnd: 5934
    functionName: operator!=(const byte_container_with_subtype& rhs) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const byte_container_with_subtype& rhs) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - subtype_
    argTypes:
    - subtype_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5942
      start: 5938
    functionDepth: 0
    functionLinenumber: 5938
    functionLinenumberEnd: 5942
    functionName: set_subtype
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_subtype(subtype_type subtype_) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<subtype_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:5948,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5949
      start: 5946
    functionDepth: 0
    functionLinenumber: 5946
    functionLinenumberEnd: 5949
    functionName: subtype
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<subtype_type>
    linkageType: ''
    returnType: subtype_type
    signature: subtype_type subtype() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5956
      start: 5953
    functionDepth: 0
    functionLinenumber: 5953
    functionLinenumberEnd: 5956
    functionName: has_subtype
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_subtype() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 5964
      start: 5960
    functionDepth: 0
    functionLinenumber: 5960
    functionLinenumberEnd: 5964
    functionName: clear_subtype
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void clear_subtype() noexcept
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6029,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6029,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6030,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6035,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6040,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6040,1
    - Dst: items
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6041,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6043,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6044,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6045,1
    - Dst: hash
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6045,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6045,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6052,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6052,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6055,1
    - Dst: hash
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6055,1
    - Dst: template get_ref<const string_t&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6062,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6063,1
    - Dst: template get<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6068,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6069,1
    - Dst: template get<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6074,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6075,1
    - Dst: template get<number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6080,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6081,1
    - Dst: template get<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6086,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6087,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6092,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6092,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6093,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6094,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6095,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6095,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6095,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6096,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6098,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6104,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6109
      start: 5999
    functionDepth: 2
    functionLinenumber: 5999
    functionLinenumberEnd: 6109
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - items
    - static_cast<std::size_t>
    - value
    - template get<number_integer_t>
    - hash
    - key
    - template get<number_float_t>
    - size
    - get_binary
    - template get_ref<const string_t&>
    - JSON_ASSERT
    - template get<bool>
    - template get<number_unsigned_t>
    - type
    - combine
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - seed
    - h
    argTypes:
    - std::size_t
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6008
      start: 6004
    functionDepth: 0
    functionLinenumber: 6004
    functionLinenumberEnd: 6008
    functionName: combine
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t combine(std::size_t seed, std::size_t h) noexcept
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6029,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6029,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6030,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6035,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6040,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6040,1
    - Dst: items
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6041,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6043,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6044,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6045,1
    - Dst: hash
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6045,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6045,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6052,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6052,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6055,1
    - Dst: hash
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6055,1
    - Dst: template get_ref<const string_t&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6062,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6063,1
    - Dst: template get<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6068,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6069,1
    - Dst: template get<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6074,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6075,1
    - Dst: template get<number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6080,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6081,1
    - Dst: template get<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6086,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6087,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6092,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6092,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6093,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6094,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6095,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6095,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6095,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6096,1
    - Dst: combine
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6098,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6104,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 43
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6107
      start: 6022
    functionDepth: 2
    functionLinenumber: 6022
    functionLinenumberEnd: 6107
    functionName: hash
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - items
    - static_cast<std::size_t>
    - value
    - template get<number_integer_t>
    - hash
    - key
    - template get<number_float_t>
    - size
    - get_binary
    - template get_ref<const string_t&>
    - JSON_ASSERT
    - template get<bool>
    - template get<number_unsigned_t>
    - type
    - combine
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t hash(const BasicJsonType& j)
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6196,1
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6204,1
    - Dst: std::fgetc
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6208,1
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6236,1
    - Dst: rdstate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6236,1
    - Dst: rdbuf
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6241,1
    - Dst: sbumpc
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6261,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6263,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6263,1
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6265,1
    - Dst: rdstate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6265,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6286,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6286,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6291,1
    - Dst: to_int_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6293,1
    - Dst: std::advance
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6294,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6298,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6328,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6328,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6330,1
    - Dst: get_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6336,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6341,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6346,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6346,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6347,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6347,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6352,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6352,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6353,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6353,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6354,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6354,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6359,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6359,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6360,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6360,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6361,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6361,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6362,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6362,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6368,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6386,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6386,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6388,1
    - Dst: get_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6394,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6399,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6404,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6404,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6405,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6405,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6410,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6410,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6411,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6411,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6412,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6412,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6417,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6417,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6419,1
    - Dst: get_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6419,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6420,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6421,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6422,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6423,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6424,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6429,1
    - Dst: fill_buffer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6452,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6454,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6455,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6459,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6460,1
    - Dst: fill_buffer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6470,1
    - Dst: adapter_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6491,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6491,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6491,1
    - Dst: adapter_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6515,1
    - Dst: base_adapter_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6515,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6515,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6515,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6524,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6542,1
    - Dst: std::declval<ContainerType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6542,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6542,1
    - Dst: std::declval<ContainerType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6542,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6544,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6544,1
    - Dst: std::declval<ContainerType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6544,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6544,1
    - Dst: std::declval<ContainerType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6544,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6557,1
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6564,1
    - Dst: input_stream_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6569,1
    - Dst: input_stream_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6574,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6578,1
    - Dst: std::declval<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6578,1
    - Dst: std::declval<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6578,1
    - Dst: std::strlen
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6590,1
    - Dst: reinterpret_cast<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6590,1
    - Dst: reinterpret_cast<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6591,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6592,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6596,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6598,1
    - Dst: reinterpret_cast<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6614,1
    - Dst: reinterpret_cast<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6614,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6621,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6625,1
    CyclomaticComplexity: 26
    EdgeCount: 26
    ICount: 131
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6632
      start: 6171
    functionDepth: 2
    functionLinenumber: 6171
    functionLinenumberEnd: 6632
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - input_stream_adapter
    - begin
    - std::declval<const char*>
    - file_input_adapter
    - sbumpc
    - empty
    - base_adapter_type
    - get_character
    - JSON_HEDLEY_UNLIKELY
    - BT::Blackboard::create
    - eof
    - std::declval<ContainerType>
    - JSON_ASSERT
    - to_int_type
    - clear
    - std::advance
    - static_cast<unsigned int>
    - std::strlen
    - std::fgetc
    - reinterpret_cast<const char*>
    - adapter_type
    - end
    - rdstate
    - std::move
    - JSON_HEDLEY_LIKELY
    - rdbuf
    - input_adapter
    - static_cast<std::char_traits<char>::int_type>
    - fill_buffer
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - f
    argTypes:
    - std::FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6197
      start: 6193
    functionDepth: 1
    functionLinenumber: 6193
    functionLinenumberEnd: 6197
    functionName: file_input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - JSON_ASSERT
    linkageType: ''
    returnType: void
    signature: void file_input_adapter(std::FILE* f) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6200
      start: 6200
    functionDepth: 0
    functionLinenumber: 6200
    functionLinenumberEnd: 6200
    functionName: file_input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void file_input_adapter(const file_input_adapter&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6201
      start: 6201
    functionDepth: 0
    functionLinenumber: 6201
    functionLinenumberEnd: 6201
    functionName: file_input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void file_input_adapter(file_input_adapter&&) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::fgetc
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6209
      start: 6206
    functionDepth: 0
    functionLinenumber: 6206
    functionLinenumberEnd: 6209
    functionName: get_character
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - std::fgetc
    linkageType: ''
    returnType: std::char_traits<char>::int_type
    signature: std::char_traits<char>::int_type get_character() noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6236,1
    - Dst: rdstate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6236,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6238
      start: 6230
    functionDepth: 1
    functionLinenumber: 6230
    functionLinenumberEnd: 6238
    functionName: ~input_stream_adapter()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - rdstate
    - clear
    linkageType: ''
    returnType: void
    signature: void ~input_stream_adapter()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: rdbuf
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6241,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - std::istream
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6242
      start: 6240
    functionDepth: 0
    functionLinenumber: 6240
    functionLinenumberEnd: 6242
    functionName: input_stream_adapter::input_stream_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - rdbuf
    linkageType: ''
    returnType: void
    signature: void input_stream_adapter(std::istream& i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6245
      start: 6245
    functionDepth: 0
    functionLinenumber: 6245
    functionLinenumberEnd: 6245
    functionName: input_stream_adapter::input_stream_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void input_stream_adapter(const input_stream_adapter&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6246
      start: 6246
    functionDepth: 0
    functionLinenumber: 6246
    functionLinenumberEnd: 6246
    functionName: '& operator=(input_stream_adapter&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: input_stream_adapter
    signature: input_stream_adapter & operator=(input_stream_adapter&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6247
      start: 6247
    functionDepth: 0
    functionLinenumber: 6247
    functionLinenumberEnd: 6247
    functionName: '& operator=(input_stream_adapter&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: input_stream_adapter
    signature: input_stream_adapter & operator=(input_stream_adapter&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' rhs'
    argTypes:
    - input_stream_adapter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6254
      start: 6249
    functionDepth: 0
    functionLinenumber: 6249
    functionLinenumberEnd: 6254
    functionName: input_stream_adapter::input_stream_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void input_stream_adapter(input_stream_adapter&& rhs) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sbumpc
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6261,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6263,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6263,1
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6265,1
    - Dst: rdstate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6265,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6268
      start: 6259
    functionDepth: 1
    functionLinenumber: 6259
    functionLinenumberEnd: 6268
    functionName: input_stream_adapter::get_character
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - eof
    - sbumpc
    - clear
    - rdstate
    linkageType: ''
    returnType: std::char_traits<char>::int_type
    signature: std::char_traits<char>::int_type get_character()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6286,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6287
      start: 6285
    functionDepth: 0
    functionLinenumber: 6285
    functionLinenumberEnd: 6287
    functionName: iterator_input_adapter::iterator_input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void iterator_input_adapter(IteratorType first, IteratorType last)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6291,1
    - Dst: to_int_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6293,1
    - Dst: std::advance
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6294,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6299
      start: 6289
    functionDepth: 1
    functionLinenumber: 6289
    functionLinenumberEnd: 6299
    functionName: iterator_input_adapter::get_character
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - to_int_type
    - eof
    - std::advance
    - JSON_HEDLEY_LIKELY
    linkageType: ''
    returnType: typename char_traits<char_type>::int_type
    signature: typename char_traits<char_type>::int_type get_character()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6311
      start: 6308
    functionDepth: 0
    functionLinenumber: 6308
    functionLinenumberEnd: 6311
    functionName: iterator_input_adapter::empty
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool empty() const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6328,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6328,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6330,1
    - Dst: get_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6336,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6341,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6346,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6346,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6347,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6347,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6352,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6352,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6353,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6353,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6354,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6354,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6359,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6359,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6360,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6360,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6361,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6361,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6362,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6362,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6368,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 32
    argCount: 4
    argNames:
    - ' input'
    - ' utf8_bytes'
    - ' utf8_bytes_index'
    - ' utf8_bytes_filled'
    argTypes:
    - BaseInputAdapter
    - std::array<std::char_traits<char>::int_type, 4>
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6372
      start: 6321
    functionDepth: 1
    functionLinenumber: 6321
    functionLinenumberEnd: 6372
    functionName: fill_buffer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - get_character
    - JSON_HEDLEY_UNLIKELY
    - eof
    - empty
    - static_cast<std::char_traits<char>::int_type>
    - static_cast<unsigned int>
    linkageType: ''
    returnType: void
    signature: "void fill_buffer(BaseInputAdapter& input,\n                            std::array<std::char_traits<char>::int_type,
      4>& utf8_bytes,\n                            size_t& utf8_bytes_index,\n                            size_t&
      utf8_bytes_filled)"
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6386,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6386,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6388,1
    - Dst: get_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6394,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6399,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6404,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6404,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6405,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6405,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6410,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6410,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6411,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6411,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6412,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6412,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6417,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6417,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6419,1
    - Dst: get_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6419,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6420,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6421,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6422,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6423,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6424,1
    - Dst: static_cast<std::char_traits<char>::int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6429,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 4
    argNames:
    - ' input'
    - ' utf8_bytes'
    - ' utf8_bytes_index'
    - ' utf8_bytes_filled'
    argTypes:
    - BaseInputAdapter
    - std::array<std::char_traits<char>::int_type, 4>
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6434
      start: 6379
    functionDepth: 1
    functionLinenumber: 6379
    functionLinenumberEnd: 6434
    functionName: fill_buffer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - get_character
    - JSON_HEDLEY_UNLIKELY
    - eof
    - empty
    - static_cast<std::char_traits<char>::int_type>
    - static_cast<unsigned int>
    linkageType: ''
    returnType: void
    signature: "void fill_buffer(BaseInputAdapter& input,\n                            std::array<std::char_traits<char>::int_type,
      4>& utf8_bytes,\n                            size_t& utf8_bytes_index,\n                            size_t&
      utf8_bytes_filled)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - base
    argTypes:
    - BaseInputAdapter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6445
      start: 6444
    functionDepth: 0
    functionLinenumber: 6444
    functionLinenumberEnd: 6445
    functionName: wide_string_input_adapter::wide_string_input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void wide_string_input_adapter(BaseInputAdapter base)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: wide_string_input_adapter::fill_buffer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6452,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6454,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6455,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6459,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6460,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6462
      start: 6447
    functionDepth: 2
    functionLinenumber: 6447
    functionLinenumberEnd: 6462
    functionName: wide_string_input_adapter::get_character
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_ASSERT
    - wide_string_input_adapter::fill_buffer
    linkageType: ''
    returnType: typename std::char_traits<char>::int_type
    signature: typename std::char_traits<char>::int_type get_character() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: wide_string_input_adapter::fill_buffer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6470,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6471
      start: 6468
    functionDepth: 1
    functionLinenumber: 6468
    functionLinenumberEnd: 6471
    functionName: wide_string_input_adapter::fill_buffer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - wide_string_input_adapter::fill_buffer
    linkageType: ''
    returnType: void
    signature: void fill_buffer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: adapter_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6491,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6491,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6491,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6492
      start: 6489
    functionDepth: 0
    functionLinenumber: 6489
    functionLinenumberEnd: 6492
    functionName: create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 90
    functionsReached:
    - adapter_type
    - std::move
    linkageType: ''
    returnType: adapter_type
    signature: adapter_type create(IteratorType first, IteratorType last)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: adapter_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6515,1
    - Dst: base_adapter_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6515,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6515,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6515,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6516
      start: 6513
    functionDepth: 0
    functionLinenumber: 6513
    functionLinenumberEnd: 6516
    functionName: create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 90
    functionsReached:
    - base_adapter_type
    - adapter_type
    - std::move
    linkageType: ''
    returnType: adapter_type
    signature: adapter_type create(IteratorType first, IteratorType last)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6524,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6525
      start: 6521
    functionDepth: 0
    functionLinenumber: 6521
    functionLinenumberEnd: 6525
    functionName: input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - BT::Blackboard::create
    linkageType: ''
    returnType: typename iterator_input_adapter_factory<IteratorType>::adapter_type
    signature: typename iterator_input_adapter_factory<IteratorType>::adapter_type
      input_adapter(IteratorType first, IteratorType last)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' container'
    argTypes:
    - ContainerType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6549
      start: 6546
    functionDepth: 1
    functionLinenumber: 6546
    functionLinenumberEnd: 6549
    functionName: container_input_adapter_factory_impl::create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - input_adapter
    linkageType: ''
    returnType: adapter_type
    signature: adapter_type create(const ContainerType& container)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6548,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' container'
    argTypes:
    - ContainerType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6549
      start: 6546
    functionDepth: 1
    functionLinenumber: 6546
    functionLinenumberEnd: 6549
    functionName: container_input_adapter_factory_impl::create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - begin
    - end
    - input_adapter
    linkageType: ''
    returnType: adapter_type
    signature: adapter_type create(const ContainerType& container)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6557,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' container'
    argTypes:
    - ContainerType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6558
      start: 6555
    functionDepth: 0
    functionLinenumber: 6555
    functionLinenumberEnd: 6558
    functionName: input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 10
    functionsReached:
    - BT::Blackboard::create
    linkageType: ''
    returnType: typename container_input_adapter_factory_impl::container_input_adapter_factory<ContainerType>::adapter_type
    signature: typename container_input_adapter_factory_impl::container_input_adapter_factory<ContainerType>::adapter_type
      input_adapter(const ContainerType& container)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6564,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - file
    argTypes:
    - std::FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6565
      start: 6562
    functionDepth: 2
    functionLinenumber: 6562
    functionLinenumberEnd: 6565
    functionName: input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 11
    functionsReached:
    - file_input_adapter
    linkageType: ''
    returnType: file_input_adapter
    signature: file_input_adapter input_adapter(std::FILE* file)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: input_stream_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6569,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' stream'
    argTypes:
    - std::istream
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6570
      start: 6567
    functionDepth: 0
    functionLinenumber: 6567
    functionLinenumberEnd: 6570
    functionName: input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 11
    functionsReached:
    - input_stream_adapter
    linkageType: ''
    returnType: input_stream_adapter
    signature: input_stream_adapter input_adapter(std::istream& stream)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: input_stream_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6574,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' stream'
    argTypes:
    - std::istream
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6575
      start: 6572
    functionDepth: 0
    functionLinenumber: 6572
    functionLinenumberEnd: 6575
    functionName: input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 11
    functionsReached:
    - input_stream_adapter
    linkageType: ''
    returnType: input_stream_adapter
    signature: input_stream_adapter input_adapter(std::istream&& stream)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::strlen
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6590,1
    - Dst: reinterpret_cast<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6590,1
    - Dst: reinterpret_cast<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6591,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6592,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - b
    argTypes:
    - CharT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6593
      start: 6588
    functionDepth: 1
    functionLinenumber: 6588
    functionLinenumberEnd: 6593
    functionName: input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 12
    functionsReached:
    - input_adapter
    - std::strlen
    - reinterpret_cast<const char*>
    linkageType: ''
    returnType: contiguous_bytes_input_adapter
    signature: contiguous_bytes_input_adapter input_adapter(CharT b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6596,1
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - (array)
    argTypes:
    - T[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6599
      start: 6596
    functionDepth: 1
    functionLinenumber: 6596
    functionLinenumberEnd: 6599
    functionName: input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 13
    functionsReached:
    - input_adapter
    linkageType: ''
    returnType: auto
    signature: auto input_adapter(T (&array)[N]) -> decltype(input_adapter(array,
      array + N))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6614,1
    - Dst: reinterpret_cast<const char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6614,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - b
    - l
    argTypes:
    - CharT
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6614
      start: 6613
    functionDepth: 0
    functionLinenumber: 6613
    functionLinenumberEnd: 6614
    functionName: span_input_adapter::span_input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - reinterpret_cast<const char*>
    linkageType: ''
    returnType: void
    signature: void span_input_adapter(CharT b, std::size_t l)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6621,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6621
      start: 6620
    functionDepth: 1
    functionLinenumber: 6620
    functionLinenumberEnd: 6621
    functionName: span_input_adapter::span_input_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - input_adapter
    linkageType: ''
    returnType: void
    signature: void span_input_adapter(IteratorType first, IteratorType last)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6625,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6626
      start: 6623
    functionDepth: 0
    functionLinenumber: 6623
    functionLinenumberEnd: 6626
    functionName: '&& get()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: contiguous_bytes_input_adapter
    signature: contiguous_bytes_input_adapter && get()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' r'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6815
      start: 6813
    functionDepth: 0
    functionLinenumber: 6813
    functionLinenumberEnd: 6815
    functionName: json_sax_dom_parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_sax_dom_parser(BasicJsonType& r, const bool allow_exceptions_
      = true)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6818
      start: 6818
    functionDepth: 0
    functionLinenumber: 6818
    functionLinenumberEnd: 6818
    functionName: json_sax_dom_parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_sax_dom_parser(const json_sax_dom_parser&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6819
      start: 6819
    functionDepth: 0
    functionLinenumber: 6819
    functionLinenumberEnd: 6819
    functionName: json_sax_dom_parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_sax_dom_parser(json_sax_dom_parser&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6822
      start: 6822
    functionDepth: 0
    functionLinenumber: 6822
    functionLinenumberEnd: 6822
    functionName: ~json_sax_dom_parser()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~json_sax_dom_parser()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6826,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6828
      start: 6824
    functionDepth: 0
    functionLinenumber: 6824
    functionLinenumberEnd: 6828
    functionName: 'null'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - handle_value
    linkageType: ''
    returnType: bool
    signature: bool null()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6832,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6834
      start: 6830
    functionDepth: 0
    functionLinenumber: 6830
    functionLinenumberEnd: 6834
    functionName: boolean
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - handle_value
    linkageType: ''
    returnType: bool
    signature: bool boolean(bool val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6838,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - number_integer_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6840
      start: 6836
    functionDepth: 0
    functionLinenumber: 6836
    functionLinenumberEnd: 6840
    functionName: number_integer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - handle_value
    linkageType: ''
    returnType: bool
    signature: bool number_integer(number_integer_t val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6844,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - number_unsigned_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6846
      start: 6842
    functionDepth: 0
    functionLinenumber: 6842
    functionLinenumberEnd: 6846
    functionName: number_unsigned
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - handle_value
    linkageType: ''
    returnType: bool
    signature: bool number_unsigned(number_unsigned_t val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6850,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - number_float_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6852
      start: 6848
    functionDepth: 0
    functionLinenumber: 6848
    functionLinenumberEnd: 6852
    functionName: number_float
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - handle_value
    linkageType: ''
    returnType: bool
    signature: bool number_float(number_float_t val, const string_t& /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6856,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6858
      start: 6854
    functionDepth: 0
    functionLinenumber: 6854
    functionLinenumberEnd: 6858
    functionName: string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 169
    functionsReached:
    - handle_value
    linkageType: ''
    returnType: bool
    signature: bool string(string_t& val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6862,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6862,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6864
      start: 6860
    functionDepth: 0
    functionLinenumber: 6860
    functionLinenumberEnd: 6864
    functionName: binary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 6
    functionsReached:
    - std::move
    - handle_value
    linkageType: ''
    returnType: bool
    signature: bool binary(binary_t& val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6868,1
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6868,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6870,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6870,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6870,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6872,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6872,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6872,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6872,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6872,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - len
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6876
      start: 6866
    functionDepth: 4
    functionLinenumber: 6866
    functionLinenumberEnd: 6876
    functionName: start_object
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - handle_value
    - out_of_range::create
    - concat
    - push_back
    - to_string
    - back
    - JSON_THROW
    - static_cast<std::size_t>
    linkageType: ''
    returnType: bool
    signature: bool start_object(std::size_t len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6880,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6880,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6881,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6881,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6884,1
    - Dst: m_value::object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6884,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6886
      start: 6878
    functionDepth: 1
    functionLinenumber: 6878
    functionLinenumberEnd: 6886
    functionName: key
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 16
    functionsReached:
    - JSON_ASSERT
    - empty
    - back
    - m_value::object
    linkageType: ''
    returnType: bool
    signature: bool key(string_t& val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6890,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6890,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6891,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6891,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6893,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6894,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6896
      start: 6888
    functionDepth: 1
    functionLinenumber: 6888
    functionLinenumberEnd: 6896
    functionName: end_object
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_ASSERT
    - empty
    - back
    - pop_back
    linkageType: ''
    returnType: bool
    signature: bool end_object()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6900,1
    - Dst: handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6900,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6902,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6902,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6902,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6904,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6904,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6904,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6904,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6904,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - len
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6908
      start: 6898
    functionDepth: 4
    functionLinenumber: 6898
    functionLinenumberEnd: 6908
    functionName: start_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - handle_value
    - out_of_range::create
    - concat
    - push_back
    - to_string
    - back
    - JSON_THROW
    - static_cast<std::size_t>
    linkageType: ''
    returnType: bool
    signature: bool start_array(std::size_t len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6912,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6912,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6913,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6913,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6915,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6916,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6918
      start: 6910
    functionDepth: 1
    functionLinenumber: 6910
    functionLinenumberEnd: 6918
    functionName: end_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_ASSERT
    - empty
    - back
    - pop_back
    linkageType: ''
    returnType: bool
    signature: bool end_array()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6925,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6928,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' ex'
    argTypes:
    - Exception
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6931
      start: 6921
    functionDepth: 1
    functionLinenumber: 6921
    functionLinenumberEnd: 6931
    functionName: parse_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<void>
    - JSON_THROW
    linkageType: ''
    returnType: bool
    signature: "bool parse_error(std::size_t /*unused*/, const std::string& /*unused*/,\n
      \                    const Exception& ex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6936
      start: 6933
    functionDepth: 0
    functionLinenumber: 6933
    functionLinenumberEnd: 6936
    functionName: is_errored
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_errored() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:6998,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' r'
    - cb
    argTypes:
    - BasicJsonType
    - parser_callback_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 6999
      start: 6993
    functionDepth: 1
    functionLinenumber: 6993
    functionLinenumberEnd: 6999
    functionName: json_sax_dom_callback_parser::json_sax_dom_callback_parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - push_back
    linkageType: ''
    returnType: void
    signature: "void json_sax_dom_callback_parser(BasicJsonType& r,\n                                 const
      parser_callback_t cb,\n                                 const bool allow_exceptions_
      = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7002
      start: 7002
    functionDepth: 0
    functionLinenumber: 7002
    functionLinenumberEnd: 7002
    functionName: json_sax_dom_callback_parser::json_sax_dom_callback_parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_sax_dom_callback_parser(const json_sax_dom_callback_parser&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7003
      start: 7003
    functionDepth: 0
    functionLinenumber: 7003
    functionLinenumberEnd: 7003
    functionName: json_sax_dom_callback_parser::json_sax_dom_callback_parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_sax_dom_callback_parser(json_sax_dom_callback_parser&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7004
      start: 7004
    functionDepth: 0
    functionLinenumber: 7004
    functionLinenumberEnd: 7004
    functionName: '& operator=(const json_sax_dom_callback_parser&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: json_sax_dom_callback_parser
    signature: json_sax_dom_callback_parser & operator=(const json_sax_dom_callback_parser&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7005
      start: 7005
    functionDepth: 0
    functionLinenumber: 7005
    functionLinenumberEnd: 7005
    functionName: '& operator=(json_sax_dom_callback_parser&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: json_sax_dom_callback_parser
    signature: json_sax_dom_callback_parser & operator=(json_sax_dom_callback_parser&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7006
      start: 7006
    functionDepth: 0
    functionLinenumber: 7006
    functionLinenumberEnd: 7006
    functionName: ~json_sax_dom_callback_parser()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~json_sax_dom_callback_parser()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: json_sax_dom_callback_parser::handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7010,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7012
      start: 7008
    functionDepth: 1
    functionLinenumber: 7008
    functionLinenumberEnd: 7012
    functionName: json_sax_dom_callback_parser::null
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - json_sax_dom_callback_parser::handle_value
    linkageType: ''
    returnType: bool
    signature: bool null()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: json_sax_dom_callback_parser::handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7016,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7018
      start: 7014
    functionDepth: 1
    functionLinenumber: 7014
    functionLinenumberEnd: 7018
    functionName: json_sax_dom_callback_parser::boolean
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - json_sax_dom_callback_parser::handle_value
    linkageType: ''
    returnType: bool
    signature: bool boolean(bool val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: json_sax_dom_callback_parser::handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7022,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - number_integer_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7024
      start: 7020
    functionDepth: 1
    functionLinenumber: 7020
    functionLinenumberEnd: 7024
    functionName: json_sax_dom_callback_parser::number_integer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - json_sax_dom_callback_parser::handle_value
    linkageType: ''
    returnType: bool
    signature: bool number_integer(number_integer_t val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: json_sax_dom_callback_parser::handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7028,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - number_unsigned_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7030
      start: 7026
    functionDepth: 1
    functionLinenumber: 7026
    functionLinenumberEnd: 7030
    functionName: json_sax_dom_callback_parser::number_unsigned
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - json_sax_dom_callback_parser::handle_value
    linkageType: ''
    returnType: bool
    signature: bool number_unsigned(number_unsigned_t val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: json_sax_dom_callback_parser::handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7034,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - val
    argTypes:
    - number_float_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7036
      start: 7032
    functionDepth: 1
    functionLinenumber: 7032
    functionLinenumberEnd: 7036
    functionName: json_sax_dom_callback_parser::number_float
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - json_sax_dom_callback_parser::handle_value
    linkageType: ''
    returnType: bool
    signature: bool number_float(number_float_t val, const string_t& /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: json_sax_dom_callback_parser::handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7040,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7042
      start: 7038
    functionDepth: 1
    functionLinenumber: 7038
    functionLinenumberEnd: 7042
    functionName: json_sax_dom_callback_parser::string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - json_sax_dom_callback_parser::handle_value
    linkageType: ''
    returnType: bool
    signature: bool string(string_t& val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: json_sax_dom_callback_parser::handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7046,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7046,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7048
      start: 7044
    functionDepth: 1
    functionLinenumber: 7044
    functionLinenumberEnd: 7048
    functionName: json_sax_dom_callback_parser::binary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - json_sax_dom_callback_parser::handle_value
    linkageType: ''
    returnType: bool
    signature: bool binary(binary_t& val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: callback
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7053,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7053,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7053,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7054,1
    - Dst: json_sax_dom_callback_parser::handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7056,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7057,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7060,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7060,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7060,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7060,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7062,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7062,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7062,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7062,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7062,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - len
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7066
      start: 7050
    functionDepth: 4
    functionLinenumber: 7050
    functionLinenumberEnd: 7066
    functionName: json_sax_dom_callback_parser::start_object
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - out_of_range::create
    - concat
    - size
    - push_back
    - callback
    - to_string
    - static_cast<int>
    - back
    - JSON_THROW
    - json_sax_dom_callback_parser::handle_value
    - static_cast<std::size_t>
    linkageType: ''
    returnType: bool
    signature: bool start_object(std::size_t len)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BasicJsonType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7070,1
    - Dst: callback
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7073,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7073,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7073,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7074,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7077,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7079,1
    - Dst: m_value::object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7079,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7083
      start: 7068
    functionDepth: 1
    functionLinenumber: 7068
    functionLinenumberEnd: 7083
    functionName: json_sax_dom_callback_parser::key
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - size
    - push_back
    - callback
    - BasicJsonType
    - m_value::object
    - back
    - static_cast<int>
    linkageType: ''
    returnType: bool
    signature: bool key(string_t& val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7087,1
    - Dst: callback
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7089,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7089,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7089,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7089,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7092,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7096,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7100,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7100,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7101,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7101,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7102,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7103,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7105,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7105,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7105,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7108,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7108,1
    - Dst: auto::is_discarded
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7110,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7112,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7119
      start: 7085
    functionDepth: 1
    functionLinenumber: 7085
    functionLinenumberEnd: 7119
    functionName: json_sax_dom_callback_parser::end_object
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - pop_back
    - size
    - callback
    - back
    - JSON_ASSERT
    - empty
    - auto::is_discarded
    - static_cast<int>
    linkageType: ''
    returnType: bool
    signature: bool end_object()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: callback
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7123,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7123,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7123,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7124,1
    - Dst: json_sax_dom_callback_parser::handle_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7126,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7127,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7130,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7130,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7130,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7130,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7132,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7132,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7132,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7132,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7132,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - len
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7136
      start: 7121
    functionDepth: 4
    functionLinenumber: 7121
    functionLinenumberEnd: 7136
    functionName: json_sax_dom_callback_parser::start_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - out_of_range::create
    - concat
    - size
    - push_back
    - callback
    - to_string
    - static_cast<int>
    - back
    - JSON_THROW
    - json_sax_dom_callback_parser::handle_value
    - static_cast<std::size_t>
    linkageType: ''
    returnType: bool
    signature: bool start_array(std::size_t len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7142,1
    - Dst: callback
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7144,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7144,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7144,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7144,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7147,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7152,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7156,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7156,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7157,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7157,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7158,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7159,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7162,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7162,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7164,1
    - Dst: m_value::array::pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7164,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7168
      start: 7138
    functionDepth: 1
    functionLinenumber: 7138
    functionLinenumberEnd: 7168
    functionName: json_sax_dom_callback_parser::end_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - pop_back
    - size
    - callback
    - m_value::array::pop_back
    - back
    - JSON_ASSERT
    - empty
    - static_cast<int>
    linkageType: ''
    returnType: bool
    signature: bool end_array()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7175,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7178,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ' ex'
    argTypes:
    - Exception
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7181
      start: 7171
    functionDepth: 1
    functionLinenumber: 7171
    functionLinenumberEnd: 7181
    functionName: json_sax_dom_callback_parser::parse_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<void>
    - JSON_THROW
    linkageType: ''
    returnType: bool
    signature: "bool parse_error(std::size_t /*unused*/, const std::string& /*unused*/,\n
      \                    const Exception& ex)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7186
      start: 7183
    functionDepth: 0
    functionLinenumber: 7183
    functionLinenumberEnd: 7186
    functionName: json_sax_dom_callback_parser::is_errored
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_errored() const
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7207,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7207,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7211,1
    - Dst: BasicJsonType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7217,1
    - Dst: std::forward<Value>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7217,1
    - Dst: callback
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7220,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7220,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7220,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7228,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7230,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7236,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7242,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7242,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7242,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7245,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7247,1
    - Dst: m_value::array::emplace_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7247,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7247,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7248,1
    - Dst: m_value::array::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7248,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7252,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7252,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7254,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7254,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7255,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7256,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7263,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7264,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 29
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - Value
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7266
      start: 7205
    functionDepth: 1
    functionLinenumber: 7205
    functionLinenumberEnd: 7266
    functionName: json_sax_dom_callback_parser::handle_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 9
    functionsReached:
    - std::move
    - m_value::array::back
    - pop_back
    - size
    - callback
    - BasicJsonType
    - std::forward<Value>
    - back
    - m_value::array::emplace_back
    - JSON_ASSERT
    - empty
    - static_cast<int>
    linkageType: ''
    returnType: std::pair<bool, BasicJsonType*>
    signature: std::pair<bool, BasicJsonType*> handle_value(Value&& v, const bool
      skip_callback = false)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7301
      start: 7298
    functionDepth: 0
    functionLinenumber: 7298
    functionLinenumberEnd: 7301
    functionName: json_sax_acceptor::null
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool null()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7306
      start: 7303
    functionDepth: 0
    functionLinenumber: 7303
    functionLinenumberEnd: 7306
    functionName: json_sax_acceptor::boolean
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool boolean(bool /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7311
      start: 7308
    functionDepth: 0
    functionLinenumber: 7308
    functionLinenumberEnd: 7311
    functionName: json_sax_acceptor::number_integer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool number_integer(number_integer_t /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7316
      start: 7313
    functionDepth: 0
    functionLinenumber: 7313
    functionLinenumberEnd: 7316
    functionName: json_sax_acceptor::number_unsigned
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool number_unsigned(number_unsigned_t /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7321
      start: 7318
    functionDepth: 0
    functionLinenumber: 7318
    functionLinenumberEnd: 7321
    functionName: json_sax_acceptor::number_float
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool number_float(number_float_t /*unused*/, const string_t& /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7326
      start: 7323
    functionDepth: 0
    functionLinenumber: 7323
    functionLinenumberEnd: 7326
    functionName: json_sax_acceptor::string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool string(string_t& /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7331
      start: 7328
    functionDepth: 0
    functionLinenumber: 7328
    functionLinenumberEnd: 7331
    functionName: json_sax_acceptor::binary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool binary(binary_t& /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7333,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7336
      start: 7333
    functionDepth: 0
    functionLinenumber: 7333
    functionLinenumberEnd: 7336
    functionName: json_sax_acceptor::start_object
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<std::size_t>
    linkageType: ''
    returnType: bool
    signature: bool start_object(std::size_t /*unused*/ = static_cast<std::size_t>(-1))
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7341
      start: 7338
    functionDepth: 0
    functionLinenumber: 7338
    functionLinenumberEnd: 7341
    functionName: json_sax_acceptor::key
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool key(string_t& /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7346
      start: 7343
    functionDepth: 0
    functionLinenumber: 7343
    functionLinenumberEnd: 7346
    functionName: json_sax_acceptor::end_object
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool end_object()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7351
      start: 7348
    functionDepth: 0
    functionLinenumber: 7348
    functionLinenumberEnd: 7351
    functionName: json_sax_acceptor::start_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<std::size_t>
    linkageType: ''
    returnType: bool
    signature: bool start_array(std::size_t /*unused*/ = static_cast<std::size_t>(-1))
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7356
      start: 7353
    functionDepth: 0
    functionLinenumber: 7353
    functionLinenumberEnd: 7356
    functionName: json_sax_acceptor::end_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool end_array()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7361
      start: 7358
    functionDepth: 0
    functionLinenumber: 7358
    functionLinenumberEnd: 7361
    functionName: json_sax_acceptor::parse_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool parse_error(std::size_t /*unused*/, const std::string& /*unused*/,
      const detail::exception& /*unused*/)
  - BBCount: 350
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7496,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7498,1
    - Dst: get_decimal_point
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7498,1
    - Dst: localeconv
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7517,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7518,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7544,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7550,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7554,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7554,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7558,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7558,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7562,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7562,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7570,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7591,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7591,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7591,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7591,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7592,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7594,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7594,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7596,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7597,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7599,1
    - Dst: reset
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7629,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7632,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7637,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7640,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7655,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7659,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7663,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7667,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7671,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7675,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7679,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7683,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7687,1
    - Dst: get_codepoint
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7693,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7696,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7706,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7706,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7706,1
    - Dst: get_codepoint
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7708,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7710,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7717,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7720,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7722,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7724,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7744,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7752,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7758,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7758,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7763,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7763,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7763,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7764,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7764,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7764,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7769,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7769,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7769,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7770,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7770,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7770,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7771,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7771,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7771,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7776,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7776,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7776,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7777,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7777,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7777,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7778,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7778,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7778,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7779,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7779,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7779,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8083,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8119,1
    - Dst: next_byte_in_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8119,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8129,1
    - Dst: next_byte_in_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8129,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8153,1
    - Dst: next_byte_in_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8153,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8163,1
    - Dst: next_byte_in_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8163,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8173,1
    - Dst: next_byte_in_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8173,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8185,1
    - Dst: next_byte_in_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8185,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8195,1
    - Dst: next_byte_in_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8195,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8218,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8225,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8229,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8244,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8246,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8255,1
    - Dst: unget
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8262,1
    - Dst: std::strtof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8286,1
    - Dst: std::strtod
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8292,1
    - Dst: std::strtold
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8298,1
    - Dst: reset
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8344,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8355,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8361,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8375,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8381,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8387,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8391,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8405,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8418,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8422,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8429,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8439,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8452,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8458,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8465,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8476,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8489,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8502,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8515,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8522,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8533,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8538,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8553,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8567,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8580,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8593,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8606,1
    - Dst: unget
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8617,1
    - Dst: std::strtoull
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8625,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8625,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8628,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8628,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8628,1
    - Dst: static_cast<number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8632,1
    - Dst: std::strtoll
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8641,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8641,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8644,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8644,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8644,1
    - Dst: static_cast<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8648,1
    - Dst: strtof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8658,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8658,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8661,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8661,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8661,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8678,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8678,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8678,1
    CyclomaticComplexity: 104
    EdgeCount: 104
    ICount: 782
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8683
      start: 7397
    functionDepth: 1
    functionLinenumber: 7397
    functionLinenumberEnd: 8683
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get
    - begin
    - std::strtoll
    - static_cast<number_unsigned_t>
    - size
    - get_decimal_point
    - JSON_HEDLEY_UNLIKELY
    - unget
    - eof
    - data
    - JSON_ASSERT
    - to_char_type
    - static_cast<number_integer_t>
    - static_cast<unsigned int>
    - static_cast<char_int_type>
    - static_cast<int>
    - end
    - std::strtold
    - std::strtoull
    - strtof
    - std::move
    - std::strtof
    - get_codepoint
    - localeconv
    - JSON_HEDLEY_LIKELY
    - add
    - reset
    - std::strtod
    - next_byte_in_range
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 19
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 37
    argCount: 1
    argNames:
    - t
    argTypes:
    - token_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7475
      start: 7434
    functionDepth: 0
    functionLinenumber: 7434
    functionLinenumberEnd: 7475
    functionName: lexer_base::token_type_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * token_type_name(const token_type t) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7496,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7498,1
    - Dst: lexer::get_decimal_point
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7498,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' adapter'
    argTypes:
    - InputAdapterType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7499
      start: 7495
    functionDepth: 1
    functionLinenumber: 7495
    functionLinenumberEnd: 7499
    functionName: lexer::lexer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char_int_type>
    - lexer::get_decimal_point
    - std::move
    linkageType: ''
    returnType: void
    signature: void lexer(InputAdapterType&& adapter, bool ignore_comments_ = false)
      noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7502
      start: 7502
    functionDepth: 0
    functionLinenumber: 7502
    functionLinenumberEnd: 7502
    functionName: lexer::lexer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void lexer(const lexer&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7503
      start: 7503
    functionDepth: 0
    functionLinenumber: 7503
    functionLinenumberEnd: 7503
    functionName: lexer::lexer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void lexer(lexer&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7504
      start: 7504
    functionDepth: 0
    functionLinenumber: 7504
    functionLinenumberEnd: 7504
    functionName: '& operator=(lexer&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: lexer
    signature: lexer & operator=(lexer&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7505
      start: 7505
    functionDepth: 0
    functionLinenumber: 7505
    functionLinenumberEnd: 7505
    functionName: '& operator=(lexer&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: lexer
    signature: lexer & operator=(lexer&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7506
      start: 7506
    functionDepth: 0
    functionLinenumber: 7506
    functionLinenumberEnd: 7506
    functionName: ~lexer()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~lexer()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: localeconv
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7517,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7518,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7520
      start: 7514
    functionDepth: 1
    functionLinenumber: 7514
    functionLinenumberEnd: 7520
    functionName: lexer::get_decimal_point
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - JSON_ASSERT
    - localeconv
    linkageType: ''
    returnType: JSON_HEDLEY_PURE
    signature: JSON_HEDLEY_PURE get_decimal_point() noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7544,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7550,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7554,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7554,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7558,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7558,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7562,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7562,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7570,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7572
      start: 7541
    functionDepth: 1
    functionLinenumber: 7541
    functionLinenumberEnd: 7572
    functionName: lexer::get_codepoint
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get
    - JSON_ASSERT
    - static_cast<unsigned int>
    - static_cast<int>
    linkageType: ''
    returnType: int
    signature: int get_codepoint()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7591,1
    - Dst: std::initializer_list<char_int_type>::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7591,1
    - Dst: std::initializer_list<char_int_type>::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7591,1
    - Dst: std::initializer_list<char_int_type>::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7591,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7592,1
    - Dst: std::initializer_list<char_int_type>::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7594,1
    - Dst: std::initializer_list<char_int_type>::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7594,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7596,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7597,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7599,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - ranges
    argTypes:
    - std::initializer_list<char_int_type>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 7609
      start: 7589
    functionDepth: 1
    functionLinenumber: 7589
    functionLinenumberEnd: 7609
    functionName: lexer::next_byte_in_range
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get
    - std::initializer_list<char_int_type>::begin
    - JSON_HEDLEY_LIKELY
    - add
    - std::initializer_list<char_int_type>::size
    - JSON_ASSERT
    - std::initializer_list<char_int_type>::end
    linkageType: ''
    returnType: bool
    signature: bool next_byte_in_range(std::initializer_list<char_int_type> ranges)
  - BBCount: 208
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7629,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7632,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7637,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7640,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7655,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7659,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7663,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7667,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7671,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7675,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7679,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7683,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7687,1
    - Dst: lexer::get_codepoint
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7693,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7696,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7706,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7706,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7706,1
    - Dst: lexer::get_codepoint
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7708,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7710,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7717,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7720,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7722,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7724,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7744,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7752,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7758,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7758,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7763,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7763,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7763,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7764,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7764,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7764,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7769,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7769,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7769,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7770,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7770,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7770,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7771,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7771,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7771,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7776,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7776,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7776,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7777,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7777,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7777,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7778,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7778,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7778,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7779,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7779,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:7779,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8083,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8119,1
    - Dst: lexer::next_byte_in_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8119,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8129,1
    - Dst: lexer::next_byte_in_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8129,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8153,1
    - Dst: lexer::next_byte_in_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8153,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8163,1
    - Dst: lexer::next_byte_in_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8163,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8173,1
    - Dst: lexer::next_byte_in_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8173,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8185,1
    - Dst: lexer::next_byte_in_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8185,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8195,1
    - Dst: lexer::next_byte_in_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8195,1
    CyclomaticComplexity: 42
    EdgeCount: 42
    ICount: 408
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8210
      start: 7626
    functionDepth: 2
    functionLinenumber: 7626
    functionLinenumberEnd: 8210
    functionName: lexer::scan_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get
    - lexer::next_byte_in_range
    - JSON_HEDLEY_UNLIKELY
    - static_cast<char_int_type>
    - eof
    - JSON_HEDLEY_LIKELY
    - add
    - reset
    - lexer::get_codepoint
    - JSON_ASSERT
    - static_cast<unsigned int>
    - static_cast<int>
    linkageType: ''
    returnType: token_type
    signature: token_type scan_string()
  - BBCount: 15
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8218,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8225,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8229,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8244,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8246,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8255,1
    - Dst: unget
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8262,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 43
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8281
      start: 8216
    functionDepth: 1
    functionLinenumber: 8216
    functionLinenumberEnd: 8281
    functionName: lexer::scan_comment
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get
    - eof
    - unget
    linkageType: ''
    returnType: bool
    signature: bool scan_comment()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: lexer::strtof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' f'
    - str
    - endptr
    argTypes:
    - float
    - char*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8287
      start: 8284
    functionDepth: 1
    functionLinenumber: 8284
    functionLinenumberEnd: 8287
    functionName: lexer::strtof
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - lexer::strtof
    linkageType: ''
    returnType: void
    signature: void strtof(float& f, const char* str, char** endptr) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::strtod
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' f'
    - str
    - endptr
    argTypes:
    - double
    - char*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8293
      start: 8290
    functionDepth: 0
    functionLinenumber: 8290
    functionLinenumberEnd: 8293
    functionName: lexer::strtof
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - std::strtod
    linkageType: ''
    returnType: void
    signature: void strtof(double& f, const char* str, char** endptr) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::strtold
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8298,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - ' f'
    - str
    - endptr
    argTypes:
    - long double
    - char*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8299
      start: 8296
    functionDepth: 0
    functionLinenumber: 8296
    functionLinenumberEnd: 8299
    functionName: lexer::strtof
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - std::strtold
    linkageType: ''
    returnType: void
    signature: void strtof(long double& f, const char* str, char** endptr) noexcept
  - BBCount: 107
    BranchProfiles: []
    Callsites:
    - Dst: reset
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8344,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8355,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8361,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8375,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8381,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8387,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8391,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8405,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8418,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8422,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8429,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8439,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8452,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8458,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8465,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8476,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8489,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8502,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8515,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8522,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8533,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8538,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8553,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8567,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8580,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8593,1
    - Dst: add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8606,1
    - Dst: unget
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8617,1
    - Dst: std::strtoull
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8625,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8625,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8628,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8628,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8628,1
    - Dst: static_cast<number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8632,1
    - Dst: std::strtoll
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8641,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8641,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8644,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8644,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8644,1
    - Dst: static_cast<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8648,1
    - Dst: lexer::strtof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8658,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8658,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8661,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8661,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8661,1
    CyclomaticComplexity: 36
    EdgeCount: 36
    ICount: 253
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8664
      start: 8341
    functionDepth: 2
    functionLinenumber: 8341
    functionLinenumberEnd: 8664
    functionName: lexer::scan_number
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get
    - lexer::strtof
    - unget
    - std::strtoll
    - static_cast<number_unsigned_t>
    - size
    - add
    - data
    - reset
    - JSON_ASSERT
    - std::strtoull
    - static_cast<number_integer_t>
    linkageType: ''
    returnType: token_type
    signature: token_type scan_number()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8694,1
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8695,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8696,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8696,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8697
      start: 8692
    functionDepth: 1
    functionLinenumber: 8692
    functionLinenumberEnd: 8697
    functionName: reset
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 7
    functionsReached:
    - to_char_type
    - clear
    - push_back
    linkageType: ''
    returnType: void
    signature: void reset() noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: get_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8721,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8724,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8724,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8726,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8726,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8736
      start: 8709
    functionDepth: 1
    functionLinenumber: 8709
    functionLinenumberEnd: 8736
    functionName: get
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 109
    functionsReached:
    - get_character
    - eof
    - JSON_HEDLEY_LIKELY
    - push_back
    - to_char_type
    linkageType: ''
    returnType: char_int_type
    signature: char_int_type get()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8765,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8765,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8767,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8767,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8768,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8770
      start: 8746
    functionDepth: 1
    functionLinenumber: 8746
    functionLinenumberEnd: 8770
    functionName: unget
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - pop_back
    - eof
    - JSON_HEDLEY_LIKELY
    - JSON_ASSERT
    - empty
    linkageType: ''
    returnType: void
    signature: void unget()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8775,1
    - Dst: static_cast<typename string_t::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8775,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char_int_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8776
      start: 8773
    functionDepth: 1
    functionLinenumber: 8773
    functionLinenumberEnd: 8776
    functionName: add
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 16
    functionsReached:
    - static_cast<typename string_t::value_type>
    - push_back
    linkageType: ''
    returnType: void
    signature: void add(char_int_type c)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8793
      start: 8790
    functionDepth: 0
    functionLinenumber: 8790
    functionLinenumberEnd: 8793
    functionName: get_number_unsigned
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: number_unsigned_t
    signature: number_unsigned_t get_number_unsigned() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8799
      start: 8796
    functionDepth: 0
    functionLinenumber: 8796
    functionLinenumberEnd: 8799
    functionName: get_number_float
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: number_float_t
    signature: number_float_t get_number_float() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8805
      start: 8802
    functionDepth: 0
    functionLinenumber: 8802
    functionLinenumberEnd: 8805
    functionName: get_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: string_t
    signature: string_t & get_string()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8815
      start: 8812
    functionDepth: 0
    functionLinenumber: 8812
    functionLinenumberEnd: 8815
    functionName: get_position
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: position_t
    signature: position_t get_position() const noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8826,1
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8830,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8830,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8830,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8830,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8831,1
    - Dst: std::string::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8836,1
    - Dst: static_cast<std::string::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8836,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8841
      start: 8820
    functionDepth: 1
    functionLinenumber: 8820
    functionLinenumberEnd: 8841
    functionName: get_token_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::string::push_back
    - std::array::data
    - static_cast<std::string::value_type>
    - static_cast<void>
    - std::array::size
    - static_cast<unsigned char>
    linkageType: ''
    returnType: std::string
    signature: std::string get_token_string() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8848
      start: 8844
    functionDepth: 0
    functionLinenumber: 8844
    functionLinenumberEnd: 8848
    functionName: get_error_message
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: JSON_HEDLEY_RETURNS_NON_NULL
    signature: JSON_HEDLEY_RETURNS_NON_NULL * get_error_message() const noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8860,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8863,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8863,1
    - Dst: unget
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8868,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8870
      start: 8858
    functionDepth: 2
    functionLinenumber: 8858
    functionLinenumberEnd: 8870
    functionName: skip_bom
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get
    - unget
    linkageType: ''
    returnType: bool
    signature: bool skip_bom()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8876,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8879
      start: 8872
    functionDepth: 0
    functionLinenumber: 8872
    functionLinenumberEnd: 8879
    functionName: skip_whitespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get
    linkageType: ''
    returnType: void
    signature: void skip_whitespace()
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: skip_bom
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8884,1
    - Dst: skip_whitespace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8891,1
    - Dst: scan_comment
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8896,1
    - Dst: skip_whitespace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8902,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8924,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8924,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8924,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8924,1
    - Dst: scan_literal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8925,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8925,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8925,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8929,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8929,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8929,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8929,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8929,1
    - Dst: scan_literal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8930,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8930,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8930,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8934,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8934,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8934,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8934,1
    - Dst: scan_literal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8935,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8935,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8935,1
    - Dst: scan_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8940,1
    - Dst: scan_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8954,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:8959,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 55
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 8967
      start: 8881
    functionDepth: 3
    functionLinenumber: 8881
    functionLinenumberEnd: 8967
    functionName: scan
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::array::data
    - static_cast<char_type>
    - scan_literal
    - eof
    - skip_bom
    - std::array::size
    - scan_string
    - scan_comment
    - skip_whitespace
    - scan_number
    linkageType: ''
    returnType: token_type
    signature: token_type scan()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9035,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9039,1
    - Dst: std::declval<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9039,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9043,1
    - Dst: std::declval<Integer>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9043,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9047,1
    - Dst: std::declval<Unsigned>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9047,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9050,1
    - Dst: std::declval<Float>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9051,1
    - Dst: std::declval<const String&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9051,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9055,1
    - Dst: std::declval<String&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9055,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9059,1
    - Dst: std::declval<Binary&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9059,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9063,1
    - Dst: std::declval<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9063,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9067,1
    - Dst: std::declval<String&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9067,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9070,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9074,1
    - Dst: std::declval<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9074,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9077,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9080,1
    - Dst: std::declval<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9081,1
    - Dst: std::declval<const std::string&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9081,1
    - Dst: std::declval<const Exception&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9082,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9169
      start: 9030
    functionDepth: 0
    functionLinenumber: 9030
    functionLinenumberEnd: 9169
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::declval<bool>
    - std::declval<T&>
    - std::declval<const std::string&>
    - std::declval<Binary&>
    - std::declval<const Exception&>
    - std::declval<Float>
    - std::declval<std::size_t>
    - std::declval<Unsigned>
    - std::declval<const String&>
    - std::declval<String&>
    - std::declval<Integer>
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 798
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9200,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9228,1
    - Dst: parse_bson_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9260,1
    - Dst: parse_cbor_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9264,1
    - Dst: parse_msgpack_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9268,1
    - Dst: parse_ubjson_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9273,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9278,1
    - Dst: get_ignore_noop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9286,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9290,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9293,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9293,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9295,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9295,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9295,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9296,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9296,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9296,1
    - Dst: get_number<std::int32_t, true>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9315,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9317,1
    - Dst: start_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9317,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9317,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9322,1
    - Dst: parse_bson_element_list
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9322,1
    - Dst: end_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9327,1
    - Dst: std::back_inserter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9339,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9342,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9343,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9343,1
    - Dst: static_cast<typename string_t::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9351,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9369,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9371,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9372,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9372,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9373,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9373,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9373,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9376,1
    - Dst: static_cast<NumberType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9376,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9376,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9376,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9391,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9393,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9394,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9394,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9395,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9395,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9395,1
    - Dst: get_number<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9400,1
    - Dst: set_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9401,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9403,1
    - Dst: get_number<double, true>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9424,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9424,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9424,1
    - Dst: get_number<std::int32_t, true>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9431,1
    - Dst: get_bson_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9431,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9431,1
    - Dst: parse_bson_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9436,1
    - Dst: parse_bson_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9441,1
    - Dst: get_number<std::int32_t, true>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9448,1
    - Dst: get_bson_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9448,1
    - Dst: binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9448,1
    - Dst: boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9453,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9453,1
    - Dst: 'null'
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9458,1
    - Dst: get_number<std::int32_t, true>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9464,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9464,1
    - Dst: get_number<std::int64_t, true>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9470,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9470,1
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9476,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9476,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9476,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9476,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9477,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9478,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9479,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9479,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9500,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9502,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9502,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9508,1
    - Dst: get_bson_cstr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9508,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9513,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9518,1
    - Dst: parse_bson_element_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9518,1
    - Dst: string_t::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9524,1
    - Dst: get_number<std::int32_t, true>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9537,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9539,1
    - Dst: start_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9539,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9539,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9544,1
    - Dst: parse_bson_element_list
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9544,1
    - Dst: end_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9549,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9567,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9570,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9571,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9598,1
    - Dst: static_cast<number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9598,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9603,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9603,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9609,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9609,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9615,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9615,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9621,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9621,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9649,1
    - Dst: static_cast<std::int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9649,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9654,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9654,1
    - Dst: static_cast<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9654,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9660,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9660,1
    - Dst: static_cast<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9660,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9666,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9666,1
    - Dst: static_cast<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9666,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9672,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9672,1
    - Dst: static_cast<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9672,1
    - Dst: static_cast<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9673,1
    - Dst: get_cbor_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9708,1
    - Dst: binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9708,1
    - Dst: get_cbor_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9743,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9743,1
    - Dst: get_cbor_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9771,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9772,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9772,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9777,1
    - Dst: get_cbor_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9777,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9777,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9783,1
    - Dst: get_cbor_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9783,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9783,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9789,1
    - Dst: get_cbor_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9789,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9789,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9795,1
    - Dst: get_cbor_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9795,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9795,1
    - Dst: get_cbor_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9799,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9799,1
    - Dst: get_cbor_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9826,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9826,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9826,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9831,1
    - Dst: get_cbor_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9831,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9831,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9837,1
    - Dst: get_cbor_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9837,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9837,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9843,1
    - Dst: get_cbor_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9843,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9843,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9849,1
    - Dst: get_cbor_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9849,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9849,1
    - Dst: get_cbor_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9853,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9853,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9879,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9880,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9880,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9881,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9881,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9892,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9898,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9904,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9910,1
    - Dst: parse_cbor_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9916,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9928,1
    - Dst: binary_t::set_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9929,1
    - Dst: detail::conditional_static_cast<typename binary_t::subtype_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9929,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9935,1
    - Dst: binary_t::set_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9936,1
    - Dst: detail::conditional_static_cast<typename binary_t::subtype_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9936,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9942,1
    - Dst: binary_t::set_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9943,1
    - Dst: detail::conditional_static_cast<typename binary_t::subtype_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9943,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9949,1
    - Dst: binary_t::set_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9950,1
    - Dst: detail::conditional_static_cast<typename binary_t::subtype_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9950,1
    - Dst: parse_cbor_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9954,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9956,1
    - Dst: get_cbor_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9957,1
    - Dst: binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9957,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9961,1
    - Dst: boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9967,1
    - Dst: boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9970,1
    - Dst: 'null'
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9973,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9977,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9978,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9978,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9982,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9983,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9983,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9988,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9989,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9999,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10004,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10005,1
    - Dst: std::ldexp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10009,1
    - Dst: std::numeric_limits<double>::infinity
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10012,1
    - Dst: std::numeric_limits<double>::quiet_NaN
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10013,1
    - Dst: std::ldexp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10015,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10018,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10019,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10020,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10026,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10026,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10026,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10032,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10032,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10032,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10037,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10038,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10038,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10039,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10039,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10057,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10057,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10090,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10090,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10096,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10096,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10102,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10102,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10108,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10108,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10114,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10114,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10119,1
    - Dst: get_cbor_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10122,1
    - Dst: append
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10126,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10133,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10134,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10134,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10135,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10135,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10153,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10153,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10186,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10186,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10192,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10193,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10199,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10200,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10206,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10207,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10213,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10214,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10219,1
    - Dst: get_cbor_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10222,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10226,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10226,1
    - Dst: binary_t::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10226,1
    - Dst: binary_t::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10226,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10233,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10234,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10234,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10235,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10235,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10249,1
    - Dst: start_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10249,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10254,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10258,1
    - Dst: parse_cbor_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10258,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10266,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10268,1
    - Dst: parse_cbor_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10268,1
    - Dst: end_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10275,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10287,1
    - Dst: start_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10287,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10295,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10299,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10300,1
    - Dst: get_cbor_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10300,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10300,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10305,1
    - Dst: parse_cbor_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10305,1
    - Dst: string_t::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10309,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10314,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10316,1
    - Dst: get_cbor_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10316,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10316,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10321,1
    - Dst: parse_cbor_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10321,1
    - Dst: string_t::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10325,1
    - Dst: end_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10330,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10342,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10345,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10346,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10477,1
    - Dst: static_cast<number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10477,1
    - Dst: get_msgpack_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10496,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10496,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10496,1
    - Dst: get_msgpack_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10515,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10515,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10515,1
    - Dst: get_msgpack_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10555,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10555,1
    - Dst: 'null'
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10559,1
    - Dst: boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10562,1
    - Dst: boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10565,1
    - Dst: get_msgpack_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10580,1
    - Dst: binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10580,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10586,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10586,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10586,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10592,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10592,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10592,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10598,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10598,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10604,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10604,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10610,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10610,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10616,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10616,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10622,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10622,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10628,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10628,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10634,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10634,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10640,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10640,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10646,1
    - Dst: get_msgpack_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10646,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10646,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10652,1
    - Dst: get_msgpack_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10652,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10652,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10658,1
    - Dst: get_msgpack_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10658,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10658,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10664,1
    - Dst: get_msgpack_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10664,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10664,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10700,1
    - Dst: static_cast<std::int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10700,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10704,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10705,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10705,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10706,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10706,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10723,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10723,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10764,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10764,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10770,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10770,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10776,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10776,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10782,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10782,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10787,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10788,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10788,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10789,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10789,1
    - Dst: set_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10809,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10809,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10818,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10819,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10825,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10826,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10832,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10833,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10840,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10841,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10842,1
    - Dst: assign_and_return_true
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10843,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10850,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10851,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10852,1
    - Dst: assign_and_return_true
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10853,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10860,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10861,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10862,1
    - Dst: assign_and_return_true
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10863,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10869,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10870,1
    - Dst: assign_and_return_true
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10871,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10877,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10878,1
    - Dst: assign_and_return_true
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10879,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10885,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10886,1
    - Dst: assign_and_return_true
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10887,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10893,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10894,1
    - Dst: assign_and_return_true
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10895,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10901,1
    - Dst: get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10902,1
    - Dst: assign_and_return_true
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10903,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10917,1
    - Dst: start_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10917,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10924,1
    - Dst: parse_msgpack_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10924,1
    - Dst: end_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10930,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10939,1
    - Dst: start_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10939,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10947,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10948,1
    - Dst: get_msgpack_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10948,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10948,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10953,1
    - Dst: parse_msgpack_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10953,1
    - Dst: string_t::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10957,1
    - Dst: end_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10960,1
    - Dst: get_ubjson_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10976,1
    - Dst: get_ignore_noop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10976,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10997,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11000,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11000,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11010,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11010,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11016,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11016,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11022,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11022,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11028,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11028,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11034,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11034,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11044,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11044,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11054,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11054,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11064,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11064,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11070,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11081,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11081,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11081,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11094,1
    - Dst: get_ubjson_size_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11094,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11107,1
    - Dst: get_ubjson_size_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11107,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11111,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11119,1
    - Dst: get_ubjson_size_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11119,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11123,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11131,1
    - Dst: get_ubjson_size_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11131,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11135,1
    - Dst: get_ignore_noop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11136,1
    - Dst: get_ignore_noop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11157,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11165,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11165,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11169,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11176,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11176,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11182,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11182,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11182,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11183,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11185,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11192,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11192,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11198,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11198,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11198,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11199,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11201,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11208,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11208,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11214,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11214,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11214,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11215,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11217,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11224,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11224,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11230,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11230,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11230,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11231,1
    - Dst: value_in_range_of
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11233,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11235,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11235,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11235,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11236,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11238,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11249,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11249,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11253,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11264,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11264,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11268,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11279,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11279,1
    - Dst: value_in_range_of
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11283,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11285,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11285,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11285,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11286,1
    - Dst: detail::conditional_static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11288,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11300,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11300,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11300,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11300,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11303,1
    - Dst: get_ubjson_ndarray_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11303,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11307,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11307,1
    - Dst: std::vector::at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11307,1
    - Dst: std::vector::at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11309,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11309,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11312,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11324,1
    - Dst: start_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11324,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11324,1
    - Dst: start_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11324,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11324,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11334,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11334,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11334,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11334,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11336,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11336,1
    - Dst: static_cast<number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11336,1
    - Dst: end_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11342,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11351,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11362,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11362,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11362,1
    - Dst: get_ignore_noop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11382,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11386,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11388,1
    - Dst: std::binary_search
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11388,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11388,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11388,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11390,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11391,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11391,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11392,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11392,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11395,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11395,1
    - Dst: get_ignore_noop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11400,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11401,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11403,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11403,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11407,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11408,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11408,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11409,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11409,1
    - Dst: get_ubjson_size_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11412,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11417,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11417,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11417,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11418,1
    - Dst: get_ubjson_size_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11427,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11430,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11430,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11430,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11431,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11447,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11448,1
    - Dst: boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11451,1
    - Dst: boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11453,1
    - Dst: 'null'
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11456,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11461,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11461,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11467,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11467,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11473,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11473,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11479,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11479,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11485,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11485,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11495,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11495,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11505,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11505,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11515,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11515,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11524,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11525,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11525,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11529,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11530,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11530,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11535,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11536,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11546,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11551,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11552,1
    - Dst: std::ldexp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11556,1
    - Dst: std::numeric_limits<double>::infinity
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11559,1
    - Dst: std::numeric_limits<double>::quiet_NaN
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11560,1
    - Dst: std::ldexp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11562,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11565,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11566,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11567,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11573,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11573,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11573,1
    - Dst: get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11579,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11579,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11579,1
    - Dst: get_ubjson_high_precision_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11584,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11589,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11590,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11590,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11594,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11596,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11597,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11597,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11598,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11598,1
    - Dst: static_cast<typename string_t::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11600,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11601,1
    - Dst: get_ubjson_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11607,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11607,1
    - Dst: get_ubjson_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11611,1
    - Dst: get_ubjson_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11614,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11619,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11620,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11620,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11620,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11629,1
    - Dst: get_ubjson_size_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11629,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11639,1
    - Dst: std::lower_bound
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11640,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11640,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11640,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11645,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11645,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11647,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11648,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11648,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11649,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11653,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11653,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11653,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11664,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11664,1
    - Dst: start_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11664,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11671,1
    - Dst: get_ubjson_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11671,1
    - Dst: end_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11677,1
    - Dst: end_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11677,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11682,1
    - Dst: start_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11682,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11693,1
    - Dst: get_ubjson_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11693,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11704,1
    - Dst: parse_ubjson_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11704,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11713,1
    - Dst: start_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11713,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11713,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11720,1
    - Dst: parse_ubjson_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11720,1
    - Dst: get_ignore_noop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11724,1
    - Dst: end_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11728,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11737,1
    - Dst: get_ubjson_size_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11737,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11745,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11746,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11746,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11747,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11753,1
    - Dst: start_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11753,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11762,1
    - Dst: get_ubjson_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11762,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11762,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11766,1
    - Dst: get_ubjson_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11766,1
    - Dst: string_t::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11770,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11777,1
    - Dst: get_ubjson_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11777,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11777,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11781,1
    - Dst: parse_ubjson_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11781,1
    - Dst: string_t::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11785,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11791,1
    - Dst: start_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11791,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11791,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11798,1
    - Dst: get_ubjson_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11798,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11798,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11802,1
    - Dst: parse_ubjson_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11802,1
    - Dst: get_ignore_noop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11806,1
    - Dst: string_t::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11807,1
    - Dst: end_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11811,1
    - Dst: get_ubjson_size_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11822,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11823,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11832,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11833,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11833,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11837,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11837,1
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11841,1
    - Dst: detail::lexer<BasicJsonType, ia_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11842,1
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11842,1
    - Dst: auto::scan
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11843,1
    - Dst: auto::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11844,1
    - Dst: auto::scan
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11845,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11849,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11851,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11851,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11852,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11852,1
    - Dst: auto::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11852,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11858,1
    - Dst: auto::get_number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11858,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11860,1
    - Dst: auto::get_number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11860,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11862,1
    - Dst: auto::get_number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11862,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11862,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11878,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11878,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11879,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11879,1
    - Dst: auto::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11879,1
    - Dst: get_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11899,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11909,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11938,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11939,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11939,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11947,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11951,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11956,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11956,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11982,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11983,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11983,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11988,1
    - Dst: static_cast<typename string_t::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11988,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12015,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12016,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12016,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12021,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12021,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12034,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12034,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12036,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12037,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12037,1
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12048,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12048,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12048,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12048,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12049,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12088,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12091,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12095,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12101,1
    - Dst: little_endianness
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12107,1
    CyclomaticComplexity: 338
    EdgeCount: 338
    ICount: 1606
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12153
      start: 9170
    functionDepth: 5
    functionLinenumber: 9170
    functionLinenumberEnd: 12153
    functionName: NLOHMANN_JSON_NAMESPACE_BEGIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - begin
    - auto::get_number_unsigned
    - boolean
    - parse_bson_element_internal
    - std::vector::at
    - get_character
    - static_cast<char>
    - JSON_HEDLEY_UNLIKELY
    - binary_t::set_subtype
    - get_string
    - get_ubjson_size_type
    - get_cbor_object
    - parse_error::create
    - get_token_string
    - get_bson_string
    - get_number<std::uint8_t>
    - start_array
    - auto::get_token_string
    - push_back
    - to_string
    - std::numeric_limits<double>::quiet_NaN
    - std::vector::empty
    - get_cbor_string
    - parse_bson_internal
    - static_cast<typename string_t::value_type>
    - std::ldexp
    - get_cbor_array
    - std::move
    - parse_error
    - string_t::clear
    - static_cast<std::uint8_t>
    - unexpect_eof
    - static_cast<number_unsigned_t>
    - end_object
    - number_unsigned
    - static_cast<unsigned char>
    - get_ubjson_value
    - std::vector::size
    - append
    - std::array::data
    - eof
    - std::numeric_limits<double>::infinity
    - little_endianness
    - get_msgpack_binary
    - static_cast<unsigned int>
    - static_cast<std::size_t>
    - start_object
    - parse_bson_array
    - detail::conditional_static_cast<std::size_t>
    - get_ubjson_object
    - conditional_static_cast
    - get_bson_binary
    - static_cast<number_float_t>
    - get_ubjson_array
    - get_ignore_noop
    - get_ubjson_ndarray_size
    - std::vector::push_back
    - set_subtype
    - file_input_adapter
    - std::array::size
    - auto::scan
    - auto::get_number_float
    - get_ubjson_size_value
    - std::lower_bound
    - detail::conditional_static_cast<typename binary_t::subtype_type>
    - JSON_ASSERT
    - get_msgpack_string
    - value_in_range_of
    - concat
    - parse_cbor_internal
    - auto::get_number_integer
    - end
    - get_ubjson_string
    - get_msgpack_array
    - detail::lexer<BasicJsonType, ia_type>
    - get_ubjson_high_precision_number
    - get_msgpack_object
    - binary
    - static_cast<NumberType>
    - insert
    - get_number<double, true>
    - binary_t::begin
    - get
    - parse_ubjson_internal
    - std::memcpy
    - get_bson_cstr
    - get_cbor_binary
    - static_cast<std::int8_t>
    - 'null'
    - std::back_inserter
    - string
    - reinterpret_cast<char*>
    - get_number
    - number_float
    - static_cast<number_integer_t>
    - end_array
    - parse_bson_element_list
    - get_number<std::int32_t, true>
    - static_cast<char_int_type>
    - out_of_range::create
    - get_binary
    - exception_message
    - get_number<std::int64_t, true>
    - number_integer
    - key
    - binary_t::end
    - std::binary_search
    - static_cast<void>
    - assign_and_return_true
    - parse_msgpack_internal
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_END
    signature: NLOHMANN_JSON_NAMESPACE_END NLOHMANN_JSON_NAMESPACE_BEGIN
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9200,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9201
      start: 9198
    functionDepth: 0
    functionLinenumber: 9198
    functionLinenumberEnd: 9201
    functionName: little_endianness
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - reinterpret_cast<char*>
    linkageType: ''
    returnType: bool
    signature: bool little_endianness(int num = 1) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9228,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' adapter'
    argTypes:
    - InputAdapterType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9231
      start: 9228
    functionDepth: 0
    functionLinenumber: 9228
    functionLinenumberEnd: 9231
    functionName: binary_reader::binary_reader
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void binary_reader(InputAdapterType&& adapter, const input_format_t
      format = input_format_t::json) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9234
      start: 9234
    functionDepth: 0
    functionLinenumber: 9234
    functionLinenumberEnd: 9234
    functionName: binary_reader::binary_reader
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void binary_reader(const binary_reader&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9235
      start: 9235
    functionDepth: 0
    functionLinenumber: 9235
    functionLinenumberEnd: 9235
    functionName: binary_reader::binary_reader
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void binary_reader(binary_reader&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9236
      start: 9236
    functionDepth: 0
    functionLinenumber: 9236
    functionLinenumberEnd: 9236
    functionName: '& operator=(const binary_reader&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: binary_reader
    signature: binary_reader & operator=(const binary_reader&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9237
      start: 9237
    functionDepth: 0
    functionLinenumber: 9237
    functionLinenumberEnd: 9237
    functionName: '& operator=(binary_reader&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: binary_reader
    signature: binary_reader & operator=(binary_reader&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9238
      start: 9238
    functionDepth: 0
    functionLinenumber: 9238
    functionLinenumberEnd: 9238
    functionName: ~binary_reader()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~binary_reader()
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: parse_bson_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9260,1
    - Dst: parse_cbor_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9264,1
    - Dst: parse_msgpack_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9268,1
    - Dst: parse_ubjson_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9273,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9278,1
    - Dst: get_ignore_noop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9286,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9290,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9293,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9293,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9295,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9295,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9295,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9296,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9296,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9296,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 31
    argCount: 2
    argNames:
    - format
    - sax_
    argTypes:
    - input_format_t
    - json_sax_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9301
      start: 9248
    functionDepth: 4
    functionLinenumber: 9248
    functionLinenumberEnd: 9301
    functionName: "(3)\n    bool sax_parse(const input_format_t format,\n                   json_sax_t*
      sax_,\n                   const bool strict = true,\n                   const
      cbor_tag_handler_t tag_handler = cbor_tag_handler_t::error)"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get
    - get_token_string
    - JSON_HEDLEY_UNLIKELY
    - parse_ubjson_internal
    - eof
    - parse_error
    - concat
    - parse_cbor_internal
    - exception_message
    - parse_error::create
    - get_ignore_noop
    - JSON_ASSERT
    - parse_bson_internal
    - parse_msgpack_internal
    linkageType: ''
    returnType: JSON_HEDLEY_NON_NULL
    signature: "JSON_HEDLEY_NON_NULL (3)\n    bool sax_parse(const input_format_t
      format,\n                   json_sax_t* sax_,\n                   const bool
      strict = true,\n                   const cbor_tag_handler_t tag_handler = cbor_tag_handler_t::error)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9315,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9317,1
    - Dst: start_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9317,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9317,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9322,1
    - Dst: binary_reader::parse_bson_element_list
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9322,1
    - Dst: end_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9327,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9328
      start: 9312
    functionDepth: 5
    functionLinenumber: 9312
    functionLinenumberEnd: 9328
    functionName: binary_reader::parse_bson_internal
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - start_object
    - JSON_HEDLEY_UNLIKELY
    - binary_reader::parse_bson_element_list
    - end_object
    - binary_reader::get_number
    - static_cast<std::size_t>
    linkageType: ''
    returnType: bool
    signature: bool parse_bson_internal()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::back_inserter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9339,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9342,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9343,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9343,1
    - Dst: static_cast<typename string_t::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9351,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' result'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9353
      start: 9337
    functionDepth: 1
    functionLinenumber: 9337
    functionLinenumberEnd: 9353
    functionName: binary_reader::get_bson_cstr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::back_inserter
    - JSON_HEDLEY_UNLIKELY
    - unexpect_eof
    - binary_reader::get
    - static_cast<typename string_t::value_type>
    linkageType: ''
    returnType: bool
    signature: bool get_bson_cstr(string_t& result)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9369,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9371,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9372,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9372,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9373,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9373,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9373,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9376,1
    - Dst: static_cast<NumberType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9376,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9376,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9376,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - len
    - ' result'
    argTypes:
    - NumberType
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9377
      start: 9367
    functionDepth: 4
    functionLinenumber: 9367
    functionLinenumberEnd: 9377
    functionName: binary_reader::get_bson_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - binary_reader::get
    - binary_reader::get_token_string
    - binary_reader::get_string
    - parse_error
    - concat
    - eof
    - to_string
    - static_cast<NumberType>
    - binary_reader::exception_message
    - parse_error::create
    linkageType: ''
    returnType: bool
    signature: bool get_bson_string(const NumberType len, string_t& result)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9391,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9393,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9394,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9394,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9395,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9395,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9395,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9400,1
    - Dst: set_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9401,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9403,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - len
    - ' result'
    argTypes:
    - NumberType
    - binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9404
      start: 9389
    functionDepth: 4
    functionLinenumber: 9389
    functionLinenumberEnd: 9404
    functionName: binary_reader::get_bson_binary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - set_subtype
    - JSON_HEDLEY_UNLIKELY
    - binary_reader::get_token_string
    - binary_reader::get_binary
    - parse_error
    - concat
    - to_string
    - binary_reader::exception_message
    - parse_error::create
    - binary_reader::get_number
    linkageType: ''
    returnType: bool
    signature: bool get_bson_binary(const NumberType len, binary_t& result)
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9424,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9424,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9424,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9431,1
    - Dst: binary_reader::get_bson_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9431,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9431,1
    - Dst: binary_reader::parse_bson_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9436,1
    - Dst: binary_reader::parse_bson_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9441,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9448,1
    - Dst: binary_reader::get_bson_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9448,1
    - Dst: binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9448,1
    - Dst: boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9453,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9453,1
    - Dst: 'null'
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9458,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9464,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9464,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9470,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9470,1
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9476,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9476,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9476,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9476,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9477,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9478,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9479,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9479,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 34
    argCount: 2
    argNames:
    - element_type
    - element_type_parse_position
    argTypes:
    - char_int_type
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9482
      start: 9416
    functionDepth: 6
    functionLinenumber: 9416
    functionLinenumberEnd: 9482
    functionName: binary_reader::parse_bson_element_internal
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - boolean
    - std::array::size
    - static_cast<unsigned char>
    - 'null'
    - std::array::data
    - string
    - number_float
    - parse_error::create
    - binary_reader::parse_bson_array
    - binary_reader::get
    - concat
    - binary_reader::get_bson_string
    - binary_reader::get_bson_binary
    - number_integer
    - static_cast<number_float_t>
    - parse_error
    - binary_reader::parse_bson_internal
    - binary
    - static_cast<void>
    - binary_reader::get_number
    linkageType: ''
    returnType: bool
    signature: "bool parse_bson_element_internal(const char_int_type element_type,\n
      \                                    const std::size_t element_type_parse_position)"
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9500,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9502,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9502,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9508,1
    - Dst: binary_reader::get_bson_cstr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9508,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9513,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9518,1
    - Dst: binary_reader::parse_bson_element_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9518,1
    - Dst: string_t::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9524,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - is_array
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9528
      start: 9496
    functionDepth: 7
    functionLinenumber: 9496
    functionLinenumberEnd: 9528
    functionName: binary_reader::parse_bson_element_list
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - binary_reader::get_bson_cstr
    - JSON_HEDLEY_UNLIKELY
    - unexpect_eof
    - binary_reader::get
    - key
    - string_t::clear
    - binary_reader::parse_bson_element_internal
    linkageType: ''
    returnType: bool
    signature: bool parse_bson_element_list(const bool is_array)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9537,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9539,1
    - Dst: start_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9539,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9539,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9544,1
    - Dst: binary_reader::parse_bson_element_list
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9544,1
    - Dst: end_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9549,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 9550
      start: 9534
    functionDepth: 8
    functionLinenumber: 9534
    functionLinenumberEnd: 9550
    functionName: binary_reader::parse_bson_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - end_array
    - JSON_HEDLEY_UNLIKELY
    - start_array
    - binary_reader::parse_bson_element_list
    - binary_reader::get_number
    - static_cast<std::size_t>
    linkageType: ''
    returnType: bool
    signature: bool parse_bson_array()
  - BBCount: 219
    BranchProfiles: []
    Callsites:
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9567,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9570,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9571,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9598,1
    - Dst: static_cast<number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9598,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9603,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9603,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9609,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9609,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9615,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9615,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9621,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9621,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9649,1
    - Dst: static_cast<std::int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9649,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9654,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9654,1
    - Dst: static_cast<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9654,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9660,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9660,1
    - Dst: static_cast<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9660,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9666,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9666,1
    - Dst: static_cast<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9666,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9672,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9672,1
    - Dst: static_cast<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9672,1
    - Dst: static_cast<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9673,1
    - Dst: binary_reader::get_cbor_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9708,1
    - Dst: binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9708,1
    - Dst: binary_reader::get_cbor_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9743,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9743,1
    - Dst: binary_reader::get_cbor_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9771,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9772,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9772,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9777,1
    - Dst: binary_reader::get_cbor_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9777,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9777,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9783,1
    - Dst: binary_reader::get_cbor_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9783,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9783,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9789,1
    - Dst: binary_reader::get_cbor_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9789,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9789,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9795,1
    - Dst: binary_reader::get_cbor_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9795,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9795,1
    - Dst: binary_reader::get_cbor_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9799,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9799,1
    - Dst: binary_reader::get_cbor_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9826,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9826,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9826,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9831,1
    - Dst: binary_reader::get_cbor_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9831,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9831,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9837,1
    - Dst: binary_reader::get_cbor_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9837,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9837,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9843,1
    - Dst: binary_reader::get_cbor_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9843,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9843,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9849,1
    - Dst: binary_reader::get_cbor_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9849,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9849,1
    - Dst: binary_reader::get_cbor_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9853,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9853,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9879,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9880,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9880,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9881,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9881,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9892,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9898,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9904,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9910,1
    - Dst: binary_reader::parse_cbor_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9916,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9928,1
    - Dst: binary_t::set_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9929,1
    - Dst: detail::conditional_static_cast<typename binary_t::subtype_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9929,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9935,1
    - Dst: binary_t::set_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9936,1
    - Dst: detail::conditional_static_cast<typename binary_t::subtype_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9936,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9942,1
    - Dst: binary_t::set_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9943,1
    - Dst: detail::conditional_static_cast<typename binary_t::subtype_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9943,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9949,1
    - Dst: binary_t::set_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9950,1
    - Dst: detail::conditional_static_cast<typename binary_t::subtype_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9950,1
    - Dst: binary_reader::parse_cbor_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9954,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9956,1
    - Dst: binary_reader::get_cbor_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9957,1
    - Dst: binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9957,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9961,1
    - Dst: boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9967,1
    - Dst: boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9970,1
    - Dst: 'null'
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9973,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9977,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9978,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9978,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9982,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9983,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9983,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9988,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9989,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:9999,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10004,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10005,1
    - Dst: std::ldexp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10009,1
    - Dst: std::numeric_limits<double>::infinity
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10012,1
    - Dst: std::numeric_limits<double>::quiet_NaN
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10013,1
    - Dst: std::ldexp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10015,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10018,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10019,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10020,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10026,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10026,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10026,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10032,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10032,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10032,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10037,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10038,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10038,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10039,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10039,1
    CyclomaticComplexity: 38
    EdgeCount: 38
    ICount: 333
    argCount: 2
    argNames:
    - get_char
    - tag_handler
    argTypes:
    - bool
    - cbor_tag_handler_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10042
      start: 9564
    functionDepth: 4
    functionLinenumber: 9564
    functionLinenumberEnd: 10042
    functionName: binary_reader::parse_cbor_internal
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - binary_reader::get_cbor_string
    - unexpect_eof
    - static_cast<number_unsigned_t>
    - binary_reader::get_cbor_array
    - boolean
    - binary_reader::get_cbor_binary
    - number_unsigned
    - static_cast<unsigned char>
    - static_cast<std::int8_t>
    - 'null'
    - JSON_HEDLEY_UNLIKELY
    - binary_t::set_subtype
    - string
    - eof
    - std::numeric_limits<double>::infinity
    - detail::conditional_static_cast<typename binary_t::subtype_type>
    - binary_reader::parse_cbor_internal
    - number_float
    - binary_reader::exception_message
    - parse_error::create
    - binary_reader::get_cbor_object
    - JSON_ASSERT
    - static_cast<number_integer_t>
    - static_cast<unsigned int>
    - static_cast<std::size_t>
    - binary_reader::get
    - binary_reader::get_token_string
    - concat
    - std::numeric_limits<double>::quiet_NaN
    - conditional_static_cast
    - number_integer
    - std::ldexp
    - static_cast<number_float_t>
    - parse_error
    - binary
    - binary_reader::get_number
    linkageType: ''
    returnType: bool
    signature: "bool parse_cbor_internal(const bool get_char,\n                             const
      cbor_tag_handler_t tag_handler)"
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10057,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10057,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10090,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10090,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10096,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10096,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10102,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10102,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10108,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10108,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10114,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10114,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10119,1
    - Dst: binary_reader::get_cbor_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10122,1
    - Dst: append
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10126,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10133,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10134,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10134,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10135,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10135,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 56
    argCount: 1
    argNames:
    - ' result'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10138
      start: 10055
    functionDepth: 4
    functionLinenumber: 10055
    functionLinenumberEnd: 10138
    functionName: binary_reader::get_cbor_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - binary_reader::get_cbor_string
    - append
    - JSON_HEDLEY_UNLIKELY
    - unexpect_eof
    - binary_reader::get
    - binary_reader::get_string
    - binary_reader::get_token_string
    - parse_error
    - concat
    - binary_reader::exception_message
    - parse_error::create
    - binary_reader::get_number
    - static_cast<unsigned int>
    linkageType: ''
    returnType: bool
    signature: bool get_cbor_string(string_t& result)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10153,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10153,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10186,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10186,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10192,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10193,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10199,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10200,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10206,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10207,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10213,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10214,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10219,1
    - Dst: binary_reader::get_cbor_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10222,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10226,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10226,1
    - Dst: binary_t::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10226,1
    - Dst: binary_t::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10226,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10233,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10234,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10234,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10235,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10235,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 56
    argCount: 1
    argNames:
    - ' result'
    argTypes:
    - binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10238
      start: 10151
    functionDepth: 4
    functionLinenumber: 10151
    functionLinenumberEnd: 10238
    functionName: binary_reader::get_cbor_binary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - unexpect_eof
    - binary_reader::get
    - binary_t::end
    - binary_reader::get_token_string
    - binary_reader::get_binary
    - parse_error
    - concat
    - binary_reader::get_cbor_binary
    - insert
    - end
    - parse_error::create
    - binary_reader::exception_message
    - binary_t::begin
    - binary_reader::get_number
    - static_cast<unsigned int>
    linkageType: ''
    returnType: bool
    signature: bool get_cbor_binary(binary_t& result)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10249,1
    - Dst: start_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10249,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10254,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10258,1
    - Dst: binary_reader::parse_cbor_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10258,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10266,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10268,1
    - Dst: binary_reader::parse_cbor_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10268,1
    - Dst: end_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10275,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - len
    - tag_handler
    argTypes:
    - std::size_t
    - cbor_tag_handler_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10276
      start: 10246
    functionDepth: 5
    functionLinenumber: 10246
    functionLinenumberEnd: 10276
    functionName: binary_reader::get_cbor_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - end_array
    - JSON_HEDLEY_UNLIKELY
    - start_array
    - binary_reader::get
    - binary_reader::parse_cbor_internal
    - static_cast<std::size_t>
    linkageType: ''
    returnType: bool
    signature: "bool get_cbor_array(const std::size_t len,\n                        const
      cbor_tag_handler_t tag_handler)"
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10287,1
    - Dst: start_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10287,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10295,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10299,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10300,1
    - Dst: binary_reader::get_cbor_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10300,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10300,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10305,1
    - Dst: binary_reader::parse_cbor_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10305,1
    - Dst: string_t::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10309,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10314,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10316,1
    - Dst: binary_reader::get_cbor_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10316,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10316,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10321,1
    - Dst: binary_reader::parse_cbor_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10321,1
    - Dst: string_t::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10325,1
    - Dst: end_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10330,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 29
    argCount: 2
    argNames:
    - len
    - tag_handler
    argTypes:
    - std::size_t
    - cbor_tag_handler_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10331
      start: 10284
    functionDepth: 5
    functionLinenumber: 10284
    functionLinenumberEnd: 10331
    functionName: binary_reader::get_cbor_object
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - binary_reader::get_cbor_string
    - start_object
    - JSON_HEDLEY_UNLIKELY
    - binary_reader::get
    - key
    - string_t::clear
    - end_object
    - binary_reader::parse_cbor_internal
    - static_cast<std::size_t>
    linkageType: ''
    returnType: bool
    signature: "bool get_cbor_object(const std::size_t len,\n                         const
      cbor_tag_handler_t tag_handler)"
  - BBCount: 258
    BranchProfiles: []
    Callsites:
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10342,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10345,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10346,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10477,1
    - Dst: static_cast<number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10477,1
    - Dst: binary_reader::get_msgpack_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10496,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10496,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10496,1
    - Dst: binary_reader::get_msgpack_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10515,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10515,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10515,1
    - Dst: binary_reader::get_msgpack_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10555,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10555,1
    - Dst: 'null'
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10559,1
    - Dst: boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10562,1
    - Dst: boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10565,1
    - Dst: binary_reader::get_msgpack_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10580,1
    - Dst: binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10580,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10586,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10586,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10586,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10592,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10592,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10592,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10598,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10598,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10604,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10604,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10610,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10610,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10616,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10616,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10622,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10622,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10628,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10628,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10634,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10634,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10640,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10640,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10646,1
    - Dst: binary_reader::get_msgpack_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10646,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10646,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10652,1
    - Dst: binary_reader::get_msgpack_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10652,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10652,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10658,1
    - Dst: binary_reader::get_msgpack_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10658,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10658,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10664,1
    - Dst: binary_reader::get_msgpack_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10664,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10664,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10700,1
    - Dst: static_cast<std::int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10700,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10704,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10705,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10705,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10706,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10706,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 302
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10709
      start: 10340
    functionDepth: 4
    functionLinenumber: 10340
    functionLinenumberEnd: 10709
    functionName: binary_reader::parse_msgpack_internal
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - unexpect_eof
    - static_cast<number_unsigned_t>
    - boolean
    - number_unsigned
    - binary_reader::get_msgpack_string
    - static_cast<std::int8_t>
    - 'null'
    - string
    - eof
    - number_float
    - binary_reader::exception_message
    - parse_error::create
    - binary_reader::get_msgpack_array
    - binary_reader::get_msgpack_binary
    - static_cast<unsigned int>
    - static_cast<std::size_t>
    - binary_reader::get
    - binary_reader::get_msgpack_object
    - binary_reader::get_token_string
    - concat
    - conditional_static_cast
    - number_integer
    - static_cast<number_float_t>
    - parse_error
    - binary
    - binary_reader::get_number
    linkageType: ''
    returnType: bool
    signature: bool parse_msgpack_internal()
  - BBCount: 38
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10723,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10723,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10764,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10764,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10770,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10770,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10776,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10776,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10782,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10782,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10787,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10788,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10788,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10789,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10789,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 52
    argCount: 1
    argNames:
    - ' result'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10792
      start: 10721
    functionDepth: 4
    functionLinenumber: 10721
    functionLinenumberEnd: 10792
    functionName: binary_reader::get_msgpack_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - unexpect_eof
    - binary_reader::get_string
    - binary_reader::get_token_string
    - parse_error
    - concat
    - binary_reader::exception_message
    - parse_error::create
    - binary_reader::get_number
    - static_cast<unsigned int>
    linkageType: ''
    returnType: bool
    signature: bool get_msgpack_string(string_t& result)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: set_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10809,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10809,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10818,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10819,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10825,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10826,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10832,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10833,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10840,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10841,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10842,1
    - Dst: assign_and_return_true
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10843,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10850,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10851,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10852,1
    - Dst: assign_and_return_true
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10853,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10860,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10861,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10862,1
    - Dst: assign_and_return_true
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10863,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10869,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10870,1
    - Dst: assign_and_return_true
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10871,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10877,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10878,1
    - Dst: assign_and_return_true
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10879,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10885,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10886,1
    - Dst: assign_and_return_true
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10887,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10893,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10894,1
    - Dst: assign_and_return_true
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10895,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10901,1
    - Dst: binary_reader::get_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10902,1
    - Dst: assign_and_return_true
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10903,1
    CyclomaticComplexity: 23
    EdgeCount: 23
    ICount: 41
    argCount: 1
    argNames:
    - ' result'
    argTypes:
    - binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10909
      start: 10804
    functionDepth: 1
    functionLinenumber: 10804
    functionLinenumberEnd: 10909
    functionName: binary_reader::get_msgpack_binary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - set_subtype
    - binary_reader::get_binary
    - assign_and_return_true
    - binary_reader::get_number
    - static_cast<std::uint8_t>
    linkageType: ''
    returnType: bool
    signature: bool get_msgpack_binary(binary_t& result)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10917,1
    - Dst: start_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10917,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10924,1
    - Dst: binary_reader::parse_msgpack_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10924,1
    - Dst: end_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10930,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - len
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10931
      start: 10915
    functionDepth: 5
    functionLinenumber: 10915
    functionLinenumberEnd: 10931
    functionName: binary_reader::get_msgpack_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - end_array
    - binary_reader::parse_msgpack_internal
    - JSON_HEDLEY_UNLIKELY
    - start_array
    linkageType: ''
    returnType: bool
    signature: bool get_msgpack_array(const std::size_t len)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10939,1
    - Dst: start_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10939,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10947,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10948,1
    - Dst: binary_reader::get_msgpack_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10948,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10948,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10953,1
    - Dst: binary_reader::parse_msgpack_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10953,1
    - Dst: string_t::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10957,1
    - Dst: end_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10960,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 1
    argNames:
    - len
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10961
      start: 10937
    functionDepth: 5
    functionLinenumber: 10937
    functionLinenumberEnd: 10961
    functionName: binary_reader::get_msgpack_object
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - start_object
    - JSON_HEDLEY_UNLIKELY
    - binary_reader::get
    - key
    - string_t::clear
    - end_object
    - binary_reader::get_msgpack_string
    - binary_reader::parse_msgpack_internal
    linkageType: ''
    returnType: bool
    signature: bool get_msgpack_object(const std::size_t len)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_reader::get_ubjson_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10976,1
    - Dst: binary_reader::get_ignore_noop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10976,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10977
      start: 10974
    functionDepth: 1
    functionLinenumber: 10974
    functionLinenumberEnd: 10977
    functionName: binary_reader::parse_ubjson_internal
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - binary_reader::get_ignore_noop
    - binary_reader::get_ubjson_value
    linkageType: ''
    returnType: bool
    signature: bool parse_ubjson_internal(const bool get_char = true)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:10997,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11000,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11000,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11010,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11010,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11016,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11016,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11022,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11022,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11028,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11028,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11034,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11034,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11044,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11044,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11054,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11054,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11064,1
    - Dst: binary_reader::get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11064,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11070,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11081,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11081,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11081,1
    CyclomaticComplexity: 19
    EdgeCount: 19
    ICount: 50
    argCount: 1
    argNames:
    - ' result'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11082
      start: 10993
    functionDepth: 4
    functionLinenumber: 10993
    functionLinenumberEnd: 11082
    functionName: binary_reader::get_ubjson_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - unexpect_eof
    - binary_reader::get
    - binary_reader::get_string
    - binary_reader::get_token_string
    - parse_error
    - binary_reader::exception_message
    - parse_error::create
    - binary_reader::get_number
    linkageType: ''
    returnType: bool
    signature: bool get_ubjson_string(string_t& result, const bool get_char = true)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11094,1
    - Dst: binary_reader::get_ubjson_size_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11094,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11107,1
    - Dst: binary_reader::get_ubjson_size_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11107,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11111,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11119,1
    - Dst: binary_reader::get_ubjson_size_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11119,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11123,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11131,1
    - Dst: binary_reader::get_ubjson_size_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11131,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11135,1
    - Dst: binary_reader::get_ignore_noop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11136,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 32
    argCount: 1
    argNames:
    - ' dim'
    argTypes:
    - std::vector<size_t>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11140
      start: 11088
    functionDepth: 1
    functionLinenumber: 11088
    functionLinenumberEnd: 11140
    functionName: binary_reader::get_ubjson_ndarray_size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - binary_reader::get_ubjson_size_type
    - binary_reader::get_ignore_noop
    - JSON_HEDLEY_UNLIKELY
    - push_back
    - binary_reader::get_ubjson_size_value
    linkageType: ''
    returnType: bool
    signature: bool get_ubjson_ndarray_size(std::vector<size_t>& dim)
  - BBCount: 39
    BranchProfiles: []
    Callsites:
    - Dst: binary_reader::get_ignore_noop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11157,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11165,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11165,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11169,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11176,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11176,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11182,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11182,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11182,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11183,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11185,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11192,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11192,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11198,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11198,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11198,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11199,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11201,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11208,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11208,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11214,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11214,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11214,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11215,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11217,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11224,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11224,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11230,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11230,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11230,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11231,1
    - Dst: value_in_range_of
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11233,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11235,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11235,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11235,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11236,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11238,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11249,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11249,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11253,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11264,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11264,1
    - Dst: conditional_static_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11268,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11279,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11279,1
    - Dst: value_in_range_of
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11283,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11285,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11285,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11285,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11286,1
    - Dst: detail::conditional_static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11288,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11300,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11300,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11300,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11300,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11303,1
    - Dst: binary_reader::get_ubjson_ndarray_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11303,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11307,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11307,1
    - Dst: std::vector::at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11307,1
    - Dst: std::vector::at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11309,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11309,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11312,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11324,1
    - Dst: start_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11324,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11324,1
    - Dst: start_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11324,1
    - Dst: std::vector::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11324,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11334,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11334,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11334,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11334,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11336,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11336,1
    - Dst: static_cast<number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11336,1
    - Dst: end_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11342,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11351,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11362,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11362,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11362,1
    CyclomaticComplexity: 41
    EdgeCount: 41
    ICount: 135
    argCount: 2
    argNames:
    - ' result'
    - ' is_ndarray'
    argTypes:
    - std::size_t
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11363
      start: 11153
    functionDepth: 5
    functionLinenumber: 11153
    functionLinenumberEnd: 11363
    functionName: binary_reader::get_ubjson_size_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - static_cast<number_unsigned_t>
    - number_unsigned
    - std::vector::at
    - std::vector::size
    - JSON_HEDLEY_UNLIKELY
    - binary_reader::exception_message
    - parse_error::create
    - static_cast<std::size_t>
    - end_array
    - binary_reader::get_ignore_noop
    - start_object
    - start_array
    - value_in_range_of
    - detail::conditional_static_cast<std::size_t>
    - binary_reader::get_token_string
    - out_of_range::create
    - std::vector::empty
    - binary_reader::get_ubjson_ndarray_size
    - conditional_static_cast
    - key
    - parse_error
    - binary_reader::get_number
    linkageType: ''
    returnType: bool
    signature: bool get_ubjson_size_value(std::size_t& result, bool& is_ndarray, char_int_type
      prefix = 0)
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: binary_reader::get_ignore_noop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11382,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11386,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11388,1
    - Dst: std::binary_search
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11388,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11388,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11388,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11390,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11391,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11391,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11392,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11392,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11395,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11395,1
    - Dst: binary_reader::get_ignore_noop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11400,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11401,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11403,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11403,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11407,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11408,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11408,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11409,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11409,1
    - Dst: binary_reader::get_ubjson_size_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11412,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11417,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11417,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11417,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11418,1
    - Dst: binary_reader::get_ubjson_size_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11427,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11430,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11430,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11430,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11431,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 34
    argCount: 1
    argNames:
    - ' result'
    argTypes:
    - std::pair<std::size_t, char_int_type>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11437
      start: 11376
    functionDepth: 6
    functionLinenumber: 11376
    functionLinenumberEnd: 11437
    functionName: binary_reader::get_ubjson_size_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - binary_reader::get_ignore_noop
    - begin
    - JSON_HEDLEY_UNLIKELY
    - unexpect_eof
    - binary_reader::get
    - std::binary_search
    - binary_reader::get_token_string
    - parse_error
    - concat
    - end
    - parse_error::create
    - binary_reader::exception_message
    - binary_reader::get_ubjson_size_value
    linkageType: ''
    returnType: bool
    signature: bool get_ubjson_size_type(std::pair<std::size_t, char_int_type>& result,
      bool inside_ndarray = false)
  - BBCount: 33
    BranchProfiles: []
    Callsites:
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11447,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11448,1
    - Dst: boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11451,1
    - Dst: boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11453,1
    - Dst: 'null'
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11456,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11461,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11461,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11467,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11467,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11473,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11473,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11479,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11479,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11485,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11485,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11495,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11495,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11505,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11505,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11515,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11515,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11524,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11525,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11525,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11529,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11530,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11530,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11535,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11536,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11546,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11551,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11552,1
    - Dst: std::ldexp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11556,1
    - Dst: std::numeric_limits<double>::infinity
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11559,1
    - Dst: std::numeric_limits<double>::quiet_NaN
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11560,1
    - Dst: std::ldexp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11562,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11565,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11566,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11567,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11573,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11573,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11573,1
    - Dst: binary_reader::get_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11579,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11579,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11579,1
    - Dst: binary_reader::get_ubjson_high_precision_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11584,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11589,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11590,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11590,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11594,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11596,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11597,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11597,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11598,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11598,1
    - Dst: static_cast<typename string_t::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11600,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11601,1
    - Dst: binary_reader::get_ubjson_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11607,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11607,1
    - Dst: binary_reader::get_ubjson_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11611,1
    - Dst: binary_reader::get_ubjson_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11614,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11619,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11620,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11620,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11620,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 96
    argCount: 1
    argNames:
    - prefix
    argTypes:
    - char_int_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11621
      start: 11443
    functionDepth: 5
    functionLinenumber: 11443
    functionLinenumberEnd: 11621
    functionName: binary_reader::get_ubjson_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - binary_reader::get_ubjson_string
    - binary_reader::get_ubjson_object
    - unexpect_eof
    - binary_reader::get_ubjson_array
    - boolean
    - number_unsigned
    - static_cast<unsigned char>
    - 'null'
    - JSON_HEDLEY_UNLIKELY
    - string
    - eof
    - std::numeric_limits<double>::infinity
    - number_float
    - binary_reader::exception_message
    - parse_error::create
    - JSON_ASSERT
    - static_cast<unsigned int>
    - binary_reader::get
    - binary_reader::get_token_string
    - binary_reader::get_ubjson_high_precision_number
    - concat
    - std::numeric_limits<double>::quiet_NaN
    - static_cast<typename string_t::value_type>
    - number_integer
    - std::ldexp
    - static_cast<number_float_t>
    - parse_error
    - binary_reader::get_number
    linkageType: ''
    returnType: bool
    signature: bool get_ubjson_value(const char_int_type prefix)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11629,1
    - Dst: binary_reader::get_ubjson_size_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11629,1
    - Dst: static_cast<char_int_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11639,1
    - Dst: std::lower_bound
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11640,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11640,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11640,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11645,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11645,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11647,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11648,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11648,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11649,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11653,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11653,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11653,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11664,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11664,1
    - Dst: start_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11664,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11671,1
    - Dst: binary_reader::get_ubjson_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11671,1
    - Dst: end_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11677,1
    - Dst: end_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11677,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11682,1
    - Dst: start_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11682,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11693,1
    - Dst: binary_reader::get_ubjson_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11693,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11704,1
    - Dst: binary_reader::parse_ubjson_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11704,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11713,1
    - Dst: start_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11713,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11713,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11720,1
    - Dst: binary_reader::parse_ubjson_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11720,1
    - Dst: binary_reader::get_ignore_noop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11724,1
    - Dst: end_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11728,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 59
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11729
      start: 11626
    functionDepth: 7
    functionLinenumber: 11626
    functionLinenumberEnd: 11729
    functionName: binary_reader::get_ubjson_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - binary_reader::get_ubjson_size_type
    - begin
    - end_object
    - binary_reader::parse_ubjson_internal
    - JSON_HEDLEY_UNLIKELY
    - std::lower_bound
    - string
    - binary_reader::exception_message
    - parse_error::create
    - static_cast<std::size_t>
    - end_array
    - binary_reader::get_ignore_noop
    - start_array
    - static_cast<char_int_type>
    - binary_reader::get_token_string
    - end
    - key
    - parse_error
    - binary_reader::get_ubjson_value
    linkageType: ''
    returnType: bool
    signature: bool get_ubjson_array()
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11737,1
    - Dst: binary_reader::get_ubjson_size_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11737,1
    - Dst: binary_reader::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11745,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11746,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11746,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11747,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11753,1
    - Dst: start_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11753,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11762,1
    - Dst: binary_reader::get_ubjson_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11762,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11762,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11766,1
    - Dst: binary_reader::get_ubjson_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11766,1
    - Dst: string_t::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11770,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11777,1
    - Dst: binary_reader::get_ubjson_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11777,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11777,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11781,1
    - Dst: binary_reader::parse_ubjson_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11781,1
    - Dst: string_t::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11785,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11791,1
    - Dst: start_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11791,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11791,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11798,1
    - Dst: binary_reader::get_ubjson_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11798,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11798,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11802,1
    - Dst: binary_reader::parse_ubjson_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11802,1
    - Dst: binary_reader::get_ignore_noop
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11806,1
    - Dst: string_t::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11807,1
    - Dst: end_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11811,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 48
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11812
      start: 11734
    functionDepth: 7
    functionLinenumber: 11734
    functionLinenumberEnd: 11812
    functionName: binary_reader::get_ubjson_object
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - binary_reader::parse_ubjson_internal
    - binary_reader::get_ubjson_size_type
    - start_object
    - JSON_HEDLEY_UNLIKELY
    - binary_reader::get_ubjson_string
    - binary_reader::get_ignore_noop
    - key
    - binary_reader::get_token_string
    - parse_error
    - binary_reader::get_ubjson_value
    - string_t::clear
    - end_object
    - binary_reader::exception_message
    - parse_error::create
    - static_cast<std::size_t>
    linkageType: ''
    returnType: bool
    signature: bool get_ubjson_object()
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: binary_reader::get_ubjson_size_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11822,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11823,1
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11832,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11833,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11833,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11837,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11837,1
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11841,1
    - Dst: detail::lexer<BasicJsonType, ia_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11842,1
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11842,1
    - Dst: auto::scan
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11843,1
    - Dst: auto::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11844,1
    - Dst: auto::scan
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11845,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11849,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11851,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11851,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11852,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11852,1
    - Dst: auto::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11852,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11858,1
    - Dst: auto::get_number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11858,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11860,1
    - Dst: auto::get_number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11860,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11862,1
    - Dst: auto::get_number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11862,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11862,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11878,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11878,1
    - Dst: binary_reader::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11879,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11879,1
    - Dst: auto::get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11879,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11881
      start: 11817
    functionDepth: 6
    functionLinenumber: 11817
    functionLinenumberEnd: 11881
    functionName: binary_reader::get_ubjson_high_precision_number
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - auto::get_number_unsigned
    - unexpect_eof
    - file_input_adapter
    - number_unsigned
    - auto::scan
    - auto::get_number_float
    - static_cast<char>
    - JSON_HEDLEY_UNLIKELY
    - number_float
    - binary_reader::exception_message
    - parse_error::create
    - auto::get_token_string
    - binary_reader::get
    - concat
    - auto::get_number_integer
    - binary_reader::get_ubjson_size_value
    - number_integer
    - std::move
    - detail::lexer<BasicJsonType, ia_type>
    - parse_error
    - std::vector::push_back
    linkageType: ''
    returnType: bool
    signature: bool get_ubjson_high_precision_number()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11899,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11900
      start: 11896
    functionDepth: 1
    functionLinenumber: 11896
    functionLinenumberEnd: 11900
    functionName: binary_reader::get
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 15
    functionsReached:
    - get_character
    linkageType: ''
    returnType: char_int_type
    signature: char_int_type get()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11909,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11914
      start: 11905
    functionDepth: 0
    functionLinenumber: 11905
    functionLinenumberEnd: 11914
    functionName: binary_reader::get_ignore_noop
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 6
    functionsReached:
    - binary_reader::get
    linkageType: ''
    returnType: char_int_type
    signature: char_int_type get_ignore_noop()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11938,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11939,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11939,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11947,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11951,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11956,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11956,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 2
    argNames:
    - format
    - ' result'
    argTypes:
    - input_format_t
    - NumberType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11958
      start: 11932
    functionDepth: 1
    functionLinenumber: 11932
    functionLinenumberEnd: 11958
    functionName: binary_reader::get_number
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 13
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - std::array::data
    - unexpect_eof
    - binary_reader::get
    - std::memcpy
    - static_cast<std::uint8_t>
    linkageType: ''
    returnType: bool
    signature: bool get_number(const input_format_t format, NumberType& result)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11982,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11983,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11983,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11988,1
    - Dst: static_cast<typename string_t::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:11988,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - format
    - len
    - ' result'
    argTypes:
    - input_format_t
    - NumberType
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11991
      start: 11975
    functionDepth: 1
    functionLinenumber: 11975
    functionLinenumberEnd: 11991
    functionName: binary_reader::get_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - unexpect_eof
    - binary_reader::get
    - push_back
    - static_cast<typename string_t::value_type>
    linkageType: ''
    returnType: bool
    signature: "bool get_string(const input_format_t format,\n                    const
      NumberType len,\n                    string_t& result)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: binary_reader::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12015,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12016,1
    - Dst: unexpect_eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12016,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12021,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12021,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 3
    argNames:
    - format
    - len
    - ' result'
    argTypes:
    - input_format_t
    - NumberType
    - binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12024
      start: 12008
    functionDepth: 1
    functionLinenumber: 12008
    functionLinenumberEnd: 12024
    functionName: binary_reader::get_binary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - unexpect_eof
    - binary_reader::get
    - push_back
    - static_cast<std::uint8_t>
    linkageType: ''
    returnType: bool
    signature: "bool get_binary(const input_format_t format,\n                    const
      NumberType len,\n                    binary_t& result)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12034,1
    - Dst: eof
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12034,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12036,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12037,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12037,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - format
    - context
    argTypes:
    - input_format_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12040
      start: 12031
    functionDepth: 4
    functionLinenumber: 12031
    functionLinenumberEnd: 12040
    functionName: "(3)\n    bool unexpect_eof(const input_format_t format, const char*
      context) const"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - parse_error
    - eof
    - exception_message
    - parse_error::create
    linkageType: ''
    returnType: JSON_HEDLEY_NON_NULL
    signature: "JSON_HEDLEY_NON_NULL (3)\n    bool unexpect_eof(const input_format_t
      format, const char* context) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12048,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12048,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12048,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12048,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12049,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12050
      start: 12045
    functionDepth: 1
    functionLinenumber: 12045
    functionLinenumberEnd: 12050
    functionName: binary_reader::get_token_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 13
    functionsReached:
    - static_cast<void>
    - std::array::size
    - static_cast<unsigned char>
    - std::array::data
    linkageType: ''
    returnType: std::string
    signature: std::string get_token_string() const
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12088,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12091,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 3
    argNames:
    - format
    - ' detail'
    - ' context'
    argTypes:
    - input_format_t
    - std::string
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12092
      start: 12058
    functionDepth: 2
    functionLinenumber: 12058
    functionLinenumberEnd: 12092
    functionName: binary_reader::exception_message
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 14
    functionsReached:
    - JSON_ASSERT
    - concat
    linkageType: ''
    returnType: std::string
    signature: "std::string exception_message(const input_format_t format,\n                                  const
      std::string& detail,\n                                  const std::string& context)
      const"
  - BBCount: 59
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12244,1
    - Dst: get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12248,1
    - Dst: sax_parse_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12266,1
    - Dst: get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12269,1
    - Dst: json_sax_dom_callback_parser::parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12271,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12271,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12272,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12273,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12273,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12274,1
    - Dst: json_sax_dom_callback_parser::is_errored
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12278,1
    - Dst: is_discarded
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12286,1
    - Dst: sax_parse_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12294,1
    - Dst: get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12297,1
    - Dst: json_sax_dom_parser::parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12299,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12299,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12300,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12301,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12301,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12301,1
    - Dst: json_sax_dom_parser::is_errored
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12305,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12312,1
    - Dst: sax_parse
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12324,1
    - Dst: sax_parse_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12332,1
    - Dst: get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12335,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12337,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12337,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12338,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12339,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12339,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12339,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12365,1
    - Dst: start_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12365,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12365,1
    - Dst: get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12371,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12373,1
    - Dst: end_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12373,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12381,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12383,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12383,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12384,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12385,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12385,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12385,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12387,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12387,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12387,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12393,1
    - Dst: get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12393,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12395,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12395,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12396,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12397,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12397,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12397,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12401,1
    - Dst: get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12404,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12410,1
    - Dst: start_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12410,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12410,1
    - Dst: get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12416,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12418,1
    - Dst: end_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12418,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12426,1
    - Dst: get_number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12434,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12436,1
    - Dst: std::isfinite
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12436,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12438,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12438,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12439,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12440,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12440,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12440,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12443,1
    - Dst: number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12443,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12443,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12453,1
    - Dst: boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12453,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12462,1
    - Dst: 'null'
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12462,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12471,1
    - Dst: boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12471,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12480,1
    - Dst: number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12480,1
    - Dst: get_number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12480,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12489,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12489,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12489,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12498,1
    - Dst: number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12498,1
    - Dst: get_number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12498,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12508,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12508,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12509,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12510,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12510,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12510,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12514,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12514,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12516,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12516,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12517,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12518,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12518,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12522,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12522,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12523,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12524,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12524,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12524,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12534,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12534,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12535,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12536,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12536,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12536,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12546,1
    - Dst: std::vector::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12552,1
    - Dst: get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12555,1
    - Dst: get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12558,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12563,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12565,1
    - Dst: end_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12565,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12574,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12574,1
    - Dst: std::vector::pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12575,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12580,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12580,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12581,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12582,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12582,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12582,1
    - Dst: get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12588,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12591,1
    - Dst: get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12591,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12593,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12593,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12594,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12595,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12595,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12595,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12598,1
    - Dst: key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12598,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12598,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12604,1
    - Dst: get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12604,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12606,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12606,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12607,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12608,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12608,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12608,1
    - Dst: get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12612,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12617,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12619,1
    - Dst: end_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12619,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12628,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12628,1
    - Dst: std::vector::pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12629,1
    - Dst: parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12634,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12634,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12635,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12636,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12636,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12636,1
    - Dst: scan
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12643,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12650,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12652,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12659,1
    - Dst: get_error_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12659,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12660,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12664,1
    - Dst: lexer_base::token_type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12664,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12669,1
    - Dst: lexer_base::token_type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12669,1
    CyclomaticComplexity: 62
    EdgeCount: 62
    ICount: 201
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12686
      start: 12195
    functionDepth: 5
    functionLinenumber: 12195
    functionLinenumberEnd: 12686
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - boolean
    - sax_parse_internal
    - end_object
    - number_unsigned
    - get_number_float
    - empty
    - get_error_message
    - std::vector::back
    - lexer_base::token_type_name
    - 'null'
    - get_position
    - JSON_HEDLEY_UNLIKELY
    - string
    - get_string
    - std::vector::pop_back
    - number_float
    - parse_error::create
    - get_token
    - JSON_ASSERT
    - static_cast<std::size_t>
    - end_array
    - get_token_string
    - start_object
    - start_array
    - out_of_range::create
    - std::isfinite
    - concat
    - exception_message
    - get_number_unsigned
    - std::vector::empty
    - json_sax_dom_callback_parser::is_errored
    - json_sax_dom_callback_parser::parse_error
    - json_sax_dom_parser::is_errored
    - number_integer
    - get_number_integer
    - std::move
    - key
    - scan
    - parse_error
    - assert_invariant
    - json_sax_dom_parser::parse_error
    - JSON_HEDLEY_LIKELY
    - sax_parse
    - is_discarded
    - std::vector::push_back
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12244,1
    - Dst: parser::get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12248,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' adapter'
    argTypes:
    - InputAdapterType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12249
      start: 12239
    functionDepth: 1
    functionLinenumber: 12239
    functionLinenumberEnd: 12249
    functionName: parser::parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - parser::get_token
    - std::move
    linkageType: ''
    returnType: void
    signature: "void parser(InputAdapterType&& adapter,\n                    const
      parser_callback_t<BasicJsonType> cb = nullptr,\n                    const bool
      allow_exceptions_ = true,\n                    const bool skip_comments = false)"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: parser::sax_parse_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12266,1
    - Dst: parser::get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12269,1
    - Dst: json_sax_dom_callback_parser::parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12271,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12271,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12272,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12273,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12273,1
    - Dst: parser::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12274,1
    - Dst: json_sax_dom_callback_parser::is_errored
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12278,1
    - Dst: is_discarded
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12286,1
    - Dst: parser::sax_parse_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12294,1
    - Dst: parser::get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12297,1
    - Dst: json_sax_dom_parser::parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12299,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12299,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12300,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12301,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12301,1
    - Dst: parser::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12301,1
    - Dst: json_sax_dom_parser::is_errored
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12305,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12312,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 24
    argCount: 2
    argNames:
    - strict
    - ' result'
    argTypes:
    - bool
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12313
      start: 12261
    functionDepth: 4
    functionLinenumber: 12261
    functionLinenumberEnd: 12313
    functionName: parser::parse
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 15
    functionsReached:
    - get_token_string
    - get_position
    - parser::sax_parse_internal
    - assert_invariant
    - json_sax_dom_parser::parse_error
    - parser::exception_message
    - parse_error::create
    - is_discarded
    - json_sax_dom_callback_parser::is_errored
    - parser::get_token
    - json_sax_dom_callback_parser::parse_error
    - json_sax_dom_parser::is_errored
    linkageType: ''
    returnType: void
    signature: void parse(const bool strict, BasicJsonType& result)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: sax_parse
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12324,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12325
      start: 12321
    functionDepth: 1
    functionLinenumber: 12321
    functionLinenumberEnd: 12325
    functionName: parser::accept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - sax_parse
    linkageType: ''
    returnType: bool
    signature: bool accept(const bool strict = true)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: sax_parse_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12332,1
    - Dst: get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12335,1
    - Dst: SAX*::parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12337,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12337,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12338,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12339,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12339,1
    - Dst: exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12339,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - sax
    argTypes:
    - SAX*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12343
      start: 12328
    functionDepth: 4
    functionLinenumber: 12328
    functionLinenumberEnd: 12343
    functionName: "(2)\n    bool sax_parse(SAX* sax, const bool strict = true)"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get_token_string
    - get_position
    - sax_parse_internal
    - exception_message
    - parse_error::create
    - get_token
    - SAX*::parse_error
    linkageType: ''
    returnType: JSON_HEDLEY_NON_NULL
    signature: "JSON_HEDLEY_NON_NULL (2)\n    bool sax_parse(SAX* sax, const bool
      strict = true)"
  - BBCount: 49
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12365,1
    - Dst: SAX*::start_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12365,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12365,1
    - Dst: parser::get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12371,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12373,1
    - Dst: SAX*::end_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12373,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12381,1
    - Dst: SAX*::parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12383,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12383,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12384,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12385,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12385,1
    - Dst: parser::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12385,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12387,1
    - Dst: SAX*::key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12387,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12387,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12393,1
    - Dst: parser::get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12393,1
    - Dst: SAX*::parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12395,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12395,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12396,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12397,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12397,1
    - Dst: parser::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12397,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12401,1
    - Dst: parser::get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12404,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12410,1
    - Dst: SAX*::start_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12410,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12410,1
    - Dst: parser::get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12416,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12418,1
    - Dst: SAX*::end_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12418,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12426,1
    - Dst: get_number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12434,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12436,1
    - Dst: std::isfinite
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12436,1
    - Dst: SAX*::parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12438,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12438,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12439,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12440,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12440,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12440,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12443,1
    - Dst: SAX*::number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12443,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12443,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12453,1
    - Dst: SAX*::boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12453,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12462,1
    - Dst: SAX*::null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12462,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12471,1
    - Dst: SAX*::boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12471,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12480,1
    - Dst: SAX*::number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12480,1
    - Dst: get_number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12480,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12489,1
    - Dst: SAX*::string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12489,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12489,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12498,1
    - Dst: SAX*::number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12498,1
    - Dst: get_number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12498,1
    - Dst: SAX*::parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12508,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12508,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12509,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12510,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12510,1
    - Dst: parser::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12510,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12514,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12514,1
    - Dst: SAX*::parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12516,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12516,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12517,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12518,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12518,1
    - Dst: SAX*::parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12522,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12522,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12523,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12524,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12524,1
    - Dst: parser::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12524,1
    - Dst: SAX*::parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12534,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12534,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12535,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12536,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12536,1
    - Dst: parser::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12536,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12546,1
    - Dst: std::vector::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12552,1
    - Dst: parser::get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12555,1
    - Dst: parser::get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12558,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12563,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12565,1
    - Dst: SAX*::end_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12565,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12574,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12574,1
    - Dst: std::vector::pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12575,1
    - Dst: SAX*::parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12580,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12580,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12581,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12582,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12582,1
    - Dst: parser::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12582,1
    - Dst: parser::get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12588,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12591,1
    - Dst: parser::get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12591,1
    - Dst: SAX*::parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12593,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12593,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12594,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12595,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12595,1
    - Dst: parser::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12595,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12598,1
    - Dst: SAX*::key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12598,1
    - Dst: get_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12598,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12604,1
    - Dst: parser::get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12604,1
    - Dst: SAX*::parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12606,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12606,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12607,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12608,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12608,1
    - Dst: parser::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12608,1
    - Dst: parser::get_token
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12612,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12617,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12619,1
    - Dst: SAX*::end_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12619,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12628,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12628,1
    - Dst: std::vector::pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12629,1
    - Dst: SAX*::parse_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12634,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12634,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12635,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12636,1
    - Dst: get_position
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12636,1
    - Dst: parser::exception_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12636,1
    CyclomaticComplexity: 47
    EdgeCount: 47
    ICount: 150
    argCount: 1
    argNames:
    - sax
    argTypes:
    - SAX*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12638
      start: 12348
    functionDepth: 5
    functionLinenumber: 12348
    functionLinenumberEnd: 12638
    functionName: parser::sax_parse_internal
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - SAX*::end_array
    - SAX*::end_object
    - SAX*::null
    - get_number_float
    - parser::exception_message
    - SAX*::string
    - std::vector::back
    - JSON_HEDLEY_UNLIKELY
    - get_position
    - SAX*::number_unsigned
    - SAX*::boolean
    - get_string
    - std::vector::pop_back
    - parse_error::create
    - JSON_ASSERT
    - parser::get_token
    - static_cast<std::size_t>
    - get_token_string
    - SAX*::key
    - out_of_range::create
    - std::isfinite
    - concat
    - SAX*::number_float
    - get_number_unsigned
    - std::vector::empty
    - SAX*::parse_error
    - SAX*::start_object
    - get_number_integer
    - JSON_HEDLEY_LIKELY
    - SAX*::start_array
    - SAX*::number_integer
    - std::vector::push_back
    linkageType: ''
    returnType: bool
    signature: bool sax_parse_internal(SAX* sax)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: scan
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12643,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12644
      start: 12641
    functionDepth: 4
    functionLinenumber: 12641
    functionLinenumberEnd: 12644
    functionName: parser::get_token
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - scan
    linkageType: ''
    returnType: token_type
    signature: token_type get_token()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12650,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12652,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12659,1
    - Dst: get_error_message
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12659,1
    - Dst: get_token_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12660,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12664,1
    - Dst: lexer_base::token_type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12664,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12669,1
    - Dst: lexer_base::token_type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12669,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 2
    argNames:
    - expected
    - ' context'
    argTypes:
    - token_type
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12673
      start: 12646
    functionDepth: 2
    functionLinenumber: 12646
    functionLinenumberEnd: 12673
    functionName: parser::exception_message
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - get_token_string
    - concat
    - empty
    - lexer_base::token_type_name
    - get_error_message
    linkageType: ''
    returnType: std::string
    signature: std::string exception_message(const token_type expected, const std::string&
      context)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 38
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12834
      start: 12719
    functionDepth: 0
    functionLinenumber: 12719
    functionLinenumberEnd: 12834
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12747
      start: 12744
    functionDepth: 0
    functionLinenumber: 12744
    functionLinenumberEnd: 12747
    functionName: primitive_iterator_t::get_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: difference_type
    signature: difference_type get_value() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12753
      start: 12750
    functionDepth: 0
    functionLinenumber: 12750
    functionLinenumberEnd: 12753
    functionName: primitive_iterator_t::set_begin
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_begin() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12759
      start: 12756
    functionDepth: 0
    functionLinenumber: 12756
    functionLinenumberEnd: 12759
    functionName: primitive_iterator_t::set_end
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_end() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12765
      start: 12762
    functionDepth: 0
    functionLinenumber: 12762
    functionLinenumberEnd: 12765
    functionName: primitive_iterator_t::is_begin
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_begin() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12771
      start: 12768
    functionDepth: 0
    functionLinenumber: 12768
    functionLinenumberEnd: 12771
    functionName: primitive_iterator_t::is_end
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_end() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - primitive_iterator_t
    - primitive_iterator_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12776
      start: 12773
    functionDepth: 0
    functionLinenumber: 12773
    functionLinenumberEnd: 12776
    functionName: operator==(primitive_iterator_t lhs, primitive_iterator_t rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(primitive_iterator_t lhs, primitive_iterator_t rhs)
      noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - primitive_iterator_t
    - primitive_iterator_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12781
      start: 12778
    functionDepth: 0
    functionLinenumber: 12778
    functionLinenumberEnd: 12781
    functionName: operator<(primitive_iterator_t lhs, primitive_iterator_t rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<(primitive_iterator_t lhs, primitive_iterator_t rhs)
      noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - difference_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12788
      start: 12783
    functionDepth: 0
    functionLinenumber: 12783
    functionLinenumberEnd: 12788
    functionName: operator+(difference_type n) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: primitive_iterator_t
    signature: primitive_iterator_t operator+(difference_type n) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - primitive_iterator_t
    - primitive_iterator_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12793
      start: 12790
    functionDepth: 0
    functionLinenumber: 12790
    functionLinenumberEnd: 12793
    functionName: operator-(primitive_iterator_t lhs, primitive_iterator_t rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: difference_type
    signature: difference_type operator-(primitive_iterator_t lhs, primitive_iterator_t
      rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12799
      start: 12795
    functionDepth: 0
    functionLinenumber: 12795
    functionLinenumberEnd: 12799
    functionName: '& operator++() noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: primitive_iterator_t
    signature: primitive_iterator_t & operator++() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12806
      start: 12801
    functionDepth: 0
    functionLinenumber: 12801
    functionLinenumberEnd: 12806
    functionName: operator++(int)& noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: primitive_iterator_t
    signature: primitive_iterator_t operator++(int)& noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12812
      start: 12808
    functionDepth: 0
    functionLinenumber: 12808
    functionLinenumberEnd: 12812
    functionName: '& operator--() noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: primitive_iterator_t
    signature: primitive_iterator_t & operator--() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12819
      start: 12814
    functionDepth: 0
    functionLinenumber: 12814
    functionLinenumberEnd: 12819
    functionName: operator--(int)& noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: primitive_iterator_t
    signature: primitive_iterator_t operator--(int)& noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - difference_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12825
      start: 12821
    functionDepth: 0
    functionLinenumber: 12821
    functionLinenumberEnd: 12825
    functionName: '& operator+=(difference_type n) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: primitive_iterator_t
    signature: primitive_iterator_t & operator+=(difference_type n) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - n
    argTypes:
    - difference_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12831
      start: 12827
    functionDepth: 0
    functionLinenumber: 12827
    functionLinenumberEnd: 12831
    functionName: '& operator-=(difference_type n) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: primitive_iterator_t
    signature: primitive_iterator_t & operator-=(difference_type n) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12858
      start: 12835
    functionDepth: 0
    functionLinenumber: 12835
    functionLinenumberEnd: 12858
    functionName: NLOHMANN_JSON_NAMESPACE_BEGIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_END
    signature: NLOHMANN_JSON_NAMESPACE_END NLOHMANN_JSON_NAMESPACE_BEGIN
  - BBCount: 47
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12970,1
    - Dst: json_reverse_iterator::json_reverse_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12976,1
    - Dst: json_reverse_iterator::json_reverse_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12982,1
    - Dst: primitive_iterator_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12996,1
    - Dst: set_begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13065,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13067,1
    - Dst: m_data::m_value::object::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13073,1
    - Dst: m_data::m_value::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13079,1
    - Dst: primitive_iterator::set_end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13086,1
    - Dst: primitive_iterator::set_begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13099,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13111,1
    - Dst: m_data::m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13117,1
    - Dst: m_data::m_value::array::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13123,1
    - Dst: primitive_iterator::set_end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13137,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13150,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13156,1
    - Dst: m_data::m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13156,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13162,1
    - Dst: m_data::m_value::array::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13162,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13167,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13167,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13178,1
    - Dst: primitive_iterator::is_begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13178,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13183,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13183,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 112
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13186
      start: 12890
    functionDepth: 4
    functionLinenumber: 12890
    functionLinenumberEnd: 13186
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - set_begin
    - json_reverse_iterator::json_reverse_iterator
    - primitive_iterator::set_begin
    - primitive_iterator::set_end
    - primitive_iterator::is_begin
    - JSON_HEDLEY_LIKELY
    - m_data::m_value::object::begin
    - invalid_iterator::create
    - m_data::m_value::array::end
    - m_data::m_value::array::begin
    - m_data::m_value::object::end
    - JSON_THROW
    - JSON_ASSERT
    - primitive_iterator_t
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 35
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12970,1
    - Dst: json_reverse_iterator::json_reverse_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12976,1
    - Dst: json_reverse_iterator::json_reverse_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12982,1
    - Dst: primitive_iterator_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12996,1
    - Dst: set_begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13065,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13067,1
    - Dst: m_data::m_value::object::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13073,1
    - Dst: m_data::m_value::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13079,1
    - Dst: primitive_iterator::set_end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13086,1
    - Dst: primitive_iterator::set_begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13099,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13111,1
    - Dst: m_data::m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13117,1
    - Dst: m_data::m_value::array::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13123,1
    - Dst: primitive_iterator::set_end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13137,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 84
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13141
      start: 12915
    functionDepth: 1
    functionLinenumber: 12915
    functionLinenumberEnd: 13141
    functionName: set_end
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - set_begin
    - json_reverse_iterator::json_reverse_iterator
    - primitive_iterator::set_begin
    - primitive_iterator::set_end
    - m_data::m_value::object::begin
    - m_data::m_value::array::end
    - m_data::m_value::array::begin
    - m_data::m_value::object::end
    - JSON_ASSERT
    - primitive_iterator_t
    linkageType: ''
    returnType: "class iter_impl // NOLINT(cppcoreguidelines-special-member-functions,hicpp-special-member-functions)\n{\n
      \   /// the iterator with BasicJsonType of different const-ness\n    using other_iter_impl
      = iter_impl<typename std::conditional<std::is_const<BasicJsonType>::value, typename
      std::remove_const<BasicJsonType>::type, const BasicJsonType>::type>;\n    ///
      allow basic_json to access private members\n    friend other_iter_impl;\n    friend
      BasicJsonType;\n    friend iteration_proxy<iter_impl>;\n    friend iteration_proxy_value<iter_impl>;\n\n
      \   using object_t = typename BasicJsonType::object_t;\n    using array_t =
      typename BasicJsonType::array_t;\n    // make sure BasicJsonType is basic_json
      or const basic_json\n    static_assert(is_basic_json<typename std::remove_const<BasicJsonType>::type>::value,\n
      \                 \"iter_impl only accepts (const) basic_json\");\n    // superficial
      check for the LegacyBidirectionalIterator named requirement\n    static_assert(std::is_base_of<std::bidirectional_iterator_tag,
      std::bidirectional_iterator_tag>::value\n                  &&  std::is_base_of<std::bidirectional_iterator_tag,
      typename std::iterator_traits<typename array_t::iterator>::iterator_category>::value,\n
      \                 \"basic_json iterator assumes array and object type iterators
      satisfy the LegacyBidirectionalIterator named requirement.\");\n\n  public:\n
      \   /// The std::iterator class template (used as a base class to provide typedefs)
      is deprecated in C++17.\n    /// The C++ Standard has never required user-defined
      iterators to derive from std::iterator.\n    /// A user-defined iterator should
      provide publicly accessible typedefs named\n    /// iterator_category, value_type,
      difference_type, pointer, and reference.\n    /// Note that value_type is required
      to be non-const, even for constant iterators.\n    using iterator_category =
      std::bidirectional_iterator_tag;\n\n    /// the type of the values when the
      iterator is dereferenced\n    using value_type = typename BasicJsonType::value_type;\n
      \   /// a type to represent differences between iterators\n    using difference_type
      = typename BasicJsonType::difference_type;\n    /// defines a pointer to the
      type iterated over (value_type)\n    using pointer = typename std::conditional<std::is_const<BasicJsonType>::value,\n
      \         typename BasicJsonType::const_pointer,\n          typename BasicJsonType::pointer>::type;\n
      \   /// defines a reference to the type iterated over (value_type)\n    using
      reference =\n        typename std::conditional<std::is_const<BasicJsonType>::value,\n
      \       typename BasicJsonType::const_reference,\n        typename BasicJsonType::reference>::type;\n\n
      \   iter_impl() = default;\n    ~iter_impl() = default;\n    iter_impl(iter_impl&&)
      noexcept = default;\n    iter_impl& operator=(iter_impl&&) noexcept = default;\n\n
      \   /*!\n    @brief constructor for a given JSON instance\n    @param[in] object
      \ pointer to a JSON object for this iterator\n    @pre object != nullptr\n    @post
      The iterator is initialized; i.e. `m_object != nullptr`.\n    */\n    explicit
      iter_impl(pointer object) noexcept : m_object(object)\n    {\n        JSON_ASSERT(m_object
      != nullptr);\n\n        switch (m_object->m_data.m_type)\n        {\n            case
      value_t::object:\n            {\n                m_it.object_iterator = typename
      object_t::iterator();\n                break;\n            }\n\n            case
      value_t::array:\n            {\n                m_it.array_iterator = typename
      array_t::iterator();\n                break;\n            }\n\n            case
      value_t::null:\n            case value_t::string:\n            case value_t::boolean:\n
      \           case value_t::number_integer:\n            case value_t::number_unsigned:\n
      \           case value_t::number_float:\n            case value_t::binary:\n
      \           case value_t::discarded:\n            default:\n            {\n
      \               m_it.primitive_iterator = primitive_iterator_t();\n                break;\n
      \           }\n        }\n    }\n\n    /*!\n    @note The conventional copy
      constructor and copy assignment are implicitly\n          defined. Combined
      with the following converting constructor and\n          assignment, they support:
      (1) copy from iterator to iterator, (2)\n          copy from const iterator
      to const iterator, and (3) conversion from\n          iterator to const iterator.
      However conversion from const iterator\n          to iterator is not defined.\n
      \   */\n\n    /*!\n    @brief const copy constructor\n    @param[in] other const
      iterator to copy from\n    @note This copy constructor had to be defined explicitly
      to circumvent a bug\n          occurring on msvc v19.0 compiler (VS 2015) debug
      build. For more\n          information refer to: https://github.com/nlohmann/json/issues/1608\n
      \   */\n    iter_impl(const iter_impl<const BasicJsonType>& other) noexcept\n
      \       : m_object(other.m_object), m_it(other.m_it)\n    {}\n\n    /*!\n    @brief
      converting assignment\n    @param[in] other const iterator to copy from\n    @return
      const/non-const iterator\n    @note It is not checked whether @a other is initialized.\n
      \   */\n    iter_impl& operator=(const iter_impl<const BasicJsonType>& other)
      noexcept\n    {\n        if (&other != this)\n        {\n            m_object
      = other.m_object;\n            m_it = other.m_it;\n        }\n        return
      *this;\n    }\n\n    /*!\n    @brief converting constructor\n    @param[in]
      other  non-const iterator to copy from\n    @note It is not checked whether
      @a other is initialized.\n    */\n    iter_impl(const iter_impl<typename std::remove_const<BasicJsonType>::type>&
      other) noexcept\n        : m_object(other.m_object), m_it(other.m_it)\n    {}\n\n
      \   /*!\n    @brief converting assignment\n    @param[in] other  non-const iterator
      to copy from\n    @return const/non-const iterator\n    @note It is not checked
      whether @a other is initialized.\n    */\n    iter_impl& operator=(const iter_impl<typename
      std::remove_const<BasicJsonType>::type>& other) noexcept // NOLINT(cert-oop54-cpp)\n
      \   {\n        m_object = other.m_object;\n        m_it = other.m_it;\n        return
      *this;\n    }\n\n  JSON_PRIVATE_UNLESS_TESTED:\n    /*!\n    @brief set the
      iterator to the first value\n    @pre The iterator is initialized; i.e. `m_object
      != nullptr`.\n    */\n    void set_begin() noexcept\n    {\n        JSON_ASSERT(m_object
      != nullptr);\n\n        switch (m_object->m_data.m_type)\n        {\n            case
      value_t::object:\n            {\n                m_it.object_iterator = m_object->m_data.m_value.object->begin();\n
      \               break;\n            }\n\n            case value_t::array:\n
      \           {\n                m_it.array_iterator = m_object->m_data.m_value.array->begin();\n
      \               break;\n            }\n\n            case value_t::null:\n            {\n
      \               // set to end so begin()==end() is true: null is empty\n                m_it.primitive_iterator.set_end();\n
      \               break;\n            }\n\n            case value_t::string:\n
      \           case value_t::boolean:\n            case value_t::number_integer:\n
      \           case value_t::number_unsigned:\n            case value_t::number_float:\n
      \           case value_t::binary:\n            case value_t::discarded:\n            default:\n
      \           {\n                m_it.primitive_iterator.set_begin();\n                break;\n
      \           }\n        }\n    }"
    signature: "class iter_impl // NOLINT(cppcoreguidelines-special-member-functions,hicpp-special-member-functions)\n{\n
      \   /// the iterator with BasicJsonType of different const-ness\n    using other_iter_impl
      = iter_impl<typename std::conditional<std::is_const<BasicJsonType>::value, typename
      std::remove_const<BasicJsonType>::type, const BasicJsonType>::type>;\n    ///
      allow basic_json to access private members\n    friend other_iter_impl;\n    friend
      BasicJsonType;\n    friend iteration_proxy<iter_impl>;\n    friend iteration_proxy_value<iter_impl>;\n\n
      \   using object_t = typename BasicJsonType::object_t;\n    using array_t =
      typename BasicJsonType::array_t;\n    // make sure BasicJsonType is basic_json
      or const basic_json\n    static_assert(is_basic_json<typename std::remove_const<BasicJsonType>::type>::value,\n
      \                 \"iter_impl only accepts (const) basic_json\");\n    // superficial
      check for the LegacyBidirectionalIterator named requirement\n    static_assert(std::is_base_of<std::bidirectional_iterator_tag,
      std::bidirectional_iterator_tag>::value\n                  &&  std::is_base_of<std::bidirectional_iterator_tag,
      typename std::iterator_traits<typename array_t::iterator>::iterator_category>::value,\n
      \                 \"basic_json iterator assumes array and object type iterators
      satisfy the LegacyBidirectionalIterator named requirement.\");\n\n  public:\n
      \   /// The std::iterator class template (used as a base class to provide typedefs)
      is deprecated in C++17.\n    /// The C++ Standard has never required user-defined
      iterators to derive from std::iterator.\n    /// A user-defined iterator should
      provide publicly accessible typedefs named\n    /// iterator_category, value_type,
      difference_type, pointer, and reference.\n    /// Note that value_type is required
      to be non-const, even for constant iterators.\n    using iterator_category =
      std::bidirectional_iterator_tag;\n\n    /// the type of the values when the
      iterator is dereferenced\n    using value_type = typename BasicJsonType::value_type;\n
      \   /// a type to represent differences between iterators\n    using difference_type
      = typename BasicJsonType::difference_type;\n    /// defines a pointer to the
      type iterated over (value_type)\n    using pointer = typename std::conditional<std::is_const<BasicJsonType>::value,\n
      \         typename BasicJsonType::const_pointer,\n          typename BasicJsonType::pointer>::type;\n
      \   /// defines a reference to the type iterated over (value_type)\n    using
      reference =\n        typename std::conditional<std::is_const<BasicJsonType>::value,\n
      \       typename BasicJsonType::const_reference,\n        typename BasicJsonType::reference>::type;\n\n
      \   iter_impl() = default;\n    ~iter_impl() = default;\n    iter_impl(iter_impl&&)
      noexcept = default;\n    iter_impl& operator=(iter_impl&&) noexcept = default;\n\n
      \   /*!\n    @brief constructor for a given JSON instance\n    @param[in] object
      \ pointer to a JSON object for this iterator\n    @pre object != nullptr\n    @post
      The iterator is initialized; i.e. `m_object != nullptr`.\n    */\n    explicit
      iter_impl(pointer object) noexcept : m_object(object)\n    {\n        JSON_ASSERT(m_object
      != nullptr);\n\n        switch (m_object->m_data.m_type)\n        {\n            case
      value_t::object:\n            {\n                m_it.object_iterator = typename
      object_t::iterator();\n                break;\n            }\n\n            case
      value_t::array:\n            {\n                m_it.array_iterator = typename
      array_t::iterator();\n                break;\n            }\n\n            case
      value_t::null:\n            case value_t::string:\n            case value_t::boolean:\n
      \           case value_t::number_integer:\n            case value_t::number_unsigned:\n
      \           case value_t::number_float:\n            case value_t::binary:\n
      \           case value_t::discarded:\n            default:\n            {\n
      \               m_it.primitive_iterator = primitive_iterator_t();\n                break;\n
      \           }\n        }\n    }\n\n    /*!\n    @note The conventional copy
      constructor and copy assignment are implicitly\n          defined. Combined
      with the following converting constructor and\n          assignment, they support:
      (1) copy from iterator to iterator, (2)\n          copy from const iterator
      to const iterator, and (3) conversion from\n          iterator to const iterator.
      However conversion from const iterator\n          to iterator is not defined.\n
      \   */\n\n    /*!\n    @brief const copy constructor\n    @param[in] other const
      iterator to copy from\n    @note This copy constructor had to be defined explicitly
      to circumvent a bug\n          occurring on msvc v19.0 compiler (VS 2015) debug
      build. For more\n          information refer to: https://github.com/nlohmann/json/issues/1608\n
      \   */\n    iter_impl(const iter_impl<const BasicJsonType>& other) noexcept\n
      \       : m_object(other.m_object), m_it(other.m_it)\n    {}\n\n    /*!\n    @brief
      converting assignment\n    @param[in] other const iterator to copy from\n    @return
      const/non-const iterator\n    @note It is not checked whether @a other is initialized.\n
      \   */\n    iter_impl& operator=(const iter_impl<const BasicJsonType>& other)
      noexcept\n    {\n        if (&other != this)\n        {\n            m_object
      = other.m_object;\n            m_it = other.m_it;\n        }\n        return
      *this;\n    }\n\n    /*!\n    @brief converting constructor\n    @param[in]
      other  non-const iterator to copy from\n    @note It is not checked whether
      @a other is initialized.\n    */\n    iter_impl(const iter_impl<typename std::remove_const<BasicJsonType>::type>&
      other) noexcept\n        : m_object(other.m_object), m_it(other.m_it)\n    {}\n\n
      \   /*!\n    @brief converting assignment\n    @param[in] other  non-const iterator
      to copy from\n    @return const/non-const iterator\n    @note It is not checked
      whether @a other is initialized.\n    */\n    iter_impl& operator=(const iter_impl<typename
      std::remove_const<BasicJsonType>::type>& other) noexcept // NOLINT(cert-oop54-cpp)\n
      \   {\n        m_object = other.m_object;\n        m_it = other.m_it;\n        return
      *this;\n    }\n\n  JSON_PRIVATE_UNLESS_TESTED:\n    /*!\n    @brief set the
      iterator to the first value\n    @pre The iterator is initialized; i.e. `m_object
      != nullptr`.\n    */\n    void set_begin() noexcept\n    {\n        JSON_ASSERT(m_object
      != nullptr);\n\n        switch (m_object->m_data.m_type)\n        {\n            case
      value_t::object:\n            {\n                m_it.object_iterator = m_object->m_data.m_value.object->begin();\n
      \               break;\n            }\n\n            case value_t::array:\n
      \           {\n                m_it.array_iterator = m_object->m_data.m_value.array->begin();\n
      \               break;\n            }\n\n            case value_t::null:\n            {\n
      \               // set to end so begin()==end() is true: null is empty\n                m_it.primitive_iterator.set_end();\n
      \               break;\n            }\n\n            case value_t::string:\n
      \           case value_t::boolean:\n            case value_t::number_integer:\n
      \           case value_t::number_unsigned:\n            case value_t::number_float:\n
      \           case value_t::binary:\n            case value_t::discarded:\n            default:\n
      \           {\n                m_it.primitive_iterator.set_begin();\n                break;\n
      \           }\n        }\n    } set_end() noexcept"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12957
      start: 12957
    functionDepth: 0
    functionLinenumber: 12957
    functionLinenumberEnd: 12957
    functionName: iter_impl::iter_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iter_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12958
      start: 12958
    functionDepth: 0
    functionLinenumber: 12958
    functionLinenumberEnd: 12958
    functionName: ~iter_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~iter_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12959
      start: 12959
    functionDepth: 0
    functionLinenumber: 12959
    functionLinenumberEnd: 12959
    functionName: iter_impl::iter_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iter_impl(iter_impl&&) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 12960
      start: 12960
    functionDepth: 0
    functionLinenumber: 12960
    functionLinenumberEnd: 12960
    functionName: '& operator=(iter_impl&&) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iter_impl
    signature: iter_impl & operator=(iter_impl&&) noexcept
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12970,1
    - Dst: json_reverse_iterator::json_reverse_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12976,1
    - Dst: json_reverse_iterator::json_reverse_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12982,1
    - Dst: primitive_iterator_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:12996,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 1
    argNames:
    - object
    argTypes:
    - pointer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13000
      start: 12968
    functionDepth: 1
    functionLinenumber: 12968
    functionLinenumberEnd: 13000
    functionName: iter_impl::iter_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_ASSERT
    - primitive_iterator_t
    - json_reverse_iterator::json_reverse_iterator
    linkageType: ''
    returnType: void
    signature: void iter_impl(pointer object) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - iter_impl<const BasicJsonType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13020
      start: 13018
    functionDepth: 0
    functionLinenumber: 13018
    functionLinenumberEnd: 13020
    functionName: iter_impl::iter_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iter_impl(const iter_impl<const BasicJsonType>& other) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - iter_impl<const BasicJsonType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13036
      start: 13028
    functionDepth: 0
    functionLinenumber: 13028
    functionLinenumberEnd: 13036
    functionName: '& operator=(const iter_impl<const BasicJsonType>& other) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iter_impl
    signature: iter_impl & operator=(const iter_impl<const BasicJsonType>& other)
      noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - iter_impl<typename std::remove_const<BasicJsonType>::type>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13045
      start: 13043
    functionDepth: 0
    functionLinenumber: 13043
    functionLinenumberEnd: 13045
    functionName: iter_impl::iter_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void iter_impl(const iter_impl<typename std::remove_const<BasicJsonType>::type>&
      other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - iter_impl<typename std::remove_const<BasicJsonType>::type>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13058
      start: 13053
    functionDepth: 0
    functionLinenumber: 13053
    functionLinenumberEnd: 13058
    functionName: '& operator=(const iter_impl<typename std::remove_const<BasicJsonType>::type>&
      other) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iter_impl
    signature: iter_impl & operator=(const iter_impl<typename std::remove_const<BasicJsonType>::type>&
      other) noexcept
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::object::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13073,1
    - Dst: m_data::m_value::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13079,1
    - Dst: primitive_iterator::set_end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13086,1
    - Dst: primitive_iterator::set_begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13099,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13102
      start: 13069
    functionDepth: 2
    functionLinenumber: 13069
    functionLinenumberEnd: 13102
    functionName: (m_object->m_data.m_type)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - primitive_iterator::set_begin
    - primitive_iterator::set_end
    - m_data::m_value::array::begin
    - m_data::m_value::object::begin
    linkageType: ''
    returnType: switch
    signature: switch (m_object->m_data.m_type)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13194,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13200,1
    - Dst: m_data::m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13200,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13206,1
    - Dst: m_data::m_value::array::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13206,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13220,1
    - Dst: primitive_iterator::is_begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13220,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13225,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13225,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13228
      start: 13192
    functionDepth: 4
    functionLinenumber: 13192
    functionLinenumberEnd: 13228
    functionName: operator->() const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - primitive_iterator::is_begin
    - JSON_HEDLEY_LIKELY
    - invalid_iterator::create
    - m_data::m_value::array::end
    - m_data::m_value::object::end
    - JSON_THROW
    - JSON_ASSERT
    linkageType: ''
    returnType: pointer
    signature: pointer operator->() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13239
      start: 13234
    functionDepth: 0
    functionLinenumber: 13234
    functionLinenumberEnd: 13239
    functionName: operator++(int)&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iter_impl
    signature: iter_impl operator++(int)&
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13247,1
    - Dst: std::advance
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13253,1
    - Dst: std::advance
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13259,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13279
      start: 13245
    functionDepth: 1
    functionLinenumber: 13245
    functionLinenumberEnd: 13279
    functionName: '& operator++()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_ASSERT
    - std::advance
    linkageType: ''
    returnType: iter_impl
    signature: iter_impl & operator++()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13290
      start: 13285
    functionDepth: 0
    functionLinenumber: 13285
    functionLinenumberEnd: 13290
    functionName: operator--(int)&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iter_impl
    signature: iter_impl operator--(int)&
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13298,1
    - Dst: std::advance
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13304,1
    - Dst: std::advance
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13310,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13330
      start: 13296
    functionDepth: 1
    functionLinenumber: 13296
    functionLinenumberEnd: 13330
    functionName: '& operator--()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_ASSERT
    - std::advance
    linkageType: ''
    returnType: iter_impl
    signature: iter_impl & operator--()
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13340,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13342,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13342,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13345,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - IterImpl
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13366
      start: 13337
    functionDepth: 4
    functionLinenumber: 13337
    functionLinenumberEnd: 13366
    functionName: operator==(const IterImpl& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_THROW
    - invalid_iterator::create
    - JSON_ASSERT
    - JSON_HEDLEY_UNLIKELY
    linkageType: ''
    returnType: bool
    signature: bool operator==(const IterImpl& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - IterImpl
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13376
      start: 13373
    functionDepth: 0
    functionLinenumber: 13373
    functionLinenumberEnd: 13376
    functionName: operator!=(const IterImpl& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const IterImpl& other) const
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13385,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13387,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13387,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13390,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13395,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13395,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - iter_impl
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13411
      start: 13382
    functionDepth: 4
    functionLinenumber: 13382
    functionLinenumberEnd: 13411
    functionName: operator<(const iter_impl& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_THROW
    - invalid_iterator::create
    - JSON_ASSERT
    - JSON_HEDLEY_UNLIKELY
    linkageType: ''
    returnType: bool
    signature: bool operator<(const iter_impl& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: other
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13419,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - iter_impl
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13420
      start: 13417
    functionDepth: 0
    functionLinenumber: 13417
    functionLinenumberEnd: 13420
    functionName: operator<=(const iter_impl& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - other
    linkageType: ''
    returnType: bool
    signature: bool operator<=(const iter_impl& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - iter_impl
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13429
      start: 13426
    functionDepth: 0
    functionLinenumber: 13426
    functionLinenumberEnd: 13429
    functionName: operator>(const iter_impl& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>(const iter_impl& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - iter_impl
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13438
      start: 13435
    functionDepth: 0
    functionLinenumber: 13435
    functionLinenumberEnd: 13438
    functionName: operator>=(const iter_impl& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=(const iter_impl& other) const
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13446,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13451,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13451,1
    - Dst: std::advance
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13455,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 23
    argCount: 1
    argNames:
    - i
    argTypes:
    - difference_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13475
      start: 13444
    functionDepth: 4
    functionLinenumber: 13444
    functionLinenumberEnd: 13475
    functionName: '& operator+=(difference_type i)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_THROW
    - invalid_iterator::create
    - JSON_ASSERT
    - std::advance
    linkageType: ''
    returnType: iter_impl
    signature: iter_impl & operator+=(difference_type i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - difference_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13484
      start: 13481
    functionDepth: 0
    functionLinenumber: 13481
    functionLinenumberEnd: 13484
    functionName: '& operator-=(difference_type i)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iter_impl
    signature: iter_impl & operator-=(difference_type i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - difference_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13495
      start: 13490
    functionDepth: 0
    functionLinenumber: 13490
    functionLinenumberEnd: 13495
    functionName: operator+(difference_type i) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iter_impl
    signature: iter_impl operator+(difference_type i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - i
    - ' it'
    argTypes:
    - difference_type
    - iter_impl
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13506
      start: 13501
    functionDepth: 0
    functionLinenumber: 13501
    functionLinenumberEnd: 13506
    functionName: operator+(difference_type i, const iter_impl& it)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: friend
    signature: friend operator+(difference_type i, const iter_impl& it)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - difference_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13517
      start: 13512
    functionDepth: 0
    functionLinenumber: 13512
    functionLinenumberEnd: 13517
    functionName: operator-(difference_type i) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: iter_impl
    signature: iter_impl operator-(difference_type i) const
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13525,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13530,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13530,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 18
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - iter_impl
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13546
      start: 13523
    functionDepth: 4
    functionLinenumber: 13523
    functionLinenumberEnd: 13546
    functionName: operator-(const iter_impl& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_THROW
    - invalid_iterator::create
    - JSON_ASSERT
    linkageType: ''
    returnType: difference_type
    signature: difference_type operator-(const iter_impl& other) const
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13554,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13559,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13559,1
    - Dst: std::next
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13562,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13565,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13565,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13576,1
    - Dst: primitive_iterator::get_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13576,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13581,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13581,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 23
    argCount: 1
    argNames:
    - n
    argTypes:
    - difference_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13584
      start: 13552
    functionDepth: 4
    functionLinenumber: 13552
    functionLinenumberEnd: 13584
    functionName: operator[](difference_type n) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - primitive_iterator::get_value
    - std::next
    - JSON_HEDLEY_LIKELY
    - invalid_iterator::create
    - JSON_THROW
    - JSON_ASSERT
    linkageType: ''
    returnType: reference
    signature: reference operator[](difference_type n) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13592,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13594,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13594,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13599,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13599,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13600
      start: 13590
    functionDepth: 4
    functionLinenumber: 13590
    functionLinenumberEnd: 13600
    functionName: key
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 25
    functionsReached:
    - JSON_HEDLEY_LIKELY
    - is_object
    - invalid_iterator::create
    - JSON_THROW
    - JSON_ASSERT
    linkageType: ''
    returnType: typename object_t::key_type
    signature: typename object_t::key_type & key() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13609
      start: 13606
    functionDepth: 0
    functionLinenumber: 13606
    functionLinenumberEnd: 13609
    functionName: value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 134
    functionsReached: []
    linkageType: ''
    returnType: reference
    signature: reference value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<json_reverse_iterator>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13687,1
    - Dst: base_iterator::operator++
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13687,1
    - Dst: static_cast<json_reverse_iterator&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13693,1
    - Dst: base_iterator::operator++
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13693,1
    - Dst: static_cast<json_reverse_iterator>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13699,1
    - Dst: base_iterator::operator--
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13699,1
    - Dst: static_cast<json_reverse_iterator&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13705,1
    - Dst: base_iterator::operator--
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13705,1
    - Dst: static_cast<json_reverse_iterator&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13711,1
    - Dst: base_iterator::operator+=
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13711,1
    - Dst: static_cast<json_reverse_iterator>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13717,1
    - Dst: base_iterator::operator+
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13717,1
    - Dst: static_cast<json_reverse_iterator>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13723,1
    - Dst: base_iterator::operator-
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13723,1
    - Dst: base_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13729,1
    - Dst: base_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13729,1
    - Dst: std::declval<Base>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13739,1
    - Dst: base
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13741,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13742,1
    - Dst: base
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13748,1
    - Dst: it
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13749,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 25
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13753
      start: 13641
    functionDepth: 2
    functionLinenumber: 13641
    functionLinenumberEnd: 13753
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<json_reverse_iterator>
    - static_cast<json_reverse_iterator&>
    - base_iterator
    - base
    - std::declval<Base>
    - auto::key
    - it
    - base_iterator::operator++
    - base_iterator::operator+=
    - base_iterator::operator-
    - base_iterator::operator--
    - base_iterator::operator+
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' it'
    argTypes:
    - typename base_iterator::iterator_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13679
      start: 13678
    functionDepth: 0
    functionLinenumber: 13678
    functionLinenumberEnd: 13679
    functionName: json_reverse_iterator::json_reverse_iterator
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_reverse_iterator(const typename base_iterator::iterator_type&
      it) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' it'
    argTypes:
    - base_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13682
      start: 13682
    functionDepth: 0
    functionLinenumber: 13682
    functionLinenumberEnd: 13682
    functionName: json_reverse_iterator::json_reverse_iterator
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_reverse_iterator(const base_iterator& it) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<json_reverse_iterator>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13687,1
    - Dst: base_iterator::operator++
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13687,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13688
      start: 13685
    functionDepth: 0
    functionLinenumber: 13685
    functionLinenumberEnd: 13688
    functionName: operator++(int)&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<json_reverse_iterator>
    - base_iterator::operator++
    linkageType: ''
    returnType: json_reverse_iterator
    signature: json_reverse_iterator operator++(int)&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<json_reverse_iterator&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13693,1
    - Dst: base_iterator::operator++
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13693,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13694
      start: 13691
    functionDepth: 0
    functionLinenumber: 13691
    functionLinenumberEnd: 13694
    functionName: '& operator++()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<json_reverse_iterator&>
    - base_iterator::operator++
    linkageType: ''
    returnType: json_reverse_iterator
    signature: json_reverse_iterator & operator++()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<json_reverse_iterator>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13699,1
    - Dst: base_iterator::operator--
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13699,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13700
      start: 13697
    functionDepth: 0
    functionLinenumber: 13697
    functionLinenumberEnd: 13700
    functionName: operator--(int)&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - base_iterator::operator--
    - static_cast<json_reverse_iterator>
    linkageType: ''
    returnType: json_reverse_iterator
    signature: json_reverse_iterator operator--(int)&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<json_reverse_iterator&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13705,1
    - Dst: base_iterator::operator--
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13706
      start: 13703
    functionDepth: 0
    functionLinenumber: 13703
    functionLinenumberEnd: 13706
    functionName: '& operator--()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<json_reverse_iterator&>
    - base_iterator::operator--
    linkageType: ''
    returnType: json_reverse_iterator
    signature: json_reverse_iterator & operator--()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<json_reverse_iterator&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13711,1
    - Dst: base_iterator::operator+=
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13711,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - difference_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13712
      start: 13709
    functionDepth: 0
    functionLinenumber: 13709
    functionLinenumberEnd: 13712
    functionName: '& operator+=(difference_type i)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<json_reverse_iterator&>
    - base_iterator::operator+=
    linkageType: ''
    returnType: json_reverse_iterator
    signature: json_reverse_iterator & operator+=(difference_type i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<json_reverse_iterator>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13717,1
    - Dst: base_iterator::operator+
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13717,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - difference_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13718
      start: 13715
    functionDepth: 0
    functionLinenumber: 13715
    functionLinenumberEnd: 13718
    functionName: operator+(difference_type i) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<json_reverse_iterator>
    - base_iterator::operator+
    linkageType: ''
    returnType: json_reverse_iterator
    signature: json_reverse_iterator operator+(difference_type i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<json_reverse_iterator>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13723,1
    - Dst: base_iterator::operator-
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13723,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - difference_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13724
      start: 13721
    functionDepth: 0
    functionLinenumber: 13721
    functionLinenumberEnd: 13724
    functionName: operator-(difference_type i) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - base_iterator::operator-
    - static_cast<json_reverse_iterator>
    linkageType: ''
    returnType: json_reverse_iterator
    signature: json_reverse_iterator operator-(difference_type i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: base_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13729,1
    - Dst: base_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13729,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - json_reverse_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13730
      start: 13727
    functionDepth: 0
    functionLinenumber: 13727
    functionLinenumberEnd: 13730
    functionName: operator-(const json_reverse_iterator& other) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - base_iterator
    linkageType: ''
    returnType: difference_type
    signature: difference_type operator-(const json_reverse_iterator& other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - difference_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13736
      start: 13733
    functionDepth: 0
    functionLinenumber: 13733
    functionLinenumberEnd: 13736
    functionName: operator[](difference_type n) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: reference
    signature: reference operator[](difference_type n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::declval<Base>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13739,1
    - Dst: json_reverse_iterator::base
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13741,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13742,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13743
      start: 13739
    functionDepth: 2
    functionLinenumber: 13739
    functionLinenumberEnd: 13743
    functionName: json_reverse_iterator::key
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::declval<Base>
    - json_reverse_iterator::base
    - auto::key
    linkageType: ''
    returnType: auto
    signature: auto key() const -> decltype(std::declval<Base>().key())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: json_reverse_iterator::base
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13748,1
    - Dst: it
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13749,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13750
      start: 13746
    functionDepth: 0
    functionLinenumber: 13746
    functionLinenumberEnd: 13750
    functionName: json_reverse_iterator::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - it
    - json_reverse_iterator::base
    linkageType: ''
    returnType: reference
    signature: reference value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13797
      start: 13774
    functionDepth: 0
    functionLinenumber: 13774
    functionLinenumberEnd: 13797
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13853
      start: 13835
    functionDepth: 0
    functionLinenumber: 13835
    functionLinenumberEnd: 13853
    functionName: string_t_helper
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN string_t_helper
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13859
      start: 13855
    functionDepth: 0
    functionLinenumber: 13855
    functionLinenumberEnd: 13859
    functionName: string_t_helper
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NLOHMANN_BASIC_JSON_TPL_DECLARATION
    signature: NLOHMANN_BASIC_JSON_TPL_DECLARATION string_t_helper<NLOHMANN_BASIC_JSON_TPL>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: split
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13868,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13869
      start: 13867
    functionDepth: 1
    functionLinenumber: 13867
    functionLinenumberEnd: 13869
    functionName: json_pointer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - split
    linkageType: ''
    returnType: void
    signature: void json_pointer(const string_t& s = "")
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::accumulate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13875,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13875,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13875,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13879,1
    - Dst: escape
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13879,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13881
      start: 13873
    functionDepth: 3
    functionLinenumber: 13873
    functionLinenumberEnd: 13881
    functionName: to_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 96
    functionsReached:
    - std::accumulate
    - begin
    - concat
    - end
    - escape
    linkageType: ''
    returnType: string_t
    signature: string_t to_string() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13888,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13889
      start: 13886
    functionDepth: 4
    functionLinenumber: 13886
    functionLinenumberEnd: 13889
    functionName: operator string_t() const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - to_string
    linkageType: ''
    returnType: void
    signature: void operator string_t() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13896,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' o'
    - ' ptr'
    argTypes:
    - std::ostream
    - json_pointer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13898
      start: 13894
    functionDepth: 4
    functionLinenumber: 13894
    functionLinenumberEnd: 13898
    functionName: '& operator<<(std::ostream& o, const json_pointer& ptr)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - to_string
    linkageType: ''
    returnType: friend
    signature: friend & operator<<(std::ostream& o, const json_pointer& ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13905,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13905,1
    - Dst: reference_tokens::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13906,1
    - Dst: reference_tokens::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13907,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' ptr'
    argTypes:
    - json_pointer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13909
      start: 13903
    functionDepth: 1
    functionLinenumber: 13903
    functionLinenumberEnd: 13909
    functionName: '& operator/=(const json_pointer& ptr)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - end
    - insert
    - reference_tokens::end
    - reference_tokens::begin
    linkageType: ''
    returnType: json_pointer
    signature: json_pointer & operator/=(const json_pointer& ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13915,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13915,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - token
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13917
      start: 13913
    functionDepth: 1
    functionLinenumber: 13913
    functionLinenumberEnd: 13917
    functionName: '& operator/=(string_t token)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - push_back
    linkageType: ''
    returnType: json_pointer
    signature: json_pointer & operator/=(string_t token)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13923,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - array_idx
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13924
      start: 13921
    functionDepth: 4
    functionLinenumber: 13921
    functionLinenumberEnd: 13924
    functionName: '& operator/=(std::size_t array_idx)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - to_string
    linkageType: ''
    returnType: json_pointer
    signature: json_pointer & operator/=(std::size_t array_idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: json_pointer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13931,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - json_pointer
    - json_pointer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13932
      start: 13928
    functionDepth: 2
    functionLinenumber: 13928
    functionLinenumberEnd: 13932
    functionName: "json_pointer operator/(const json_pointer& lhs,\n                                  const
      json_pointer& rhs)"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - json_pointer
    linkageType: ''
    returnType: friend
    signature: "friend json_pointer operator/(const json_pointer& lhs,\n                                  const
      json_pointer& rhs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: json_pointer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13938,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13938,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - token
    argTypes:
    - json_pointer
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13939
      start: 13936
    functionDepth: 2
    functionLinenumber: 13936
    functionLinenumberEnd: 13939
    functionName: json_pointer operator/(const json_pointer& lhs, string_t token)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - json_pointer
    - std::move
    linkageType: ''
    returnType: friend
    signature: friend json_pointer operator/(const json_pointer& lhs, string_t token)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: json_pointer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13945,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - array_idx
    argTypes:
    - json_pointer
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13946
      start: 13943
    functionDepth: 2
    functionLinenumber: 13943
    functionLinenumberEnd: 13946
    functionName: json_pointer operator/(const json_pointer& lhs, std::size_t array_idx)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - json_pointer
    linkageType: ''
    returnType: friend
    signature: friend json_pointer operator/(const json_pointer& lhs, std::size_t
      array_idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13952,1
    - Dst: json_pointer::pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13958,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13960
      start: 13950
    functionDepth: 1
    functionLinenumber: 13950
    functionLinenumberEnd: 13960
    functionName: parent_pointer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - empty
    - json_pointer::pop_back
    linkageType: ''
    returnType: json_pointer
    signature: json_pointer parent_pointer() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13966,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13966,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13968,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13968,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13971,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13972
      start: 13964
    functionDepth: 4
    functionLinenumber: 13964
    functionLinenumberEnd: 13972
    functionName: pop_back
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 16
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - out_of_range::create
    - pop_back
    - JSON_THROW
    - empty
    linkageType: ''
    returnType: void
    signature: void pop_back()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13978,1
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13978,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13980,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13980,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13983,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13984
      start: 13976
    functionDepth: 4
    functionLinenumber: 13976
    functionLinenumberEnd: 13984
    functionName: back
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 159
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - out_of_range::create
    - back
    - JSON_THROW
    - empty
    linkageType: ''
    returnType: string_t
    signature: string_t & back() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13990,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' token'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13991
      start: 13988
    functionDepth: 1
    functionLinenumber: 13988
    functionLinenumberEnd: 13991
    functionName: push_back
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 117
    functionsReached:
    - push_back
    linkageType: ''
    returnType: void
    signature: void push_back(const string_t& token)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13997,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:13997,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' token'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13998
      start: 13995
    functionDepth: 1
    functionLinenumber: 13995
    functionLinenumberEnd: 13998
    functionName: push_back
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 118
    functionsReached:
    - std::move
    - push_back
    linkageType: ''
    returnType: void
    signature: void push_back(string_t&& token)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14004,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14005
      start: 14002
    functionDepth: 1
    functionLinenumber: 14002
    functionLinenumberEnd: 14005
    functionName: empty
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 165
    functionsReached:
    - empty
    linkageType: ''
    returnType: bool
    signature: bool empty() const noexcept
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: auto*::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14087,1
    - Dst: result
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14094,1
    - Dst: result
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14099,1
    - Dst: result
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14107,1
    - Dst: result
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14114,1
    - Dst: array_index<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14114,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14132,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14132,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 30
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14137
      start: 14079
    functionDepth: 4
    functionLinenumber: 14079
    functionLinenumberEnd: 14137
    functionName: get_and_create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - auto*::type
    - result
    - type_error::create
    - JSON_THROW
    - array_index<BasicJsonType>
    linkageType: ''
    returnType: BasicJsonType
    signature: BasicJsonType & get_and_create(BasicJsonType& j) const
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: BasicJsonType*::is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14164,1
    - Dst: std::all_of
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14168,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14168,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14168,1
    - Dst: std::isdigit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14171,1
    - Dst: BasicJsonType*::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14180,1
    - Dst: ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14185,1
    - Dst: ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14194,1
    - Dst: BasicJsonType*::m_data::m_value::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14194,1
    - Dst: ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14199,1
    - Dst: array_index<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14199,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14213,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14213,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14213,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 32
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - BasicJsonType*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14218
      start: 14159
    functionDepth: 4
    functionLinenumber: 14159
    functionLinenumberEnd: 14218
    functionName: get_unchecked
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - begin
    - BasicJsonType*::is_null
    - ptr
    - BasicJsonType*::m_data::m_value::array::size
    - out_of_range::create
    - BasicJsonType*::type
    - concat
    - end
    - std::isdigit
    - JSON_THROW
    - array_index<BasicJsonType>
    - std::all_of
    linkageType: ''
    returnType: BasicJsonType
    signature: BasicJsonType & get_unchecked(BasicJsonType* ptr) const
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: BasicJsonType*::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14231,1
    - Dst: BasicJsonType*::at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14236,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14242,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14245,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14245,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14245,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14246,1
    - Dst: BasicJsonType*::m_data::m_value::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14246,1
    - Dst: BasicJsonType*::at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14251,1
    - Dst: array_index<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14251,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14264,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14264,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14264,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - BasicJsonType*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14269
      start: 14227
    functionDepth: 4
    functionLinenumber: 14227
    functionLinenumberEnd: 14269
    functionName: get_checked
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - BasicJsonType*::m_data::m_value::array::size
    - out_of_range::create
    - BasicJsonType*::type
    - concat
    - to_string
    - JSON_THROW
    - BasicJsonType*::at
    - array_index<BasicJsonType>
    linkageType: ''
    returnType: BasicJsonType
    signature: BasicJsonType & get_checked(BasicJsonType* ptr) const
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: BasicJsonType*::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14289,1
    - Dst: ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14294,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14300,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14303,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14303,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14303,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14303,1
    - Dst: BasicJsonType*::m_data::m_value::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14303,1
    - Dst: ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14307,1
    - Dst: array_index<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14307,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14320,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14320,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14320,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - BasicJsonType*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14325
      start: 14285
    functionDepth: 4
    functionLinenumber: 14285
    functionLinenumberEnd: 14325
    functionName: get_unchecked
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - ptr
    - BasicJsonType*::m_data::m_value::array::size
    - out_of_range::create
    - BasicJsonType*::type
    - concat
    - to_string
    - JSON_THROW
    - array_index<BasicJsonType>
    linkageType: ''
    returnType: BasicJsonType
    signature: BasicJsonType & get_unchecked(const BasicJsonType* ptr) const
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: BasicJsonType*::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14338,1
    - Dst: BasicJsonType*::at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14343,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14349,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14352,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14352,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14352,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14353,1
    - Dst: BasicJsonType*::m_data::m_value::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14353,1
    - Dst: BasicJsonType*::at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14358,1
    - Dst: array_index<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14358,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14371,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14371,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14371,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 26
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - BasicJsonType*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14376
      start: 14334
    functionDepth: 4
    functionLinenumber: 14334
    functionLinenumberEnd: 14376
    functionName: get_checked
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - BasicJsonType*::m_data::m_value::array::size
    - out_of_range::create
    - BasicJsonType*::type
    - concat
    - to_string
    - JSON_THROW
    - BasicJsonType*::at
    - array_index<BasicJsonType>
    linkageType: ''
    returnType: BasicJsonType
    signature: BasicJsonType & get_checked(const BasicJsonType* ptr) const
  - BBCount: 19
    BranchProfiles: []
    Callsites:
    - Dst: BasicJsonType*::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14387,1
    - Dst: BasicJsonType*::contains
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14391,1
    - Dst: ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14397,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14403,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14408,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14408,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14413,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14413,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14415,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14420,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14422,1
    - Dst: array_index<BasicJsonType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14430,1
    - Dst: BasicJsonType*::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14431,1
    - Dst: ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14437,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 46
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - BasicJsonType*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14460
      start: 14383
    functionDepth: 1
    functionLinenumber: 14383
    functionLinenumberEnd: 14460
    functionName: contains
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 12
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - ptr
    - BasicJsonType*::size
    - BasicJsonType*::contains
    - size
    - BasicJsonType*::type
    - array_index<BasicJsonType>
    linkageType: ''
    returnType: bool
    signature: bool contains(const BasicJsonType* ptr) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14476,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14482,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14484,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14484,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14484,1
    - Dst: find_first_of
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14492,1
    - Dst: find_first_of
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14501,1
    - Dst: substr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14505,1
    - Dst: auto::find_first_of
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14508,1
    - Dst: auto::find_first_of
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14510,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14512,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14515,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14515,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14519,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14519,1
    - Dst: unescape
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14524,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14525,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 1
    argNames:
    - ' reference_string'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14529
      start: 14471
    functionDepth: 4
    functionLinenumber: 14471
    functionLinenumberEnd: 14529
    functionName: split
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - auto::find_first_of
    - unescape
    - JSON_HEDLEY_UNLIKELY
    - substr
    - concat
    - parse_error::create
    - find_first_of
    - JSON_THROW
    - empty
    - JSON_ASSERT
    - std::vector::push_back
    - auto::size
    linkageType: ''
    returnType: std::vector<string_t>
    signature: std::vector<string_t> split(const string_t& reference_string)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14645
      start: 14640
    functionDepth: 0
    functionLinenumber: 14640
    functionLinenumberEnd: 14645
    functionName: convert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: json_pointer<string_t>
    signature: json_pointer<string_t> convert() const&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14650,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14652
      start: 14647
    functionDepth: 0
    functionLinenumber: 14647
    functionLinenumberEnd: 14652
    functionName: convert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - std::move
    linkageType: ''
    returnType: json_pointer<string_t>
    signature: json_pointer<string_t> convert()&&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' rhs'
    argTypes:
    - json_pointer<RefStringTypeRhs>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14662
      start: 14659
    functionDepth: 0
    functionLinenumber: 14659
    functionLinenumberEnd: 14662
    functionName: operator==(const json_pointer<RefStringTypeRhs>& rhs) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const json_pointer<RefStringTypeRhs>& rhs) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: json_pointer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14669,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' rhs'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14670
      start: 14667
    functionDepth: 2
    functionLinenumber: 14667
    functionLinenumberEnd: 14670
    functionName: operator==(const string_t& rhs) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - json_pointer
    linkageType: ''
    returnType: bool
    signature: bool operator==(const string_t& rhs) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' rhs'
    argTypes:
    - json_pointer<RefStringTypeRhs>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14677
      start: 14674
    functionDepth: 0
    functionLinenumber: 14674
    functionLinenumberEnd: 14677
    functionName: operator<=>(const json_pointer<RefStringTypeRhs>& rhs) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::strong_ordering
    signature: std::strong_ordering operator<=>(const json_pointer<RefStringTypeRhs>&
      rhs) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - json_pointer<RefStringTypeLhs>
    - json_pointer<RefStringTypeRhs>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14740
      start: 14736
    functionDepth: 0
    functionLinenumber: 14736
    functionLinenumberEnd: 14740
    functionName: "operator==(const json_pointer<RefStringTypeLhs>& lhs,\n                       const
      json_pointer<RefStringTypeRhs>& rhs) noexcept"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool operator==(const json_pointer<RefStringTypeLhs>& lhs,\n                       const
      json_pointer<RefStringTypeRhs>& rhs) noexcept"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: json_pointer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14748,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - json_pointer<RefStringTypeLhs>
    - StringType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14749
      start: 14745
    functionDepth: 2
    functionLinenumber: 14745
    functionLinenumberEnd: 14749
    functionName: "operator==(const json_pointer<RefStringTypeLhs>& lhs,\n                       const
      StringType& rhs)"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - json_pointer
    linkageType: ''
    returnType: bool
    signature: "bool operator==(const json_pointer<RefStringTypeLhs>& lhs,\n                       const
      StringType& rhs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: json_pointer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14757,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - StringType
    - json_pointer<RefStringTypeRhs>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14758
      start: 14754
    functionDepth: 2
    functionLinenumber: 14754
    functionLinenumberEnd: 14758
    functionName: "operator==(const StringType& lhs,\n                       const
      json_pointer<RefStringTypeRhs>& rhs)"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - json_pointer
    linkageType: ''
    returnType: bool
    signature: "bool operator==(const StringType& lhs,\n                       const
      json_pointer<RefStringTypeRhs>& rhs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - json_pointer<RefStringTypeLhs>
    - json_pointer<RefStringTypeRhs>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14765
      start: 14761
    functionDepth: 0
    functionLinenumber: 14761
    functionLinenumberEnd: 14765
    functionName: "operator!=(const json_pointer<RefStringTypeLhs>& lhs,\n                       const
      json_pointer<RefStringTypeRhs>& rhs) noexcept"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool operator!=(const json_pointer<RefStringTypeLhs>& lhs,\n                       const
      json_pointer<RefStringTypeRhs>& rhs) noexcept"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - json_pointer<RefStringTypeLhs>
    - StringType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14774
      start: 14770
    functionDepth: 0
    functionLinenumber: 14770
    functionLinenumberEnd: 14774
    functionName: "operator!=(const json_pointer<RefStringTypeLhs>& lhs,\n                       const
      StringType& rhs)"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool operator!=(const json_pointer<RefStringTypeLhs>& lhs,\n                       const
      StringType& rhs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - StringType
    - json_pointer<RefStringTypeRhs>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14783
      start: 14779
    functionDepth: 0
    functionLinenumber: 14779
    functionLinenumberEnd: 14783
    functionName: "operator!=(const StringType& lhs,\n                       const
      json_pointer<RefStringTypeRhs>& rhs)"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool operator!=(const StringType& lhs,\n                       const
      json_pointer<RefStringTypeRhs>& rhs)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - json_pointer<RefStringTypeLhs>
    - json_pointer<RefStringTypeRhs>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14790
      start: 14786
    functionDepth: 0
    functionLinenumber: 14786
    functionLinenumberEnd: 14790
    functionName: "operator<(const json_pointer<RefStringTypeLhs>& lhs,\n                      const
      json_pointer<RefStringTypeRhs>& rhs) noexcept"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: "bool operator<(const json_pointer<RefStringTypeLhs>& lhs,\n                      const
      json_pointer<RefStringTypeRhs>& rhs) noexcept"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14825,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14840,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14854,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14874
      start: 14814
    functionDepth: 0
    functionLinenumber: 14814
    functionLinenumberEnd: 14874
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::forward<Args>
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14825,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14826
      start: 14824
    functionDepth: 0
    functionLinenumber: 14824
    functionLinenumberEnd: 14826
    functionName: json_ref::json_ref
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void json_ref(value_type&& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14830
      start: 14828
    functionDepth: 0
    functionLinenumber: 14828
    functionLinenumberEnd: 14830
    functionName: json_ref::json_ref
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_ref(const value_type& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - init
    argTypes:
    - std::initializer_list<json_ref>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14834
      start: 14832
    functionDepth: 0
    functionLinenumber: 14832
    functionLinenumberEnd: 14834
    functionName: json_ref::json_ref
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_ref(std::initializer_list<json_ref> init)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14840,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14841
      start: 14839
    functionDepth: 0
    functionLinenumber: 14839
    functionLinenumberEnd: 14841
    functionName: json_ref::json_ref
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void json_ref(Args && ... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14844
      start: 14844
    functionDepth: 0
    functionLinenumber: 14844
    functionLinenumberEnd: 14844
    functionName: json_ref::json_ref
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_ref(json_ref&&) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14845
      start: 14845
    functionDepth: 0
    functionLinenumber: 14845
    functionLinenumberEnd: 14845
    functionName: json_ref::json_ref
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_ref(const json_ref&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14846
      start: 14846
    functionDepth: 0
    functionLinenumber: 14846
    functionLinenumberEnd: 14846
    functionName: '& operator=(const json_ref&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: json_ref
    signature: json_ref & operator=(const json_ref&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14847
      start: 14847
    functionDepth: 0
    functionLinenumber: 14847
    functionLinenumberEnd: 14847
    functionName: '& operator=(json_ref&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: json_ref
    signature: json_ref & operator=(json_ref&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14848
      start: 14848
    functionDepth: 0
    functionLinenumber: 14848
    functionLinenumberEnd: 14848
    functionName: ~json_ref()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~json_ref()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14854,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14857
      start: 14850
    functionDepth: 0
    functionLinenumber: 14850
    functionLinenumberEnd: 14857
    functionName: json_ref::moved_or_copied
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type moved_or_copied() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14862
      start: 14859
    functionDepth: 0
    functionLinenumber: 14859
    functionLinenumberEnd: 14862
    functionName: '& operator*() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & operator*() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14867
      start: 14864
    functionDepth: 0
    functionLinenumber: 14864
    functionLinenumberEnd: 14867
    functionName: '* operator->() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * operator->() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14972,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14978,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14978,1
    - Dst: put
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14997,1
    - Dst: write
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15003,1
    - Dst: static_cast<std::streamsize>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15003,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15022,1
    - Dst: append
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15028,1
    - Dst: std::make_shared<output_vector_adapter<CharType, AllocatorType>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15041,1
    - Dst: std::make_shared<output_stream_adapter<CharType>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15045,1
    - Dst: std::make_shared<output_string_adapter<CharType, StringType>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15049,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15060
      start: 14939
    functionDepth: 2
    functionLinenumber: 14939
    functionLinenumberEnd: 15060
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - append
    - put
    - static_cast<std::streamsize>
    - std::make_shared<output_string_adapter<CharType, StringType>>
    - push_back
    - std::make_shared<output_vector_adapter<CharType, AllocatorType>>
    - std::make_shared<output_stream_adapter<CharType>>
    - end
    - insert
    - write
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14948
      start: 14948
    functionDepth: 0
    functionLinenumber: 14948
    functionLinenumberEnd: 14948
    functionName: ~output_adapter_protocol()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~output_adapter_protocol()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14950
      start: 14950
    functionDepth: 0
    functionLinenumber: 14950
    functionLinenumberEnd: 14950
    functionName: output_adapter_protocol
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void output_adapter_protocol()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14951
      start: 14951
    functionDepth: 0
    functionLinenumber: 14951
    functionLinenumberEnd: 14951
    functionName: output_adapter_protocol
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void output_adapter_protocol(const output_adapter_protocol&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14952
      start: 14952
    functionDepth: 0
    functionLinenumber: 14952
    functionLinenumberEnd: 14952
    functionName: output_adapter_protocol
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void output_adapter_protocol(output_adapter_protocol&&) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14953
      start: 14953
    functionDepth: 0
    functionLinenumber: 14953
    functionLinenumberEnd: 14953
    functionName: '& operator=(const output_adapter_protocol&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: output_adapter_protocol
    signature: output_adapter_protocol & operator=(const output_adapter_protocol&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14954
      start: 14954
    functionDepth: 0
    functionLinenumber: 14954
    functionLinenumberEnd: 14954
    functionName: '& operator=(output_adapter_protocol&&) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: output_adapter_protocol
    signature: output_adapter_protocol & operator=(output_adapter_protocol&&) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' vec'
    argTypes:
    - std::vector<CharType, AllocatorType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14968
      start: 14966
    functionDepth: 0
    functionLinenumber: 14966
    functionLinenumberEnd: 14968
    functionName: output_vector_adapter::output_vector_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void output_vector_adapter(std::vector<CharType, AllocatorType>& vec)
      noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14972,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - CharType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14973
      start: 14970
    functionDepth: 2
    functionLinenumber: 14970
    functionLinenumberEnd: 14973
    functionName: output_vector_adapter::write_character
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - push_back
    linkageType: ''
    returnType: void
    signature: void write_character(CharType c) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14978,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14978,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - length
    argTypes:
    - CharType*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14979
      start: 14975
    functionDepth: 1
    functionLinenumber: 14975
    functionLinenumberEnd: 14979
    functionName: "(2)\n    void write_characters(const CharType* s, std::size_t length)
      override"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - end
    - insert
    linkageType: ''
    returnType: JSON_HEDLEY_NON_NULL
    signature: "JSON_HEDLEY_NON_NULL (2)\n    void write_characters(const CharType*
      s, std::size_t length) override"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' s'
    argTypes:
    - std::basic_ostream<CharType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14993
      start: 14991
    functionDepth: 0
    functionLinenumber: 14991
    functionLinenumberEnd: 14993
    functionName: output_stream_adapter::output_stream_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void output_stream_adapter(std::basic_ostream<CharType>& s) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: put
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:14997,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - CharType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14998
      start: 14995
    functionDepth: 0
    functionLinenumber: 14995
    functionLinenumberEnd: 14998
    functionName: output_stream_adapter::write_character
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - put
    linkageType: ''
    returnType: void
    signature: void write_character(CharType c) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: write
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15003,1
    - Dst: static_cast<std::streamsize>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15003,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - length
    argTypes:
    - CharType*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15004
      start: 15000
    functionDepth: 0
    functionLinenumber: 15000
    functionLinenumberEnd: 15004
    functionName: "(2)\n    void write_characters(const CharType* s, std::size_t length)
      override"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - write
    - static_cast<std::streamsize>
    linkageType: ''
    returnType: JSON_HEDLEY_NON_NULL
    signature: "JSON_HEDLEY_NON_NULL (2)\n    void write_characters(const CharType*
      s, std::size_t length) override"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' s'
    argTypes:
    - StringType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15018
      start: 15016
    functionDepth: 0
    functionLinenumber: 15016
    functionLinenumberEnd: 15018
    functionName: output_string_adapter::output_string_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void output_string_adapter(StringType& s) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15022,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - CharType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15023
      start: 15020
    functionDepth: 2
    functionLinenumber: 15020
    functionLinenumberEnd: 15023
    functionName: output_string_adapter::write_character
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - push_back
    linkageType: ''
    returnType: void
    signature: void write_character(CharType c) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: append
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15028,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - length
    argTypes:
    - CharType*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15029
      start: 15025
    functionDepth: 0
    functionLinenumber: 15025
    functionLinenumberEnd: 15029
    functionName: "(2)\n    void write_characters(const CharType* s, std::size_t length)
      override"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - append
    linkageType: ''
    returnType: JSON_HEDLEY_NON_NULL
    signature: "JSON_HEDLEY_NON_NULL (2)\n    void write_characters(const CharType*
      s, std::size_t length) override"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<output_vector_adapter<CharType, AllocatorType>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15041,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' vec'
    argTypes:
    - std::vector<CharType, AllocatorType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15041
      start: 15040
    functionDepth: 0
    functionLinenumber: 15040
    functionLinenumberEnd: 15041
    functionName: output_adapter::output_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::make_shared<output_vector_adapter<CharType, AllocatorType>>
    linkageType: ''
    returnType: void
    signature: void output_adapter(std::vector<CharType, AllocatorType>& vec)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<output_stream_adapter<CharType>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15045,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' s'
    argTypes:
    - std::basic_ostream<CharType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15045
      start: 15044
    functionDepth: 0
    functionLinenumber: 15044
    functionLinenumberEnd: 15045
    functionName: output_adapter::output_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::make_shared<output_stream_adapter<CharType>>
    linkageType: ''
    returnType: void
    signature: void output_adapter(std::basic_ostream<CharType>& s)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<output_string_adapter<CharType, StringType>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15049,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' s'
    argTypes:
    - StringType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15049
      start: 15048
    functionDepth: 0
    functionLinenumber: 15048
    functionLinenumberEnd: 15049
    functionName: output_adapter::output_adapter
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::make_shared<output_string_adapter<CharType, StringType>>
    linkageType: ''
    returnType: void
    signature: void output_adapter(StringType& s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15054
      start: 15051
    functionDepth: 0
    functionLinenumber: 15051
    functionLinenumberEnd: 15054
    functionName: operator output_adapter_t<CharType>()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator output_adapter_t<CharType>()
  - BBCount: 242
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15090,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15092,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15101,1
    - Dst: write_bson_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15105,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15120,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15120,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15120,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15120,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15130,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15134,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15134,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15140,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15141,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15142,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15155,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15155,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15159,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15159,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15160,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15160,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15164,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15164,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15165,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15165,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15169,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15169,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15170,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15170,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15174,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15174,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15175,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15175,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15185,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15185,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15189,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15189,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15190,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15190,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15194,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15194,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15195,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15195,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15199,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15199,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15200,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15200,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15204,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15204,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15205,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15205,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15215,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15215,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15219,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15219,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15220,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15220,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15224,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15224,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15225,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15225,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15229,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15229,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15230,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15230,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15234,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15234,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15235,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15235,1
    - Dst: std::isnan
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15242,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15245,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15245,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15246,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15246,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15247,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15247,1
    - Dst: std::isinf
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15249,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15252,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15252,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15253,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15253,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15253,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15254,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15254,1
    - Dst: write_compact_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15258,1
    - Dst: m_data::m_value::string::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15266,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15269,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15269,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15273,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15273,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15274,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15274,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15278,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15278,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15279,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15279,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15283,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15283,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15284,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15284,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15289,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15289,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15290,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15290,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15295,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15296,1
    - Dst: m_data::m_value::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15296,1
    - Dst: m_data::m_value::string::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15297,1
    - Dst: m_data::m_value::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15304,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15307,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15307,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15311,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15311,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15312,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15312,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15316,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15316,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15317,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15317,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15321,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15321,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15322,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15322,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15327,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15327,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15328,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15328,1
    - Dst: write_cbor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15335,1
    - Dst: m_data::m_value::binary::has_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15342,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15344,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15346,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15346,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15347,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15347,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15347,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15349,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15351,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15351,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15352,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15352,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15352,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15354,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15356,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15356,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15357,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15357,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15357,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15359,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15361,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15361,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15362,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15362,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15362,1
    - Dst: m_data::m_value::binary::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15367,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15370,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15370,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15374,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15374,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15375,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15375,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15379,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15379,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15380,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15380,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15384,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15384,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15385,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15385,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15390,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15390,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15391,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15391,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15396,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15397,1
    - Dst: m_data::m_value::binary::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15397,1
    - Dst: m_data::m_value::object::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15406,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15409,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15409,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15413,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15413,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15414,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15414,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15418,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15418,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15419,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15419,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15423,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15423,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15424,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15424,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15429,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15429,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15430,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15430,1
    - Dst: write_cbor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15437,1
    - Dst: write_cbor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15438,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15454,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15458,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15458,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15464,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15465,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15466,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15480,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15480,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15485,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15485,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15486,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15486,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15491,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15491,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15492,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15492,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15497,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15497,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15498,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15498,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15503,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15503,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15504,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15504,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15512,1
    - Dst: static_cast<std::int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15512,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15518,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15518,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15519,1
    - Dst: static_cast<std::int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15519,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15525,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15525,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15526,1
    - Dst: static_cast<std::int16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15526,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15532,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15532,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15533,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15533,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15539,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15539,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15540,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15540,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15551,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15551,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15556,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15556,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15557,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15557,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15562,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15562,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15563,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15563,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15568,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15568,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15569,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15569,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15574,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15574,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15575,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15575,1
    - Dst: write_compact_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15582,1
    - Dst: m_data::m_value::string::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15589,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15593,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15593,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15598,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15598,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15599,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15599,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15604,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15604,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15605,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15605,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15610,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15610,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15611,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15611,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15615,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15616,1
    - Dst: m_data::m_value::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15616,1
    - Dst: m_data::m_value::string::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15617,1
    - Dst: m_data::m_value::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15624,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15628,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15628,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15633,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15633,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15634,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15634,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15639,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15639,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15640,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15640,1
    - Dst: write_msgpack
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15646,1
    - Dst: m_data::m_value::binary::has_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15655,1
    - Dst: m_data::m_value::binary::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15658,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15695,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15695,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15698,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15698,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15707,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15707,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15708,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15708,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15716,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15716,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15717,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15717,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15723,1
    - Dst: static_cast<std::int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15723,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15723,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15727,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15728,1
    - Dst: m_data::m_value::binary::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15728,1
    - Dst: m_data::m_value::object::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15737,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15741,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15741,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15746,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15746,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15747,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15747,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15752,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15752,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15753,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15753,1
    - Dst: write_msgpack
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15759,1
    - Dst: write_msgpack
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15760,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15782,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15788,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15788,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15797,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15798,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15799,1
    - Dst: write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15806,1
    - Dst: write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15812,1
    - Dst: write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15818,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15826,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15826,1
    - Dst: write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15828,1
    - Dst: m_data::m_value::string::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15828,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15829,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15830,1
    - Dst: m_data::m_value::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15830,1
    - Dst: m_data::m_value::string::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15831,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15839,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15839,1
    - Dst: m_data::m_value::array::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15843,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15845,1
    - Dst: ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15846,1
    - Dst: front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15846,1
    - Dst: std::all_of
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15847,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15847,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15847,1
    - Dst: ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15850,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15855,1
    - Dst: std::vector::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15855,1
    - Dst: std::vector::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15855,1
    - Dst: std::vector::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15855,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15858,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15858,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15859,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15865,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15865,1
    - Dst: write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15866,1
    - Dst: m_data::m_value::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15866,1
    - Dst: write_ubjson
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15871,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15876,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15876,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15886,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15886,1
    - Dst: m_data::m_value::binary::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15889,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15891,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15892,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15892,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15893,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15898,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15898,1
    - Dst: write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15899,1
    - Dst: m_data::m_value::binary::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15899,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15904,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15905,1
    - Dst: m_data::m_value::binary::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15905,1
    - Dst: m_data::m_value::binary::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15906,1
    - Dst: m_data::m_value::binary::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15910,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15912,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15912,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15913,1
    - Dst: m_data::m_value::binary::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15913,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15919,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15919,1
    - Dst: m_data::m_value::object::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15927,1
    - Dst: m_data::m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15927,1
    - Dst: m_data::m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15927,1
    - Dst: m_data::m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15927,1
    - Dst: m_data::m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15927,1
    - Dst: m_data::m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15927,1
    - Dst: m_data::m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15927,1
    - Dst: write_bjdata_ndarray
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15929,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15937,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15937,1
    - Dst: m_data::m_value::object::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15941,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15943,1
    - Dst: ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15944,1
    - Dst: front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15944,1
    - Dst: std::all_of
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15945,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15945,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15945,1
    - Dst: ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15948,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15953,1
    - Dst: std::vector::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15953,1
    - Dst: std::vector::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15953,1
    - Dst: std::vector::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15953,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15956,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15956,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15957,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15963,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15963,1
    - Dst: write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15964,1
    - Dst: m_data::m_value::object::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15964,1
    - Dst: write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15969,1
    - Dst: first::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15969,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15970,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15971,1
    - Dst: first::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15971,1
    - Dst: first::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15972,1
    - Dst: write_ubjson
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15973,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15978,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15978,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16001,1
    - Dst: static_cast<typename string_t::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16001,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16002,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16004,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16004,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16004,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16004,1
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16005,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16008,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16017,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16017,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16018,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16019,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16019,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16020,1
    - Dst: write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16029,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16030,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16030,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16030,1
    - Dst: write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16039,1
    - Dst: write_number<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16040,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16048,1
    - Dst: write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16057,1
    - Dst: write_number<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16059,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16059,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16059,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16060,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16061,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16061,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16062,1
    - Dst: write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16070,1
    - Dst: write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16091,1
    - Dst: write_number<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16092,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16092,1
    - Dst: write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16096,1
    - Dst: write_number<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16097,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16097,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16106,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16117,1
    - Dst: write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16119,1
    - Dst: write_number<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16120,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16120,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16122,1
    - Dst: write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16124,1
    - Dst: write_number<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16125,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16125,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16129,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16129,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16129,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16129,1
    - Dst: write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16139,1
    - Dst: write_bson_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16140,1
    - Dst: std::accumulate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16150,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16150,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16150,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16150,1
    - Dst: calc_bson_element_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16152,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16152,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16163,1
    - Dst: write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16172,1
    - Dst: write_number<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16173,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16173,1
    - Dst: calc_bson_array_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16173,1
    - Dst: write_bson_element
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16179,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16179,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16182,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16182,1
    - Dst: write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16191,1
    - Dst: write_number<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16193,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16193,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16193,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16194,1
    - Dst: has_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16194,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16194,1
    - Dst: subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16194,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16194,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16196,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16196,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16196,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16196,1
    - Dst: calc_bson_entry_header_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16206,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16207,1
    - Dst: calc_bson_object_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16210,1
    - Dst: calc_bson_array_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16213,1
    - Dst: calc_bson_binary_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16216,1
    - Dst: calc_bson_integer_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16225,1
    - Dst: calc_bson_unsigned_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16228,1
    - Dst: calc_bson_string_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16231,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16239,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16254,1
    - Dst: write_bson_object_entry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16257,1
    - Dst: write_bson_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16260,1
    - Dst: write_bson_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16263,1
    - Dst: write_bson_boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16266,1
    - Dst: write_bson_double
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16269,1
    - Dst: write_bson_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16272,1
    - Dst: write_bson_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16275,1
    - Dst: write_bson_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16278,1
    - Dst: write_bson_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16281,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16286,1
    - Dst: std::accumulate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16300,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16300,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16300,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16300,1
    - Dst: calc_bson_element_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16303,1
    - Dst: write_number<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16315,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16315,1
    - Dst: calc_bson_object_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16315,1
    - Dst: write_bson_element
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16319,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16322,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16322,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16331,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16336,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16345,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16350,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16366,1
    - Dst: get_ubjson_float_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16366,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16368,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16378,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16382,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16382,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16384,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16384,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16390,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16390,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16392,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16392,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16394,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16398,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16398,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16400,1
    - Dst: static_cast<std::int16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16400,1
    - Dst: static_cast<uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16402,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16406,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16406,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16408,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16408,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16410,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16414,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16414,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16416,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16416,1
    - Dst: static_cast<uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16418,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16422,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16422,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16424,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16424,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16426,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16430,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16430,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16432,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16432,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16438,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16438,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16440,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16440,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16446,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16446,1
    - Dst: BasicJsonType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16449,1
    - Dst: write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16450,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16450,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16451,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16453,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16453,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16453,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16470,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16470,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16472,1
    - Dst: static_cast<std::int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16472,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16474,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16474,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16478,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16478,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16480,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16480,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16486,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16486,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16488,1
    - Dst: static_cast<std::int16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16488,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16490,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16490,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16494,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16494,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16496,1
    - Dst: static_cast<uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16496,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16502,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16502,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16504,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16504,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16506,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16506,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16510,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16510,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16512,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16512,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16518,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16518,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16520,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16520,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16527,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16527,1
    - Dst: BasicJsonType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16530,1
    - Dst: write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16531,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16531,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16532,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16534,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16534,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16534,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16545,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16589,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16593,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16597,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16601,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16605,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16609,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16613,1
    - Dst: get_ubjson_float_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16626,1
    - Dst: std::map::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16664,1
    - Dst: static_cast<string_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16664,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16664,1
    - Dst: std::map::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16665,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16672,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16673,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16675,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16679,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16684,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16685,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16686,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16687,1
    - Dst: write_ubjson
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16690,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16690,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16695,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16697,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16697,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16702,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16704,1
    - Dst: static_cast<std::int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16704,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16709,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16711,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16711,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16716,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16718,1
    - Dst: static_cast<std::int16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16718,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16723,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16725,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16725,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16730,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16732,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16732,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16737,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16739,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16739,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16744,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16746,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16746,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16751,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16753,1
    - Dst: static_cast<float>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16753,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16758,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16760,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16760,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16788,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16788,1
    - Dst: std::reverse
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16794,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16794,1
    - Dst: std::array::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16794,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16797,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16797,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16806,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16806,1
    - Dst: std::numeric_limits<float>::lowest
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16806,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16807,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16807,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16808,1
    - Dst: static_cast<float>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16808,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16808,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16810,1
    - Dst: get_cbor_float_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16811,1
    - Dst: static_cast<float>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16811,1
    - Dst: get_msgpack_float_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16812,1
    - Dst: static_cast<float>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16812,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16813,1
    - Dst: static_cast<float>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16813,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16817,1
    - Dst: get_cbor_float_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16818,1
    - Dst: get_msgpack_float_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16819,1
    - Dst: write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16820,1
    - Dst: reinterpret_cast<char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16836,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16846,1
    - Dst: little_endianness
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16870,1
    CyclomaticComplexity: 275
    EdgeCount: 275
    ICount: 933
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16876
      start: 15061
    functionDepth: 4
    functionLinenumber: 15061
    functionLinenumberEnd: 16876
    functionName: NLOHMANN_JSON_NAMESPACE_BEGIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - begin
    - find
    - front
    - write_bson_boolean
    - write_bson_double
    - calc_bson_array_size
    - static_cast<double>
    - auto::size
    - JSON_HEDLEY_UNLIKELY
    - write_number_with_ubjson_prefix
    - static_cast<std::uint64_t>
    - write_bson_integer
    - static_cast<string_t>
    - static_cast<std::int16_t>
    - BasicJsonType
    - data
    - first::c_str
    - m_data::m_value::string::size
    - write_bson_null
    - m_data::m_value::array::empty
    - to_string
    - std::isnan
    - static_cast<typename string_t::value_type>
    - std::move
    - std::array::end
    - get_msgpack_float_prefix
    - type_error::create
    - std::map::find
    - static_cast<std::uint8_t>
    - m_data::m_value::array::size
    - m_data::m_value::object::end
    - static_cast<float>
    - JSON_THROW
    - calc_bson_object_size
    - write_character
    - std::accumulate
    - std::array::data
    - write_cbor
    - std::map::end
    - little_endianness
    - write_bson_array
    - write_bjdata_ndarray
    - write_number<double>
    - to_char_type
    - m_data::m_value::object::empty
    - static_cast<std::size_t>
    - write_bson_binary
    - m_data::m_value::binary::empty
    - m_data::m_value::object::find
    - write_bson_object_entry
    - std::all_of
    - calc_bson_string_size
    - subtype
    - reinterpret_cast<const CharType*>
    - write_number<std::int64_t>
    - write_bson_unsigned
    - size
    - std::array::begin
    - has_subtype
    - static_cast<std::int64_t>
    - ubjson_prefix
    - m_data::m_value::binary::subtype
    - calc_bson_element_size
    - JSON_ASSERT
    - concat
    - get_cbor_float_prefix
    - end
    - at
    - c_str
    - calc_bson_integer_size
    - std::reverse
    - static_cast<std::uint32_t>
    - write_compact_float
    - write_bson_string
    - write_ubjson
    - write_characters
    - first::size
    - m_data::m_value::binary::has_subtype
    - static_cast<uint16_t>
    - static_cast<uint64_t>
    - m_data::m_value::string::c_str
    - std::isinf
    - m_data::m_value::binary::size
    - std::memcpy
    - static_cast<uint32_t>
    - get_ubjson_float_prefix
    - static_cast<std::int8_t>
    - calc_bson_entry_header_size
    - reinterpret_cast<char*>
    - write_msgpack
    - calc_bson_binary_size
    - write_bson_entry_header
    - std::vector::end
    - type_name
    - type
    - std::vector::begin
    - m_data::m_value::object::size
    - out_of_range::create
    - write_number<std::int32_t>
    - static_cast<std::uint16_t>
    - std::numeric_limits<float>::lowest
    - calc_bson_unsigned_size
    - write_number
    - m_data::m_value::binary::data
    - static_cast<void>
    - static_cast<std::int32_t>
    - write_bson_element
    - write_bson_object
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_END
    signature: NLOHMANN_JSON_NAMESPACE_END NLOHMANN_JSON_NAMESPACE_BEGIN
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15090,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15092,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - adapter
    argTypes:
    - output_adapter_t<CharType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15093
      start: 15090
    functionDepth: 1
    functionLinenumber: 15090
    functionLinenumberEnd: 15093
    functionName: binary_writer::binary_writer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_ASSERT
    - std::move
    linkageType: ''
    returnType: void
    signature: void binary_writer(output_adapter_t<CharType> adapter)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15101,1
    - Dst: binary_writer::write_bson_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15105,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15120,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15120,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15120,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15123
      start: 15099
    functionDepth: 4
    functionLinenumber: 15099
    functionLinenumberEnd: 15123
    functionName: binary_writer::write_bson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - binary_writer::write_bson_object
    - concat
    - type_name
    - type_error::create
    - JSON_THROW
    - type
    linkageType: ''
    returnType: void
    signature: void write_bson(const BasicJsonType& j)
  - BBCount: 52
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15130,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15134,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15134,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15140,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15141,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15142,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15155,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15155,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15159,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15159,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15160,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15160,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15164,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15164,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15165,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15165,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15169,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15169,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15170,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15170,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15174,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15174,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15175,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15175,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15185,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15185,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15189,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15189,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15190,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15190,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15194,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15194,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15195,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15195,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15199,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15199,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15200,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15200,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15204,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15204,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15205,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15205,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15215,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15215,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15219,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15219,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15220,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15220,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15224,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15224,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15225,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15225,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15229,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15229,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15230,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15230,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15234,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15234,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15235,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15235,1
    - Dst: std::isnan
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15242,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15245,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15245,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15246,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15246,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15247,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15247,1
    - Dst: std::isinf
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15249,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15252,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15252,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15253,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15253,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15253,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15254,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15254,1
    - Dst: binary_writer::write_compact_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15258,1
    - Dst: m_data::m_value::string::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15266,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15269,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15269,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15273,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15273,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15274,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15274,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15278,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15278,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15279,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15279,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15283,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15283,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15284,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15284,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15289,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15289,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15290,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15290,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15295,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15296,1
    - Dst: m_data::m_value::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15296,1
    - Dst: m_data::m_value::string::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15297,1
    - Dst: m_data::m_value::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15304,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15307,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15307,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15311,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15311,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15312,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15312,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15316,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15316,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15317,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15317,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15321,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15321,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15322,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15322,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15327,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15327,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15328,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15328,1
    - Dst: binary_writer::write_cbor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15335,1
    - Dst: m_data::m_value::binary::has_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15342,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15344,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15346,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15346,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15347,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15347,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15347,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15349,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15351,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15351,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15352,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15352,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15352,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15354,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15356,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15356,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15357,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15357,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15357,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15359,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15361,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15361,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15362,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15362,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15362,1
    - Dst: m_data::m_value::binary::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15367,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15370,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15370,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15374,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15374,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15375,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15375,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15379,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15379,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15380,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15380,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15384,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15384,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15385,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15385,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15390,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15390,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15391,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15391,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15396,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15397,1
    - Dst: m_data::m_value::binary::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15397,1
    - Dst: m_data::m_value::object::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15406,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15409,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15409,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15413,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15413,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15414,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15414,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15418,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15418,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15419,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15419,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15423,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15423,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15424,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15424,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15429,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15429,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15430,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15430,1
    - Dst: binary_writer::write_cbor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15437,1
    - Dst: binary_writer::write_cbor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15438,1
    CyclomaticComplexity: 53
    EdgeCount: 53
    ICount: 205
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15447
      start: 15128
    functionDepth: 1
    functionLinenumber: 15128
    functionLinenumberEnd: 15447
    functionName: binary_writer::write_cbor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - m_data::m_value::string::c_str
    - std::isinf
    - m_data::m_value::binary::size
    - m_data::m_value::array::size
    - binary_writer::write_cbor
    - write_character
    - static_cast<std::uint64_t>
    - binary_writer::write_number
    - binary_writer::to_char_type
    - m_data::m_value::binary::subtype
    - type
    - binary_writer::write_compact_float
    - m_data::m_value::string::size
    - m_data::m_value::object::size
    - static_cast<std::uint16_t>
    - std::isnan
    - static_cast<std::uint32_t>
    - m_data::m_value::binary::data
    - reinterpret_cast<const CharType*>
    - write_characters
    - m_data::m_value::binary::has_subtype
    - static_cast<std::uint8_t>
    linkageType: ''
    returnType: void
    signature: void write_cbor(const BasicJsonType& j)
  - BBCount: 50
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15454,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15458,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15458,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15464,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15465,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15466,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15480,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15480,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15485,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15485,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15486,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15486,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15491,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15491,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15492,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15492,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15497,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15497,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15498,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15498,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15503,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15503,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15504,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15504,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15512,1
    - Dst: static_cast<std::int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15512,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15518,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15518,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15519,1
    - Dst: static_cast<std::int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15519,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15525,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15525,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15526,1
    - Dst: static_cast<std::int16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15526,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15532,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15532,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15533,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15533,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15539,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15539,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15540,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15540,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15551,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15551,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15556,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15556,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15557,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15557,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15562,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15562,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15563,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15563,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15568,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15568,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15569,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15569,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15574,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15574,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15575,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15575,1
    - Dst: binary_writer::write_compact_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15582,1
    - Dst: m_data::m_value::string::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15589,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15593,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15593,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15598,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15598,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15599,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15599,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15604,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15604,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15605,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15605,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15610,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15610,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15611,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15611,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15615,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15616,1
    - Dst: m_data::m_value::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15616,1
    - Dst: m_data::m_value::string::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15617,1
    - Dst: m_data::m_value::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15624,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15628,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15628,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15633,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15633,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15634,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15634,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15639,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15639,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15640,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15640,1
    - Dst: binary_writer::write_msgpack
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15646,1
    - Dst: m_data::m_value::binary::has_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15655,1
    - Dst: m_data::m_value::binary::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15658,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15695,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15695,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15698,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15698,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15707,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15707,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15708,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15708,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15716,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15716,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15717,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15717,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15723,1
    - Dst: static_cast<std::int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15723,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15723,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15727,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15728,1
    - Dst: m_data::m_value::binary::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15728,1
    - Dst: m_data::m_value::object::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15737,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15741,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15741,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15746,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15746,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15747,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15747,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15752,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15752,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15753,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15753,1
    - Dst: binary_writer::write_msgpack
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15759,1
    - Dst: binary_writer::write_msgpack
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15760,1
    CyclomaticComplexity: 56
    EdgeCount: 56
    ICount: 183
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15769
      start: 15452
    functionDepth: 1
    functionLinenumber: 15452
    functionLinenumberEnd: 15769
    functionName: binary_writer::write_msgpack
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - m_data::m_value::string::c_str
    - binary_writer::write_msgpack
    - m_data::m_value::binary::size
    - m_data::m_value::array::size
    - write_character
    - static_cast<std::int8_t>
    - static_cast<std::int64_t>
    - static_cast<std::uint64_t>
    - static_cast<std::int16_t>
    - binary_writer::write_number
    - binary_writer::to_char_type
    - m_data::m_value::binary::subtype
    - type
    - binary_writer::write_compact_float
    - m_data::m_value::string::size
    - m_data::m_value::object::size
    - static_cast<std::uint16_t>
    - static_cast<std::uint32_t>
    - m_data::m_value::binary::data
    - reinterpret_cast<const CharType*>
    - write_characters
    - static_cast<std::int32_t>
    - m_data::m_value::binary::has_subtype
    - static_cast<std::uint8_t>
    linkageType: ''
    returnType: void
    signature: void write_msgpack(const BasicJsonType& j)
  - BBCount: 32
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15782,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15788,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15788,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15797,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15798,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15799,1
    - Dst: binary_writer::write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15806,1
    - Dst: binary_writer::write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15812,1
    - Dst: binary_writer::write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15818,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15826,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15826,1
    - Dst: binary_writer::write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15828,1
    - Dst: m_data::m_value::string::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15828,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15829,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15830,1
    - Dst: m_data::m_value::string::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15830,1
    - Dst: m_data::m_value::string::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15831,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15839,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15839,1
    - Dst: m_data::m_value::array::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15843,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15845,1
    - Dst: binary_writer::ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15846,1
    - Dst: front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15846,1
    - Dst: std::all_of
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15847,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15847,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15847,1
    - Dst: binary_writer::ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15850,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15855,1
    - Dst: std::vector::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15855,1
    - Dst: std::vector::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15855,1
    - Dst: std::vector::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15855,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15858,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15858,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15859,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15865,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15865,1
    - Dst: binary_writer::write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15866,1
    - Dst: m_data::m_value::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15866,1
    - Dst: binary_writer::write_ubjson
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15871,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15876,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15876,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15886,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15886,1
    - Dst: m_data::m_value::binary::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15889,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15891,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15892,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15892,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15893,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15898,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15898,1
    - Dst: binary_writer::write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15899,1
    - Dst: m_data::m_value::binary::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15899,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15904,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15905,1
    - Dst: m_data::m_value::binary::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15905,1
    - Dst: m_data::m_value::binary::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15906,1
    - Dst: m_data::m_value::binary::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15910,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15912,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15912,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15913,1
    - Dst: m_data::m_value::binary::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15913,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15919,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15919,1
    - Dst: m_data::m_value::object::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15927,1
    - Dst: m_data::m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15927,1
    - Dst: m_data::m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15927,1
    - Dst: m_data::m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15927,1
    - Dst: m_data::m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15927,1
    - Dst: m_data::m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15927,1
    - Dst: m_data::m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15927,1
    - Dst: binary_writer::write_bjdata_ndarray
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15929,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15937,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15937,1
    - Dst: m_data::m_value::object::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15941,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15943,1
    - Dst: binary_writer::ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15944,1
    - Dst: front
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15944,1
    - Dst: std::all_of
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15945,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15945,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15945,1
    - Dst: binary_writer::ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15948,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15953,1
    - Dst: std::vector::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15953,1
    - Dst: std::vector::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15953,1
    - Dst: std::vector::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15953,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15956,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15956,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15957,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15963,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15963,1
    - Dst: binary_writer::write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15964,1
    - Dst: m_data::m_value::object::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15964,1
    - Dst: binary_writer::write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15969,1
    - Dst: first::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15969,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15970,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15971,1
    - Dst: first::c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15971,1
    - Dst: first::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15972,1
    - Dst: binary_writer::write_ubjson
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15973,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15978,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:15978,1
    CyclomaticComplexity: 46
    EdgeCount: 46
    ICount: 121
    argCount: 3
    argNames:
    - ' j'
    - use_count
    - use_type
    argTypes:
    - BasicJsonType
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15988
      start: 15778
    functionDepth: 2
    functionLinenumber: 15778
    functionLinenumberEnd: 15988
    functionName: binary_writer::write_ubjson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - begin
    - find
    - m_data::m_value::string::c_str
    - front
    - m_data::m_value::binary::size
    - m_data::m_value::array::size
    - m_data::m_value::object::end
    - binary_writer::write_bjdata_ndarray
    - write_character
    - binary_writer::write_ubjson
    - binary_writer::write_number_with_ubjson_prefix
    - binary_writer::ubjson_prefix
    - std::vector::end
    - binary_writer::to_char_type
    - JSON_ASSERT
    - type
    - m_data::m_value::object::empty
    - std::vector::begin
    - first::c_str
    - m_data::m_value::string::size
    - m_data::m_value::object::size
    - m_data::m_value::binary::empty
    - m_data::m_value::array::empty
    - m_data::m_value::object::find
    - end
    - std::all_of
    - m_data::m_value::binary::data
    - reinterpret_cast<const CharType*>
    - write_characters
    - first::size
    linkageType: ''
    returnType: void
    signature: "void write_ubjson(const BasicJsonType& j, const bool use_count,\n
      \                     const bool use_type, const bool add_prefix = true,\n                      const
      bool use_bjdata = false)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16001,1
    - Dst: static_cast<typename string_t::value_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16001,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16002,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16004,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16004,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16004,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16004,1
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16005,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16008,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' name'
    - ' j'
    argTypes:
    - string_t
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16009
      start: 15999
    functionDepth: 4
    functionLinenumber: 15999
    functionLinenumberEnd: 16009
    functionName: binary_writer::calc_bson_entry_header_size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - find
    - JSON_HEDLEY_UNLIKELY
    - out_of_range::create
    - concat
    - size
    - to_string
    - static_cast<void>
    - JSON_THROW
    - static_cast<typename string_t::value_type>
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t calc_bson_entry_header_size(const string_t& name, const
      BasicJsonType& j)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16017,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16017,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16018,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16019,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16019,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16020,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' name'
    - element_type
    argTypes:
    - string_t
    - std::uint8_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16021
      start: 16014
    functionDepth: 1
    functionLinenumber: 16014
    functionLinenumberEnd: 16021
    functionName: binary_writer::write_bson_entry_header
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - write_character
    - reinterpret_cast<const CharType*>
    - size
    - write_characters
    - binary_writer::to_char_type
    - c_str
    linkageType: ''
    returnType: void
    signature: "void write_bson_entry_header(const string_t& name,\n                                 const
      std::uint8_t element_type)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer::write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16029,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16030,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16030,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16030,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' name'
    - value
    argTypes:
    - string_t
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16031
      start: 16026
    functionDepth: 2
    functionLinenumber: 16026
    functionLinenumberEnd: 16031
    functionName: binary_writer::write_bson_boolean
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - write_character
    - binary_writer::to_char_type
    - binary_writer::write_bson_entry_header
    linkageType: ''
    returnType: void
    signature: "void write_bson_boolean(const string_t& name,\n                            const
      bool value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer::write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16039,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16040,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' name'
    - value
    argTypes:
    - string_t
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16041
      start: 16036
    functionDepth: 2
    functionLinenumber: 16036
    functionLinenumberEnd: 16041
    functionName: binary_writer::write_bson_double
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - binary_writer::write_number
    - binary_writer::write_bson_entry_header
    linkageType: ''
    returnType: void
    signature: "void write_bson_double(const string_t& name,\n                           const
      double value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16048,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16049
      start: 16046
    functionDepth: 1
    functionLinenumber: 16046
    functionLinenumberEnd: 16049
    functionName: binary_writer::calc_bson_string_size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t calc_bson_string_size(const string_t& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer::write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16057,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16059,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16059,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16059,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16060,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16061,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16061,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16062,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' name'
    - ' value'
    argTypes:
    - string_t
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16063
      start: 16054
    functionDepth: 2
    functionLinenumber: 16054
    functionLinenumberEnd: 16063
    functionName: binary_writer::write_bson_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - reinterpret_cast<const CharType*>
    - size
    - binary_writer::write_number
    - write_characters
    - static_cast<std::int32_t>
    - binary_writer::write_bson_entry_header
    - c_str
    linkageType: ''
    returnType: void
    signature: "void write_bson_string(const string_t& name,\n                           const
      string_t& value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer::write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16070,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' name'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16071
      start: 16068
    functionDepth: 2
    functionLinenumber: 16068
    functionLinenumberEnd: 16071
    functionName: binary_writer::write_bson_null
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - binary_writer::write_bson_entry_header
    linkageType: ''
    returnType: void
    signature: void write_bson_null(const string_t& name)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - std::int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16081
      start: 16076
    functionDepth: 0
    functionLinenumber: 16076
    functionLinenumberEnd: 16081
    functionName: binary_writer::calc_bson_integer_size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t calc_bson_integer_size(const std::int64_t value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer::write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16091,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16092,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16092,1
    - Dst: binary_writer::write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16096,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16097,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16097,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - ' name'
    - value
    argTypes:
    - string_t
    - std::int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16099
      start: 16086
    functionDepth: 2
    functionLinenumber: 16086
    functionLinenumberEnd: 16099
    functionName: binary_writer::write_bson_integer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - binary_writer::write_number
    - binary_writer::write_bson_entry_header
    - static_cast<std::int32_t>
    - static_cast<std::int64_t>
    linkageType: ''
    returnType: void
    signature: "void write_bson_integer(const string_t& name,\n                            const
      std::int64_t value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16109
      start: 16104
    functionDepth: 0
    functionLinenumber: 16104
    functionLinenumberEnd: 16109
    functionName: binary_writer::calc_bson_unsigned_size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<std::uint64_t>
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t calc_bson_unsigned_size(const std::uint64_t value) noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16117,1
    - Dst: binary_writer::write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16119,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16120,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16120,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16122,1
    - Dst: binary_writer::write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16124,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16125,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16125,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16129,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16129,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16129,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16129,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 2
    argNames:
    - ' name'
    - ' j'
    argTypes:
    - string_t
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16131
      start: 16114
    functionDepth: 4
    functionLinenumber: 16114
    functionLinenumberEnd: 16131
    functionName: binary_writer::write_bson_unsigned
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<std::int64_t>
    - static_cast<std::uint64_t>
    - out_of_range::create
    - concat
    - to_string
    - binary_writer::write_number
    - static_cast<std::int32_t>
    - JSON_THROW
    - binary_writer::write_bson_entry_header
    linkageType: ''
    returnType: void
    signature: "void write_bson_unsigned(const string_t& name,\n                             const
      BasicJsonType& j)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer::write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16139,1
    - Dst: binary_writer::write_bson_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16140,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' name'
    - ' value'
    argTypes:
    - string_t
    - typename BasicJsonType::object_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16141
      start: 16136
    functionDepth: 2
    functionLinenumber: 16136
    functionLinenumberEnd: 16141
    functionName: binary_writer::write_bson_object_entry
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - binary_writer::write_bson_object
    - binary_writer::write_bson_entry_header
    linkageType: ''
    returnType: void
    signature: "void write_bson_object_entry(const string_t& name,\n                                 const
      typename BasicJsonType::object_t& value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::accumulate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16150,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16150,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16150,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16150,1
    - Dst: binary_writer::calc_bson_element_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16152,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - typename BasicJsonType::array_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16156
      start: 16146
    functionDepth: 4
    functionLinenumber: 16146
    functionLinenumberEnd: 16156
    functionName: binary_writer::calc_bson_array_size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::accumulate
    - begin
    - to_string
    - binary_writer::calc_bson_element_size
    - end
    - static_cast<std::size_t>
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t calc_bson_array_size(const typename BasicJsonType::array_t&
      value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - typename BasicJsonType::binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16164
      start: 16161
    functionDepth: 1
    functionLinenumber: 16161
    functionLinenumberEnd: 16164
    functionName: binary_writer::calc_bson_binary_size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - size
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t calc_bson_binary_size(const typename BasicJsonType::binary_t&
      value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer::write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16172,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16173,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16173,1
    - Dst: binary_writer::calc_bson_array_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16173,1
    - Dst: binary_writer::write_bson_element
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16179,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16179,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16182,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16182,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' name'
    - ' value'
    argTypes:
    - string_t
    - typename BasicJsonType::array_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16183
      start: 16169
    functionDepth: 5
    functionLinenumber: 16169
    functionLinenumberEnd: 16183
    functionName: binary_writer::write_bson_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - write_character
    - binary_writer::calc_bson_array_size
    - binary_writer::write_bson_element
    - to_string
    - binary_writer::write_number
    - binary_writer::to_char_type
    - static_cast<std::int32_t>
    - binary_writer::write_bson_entry_header
    linkageType: ''
    returnType: void
    signature: "void write_bson_array(const string_t& name,\n                          const
      typename BasicJsonType::array_t& value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer::write_bson_entry_header
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16191,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16193,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16193,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16193,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16194,1
    - Dst: has_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16194,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16194,1
    - Dst: subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16194,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16194,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16196,1
    - Dst: reinterpret_cast<const CharType*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16196,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16196,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' name'
    - ' value'
    argTypes:
    - string_t
    - binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16197
      start: 16188
    functionDepth: 2
    functionLinenumber: 16188
    functionLinenumberEnd: 16197
    functionName: binary_writer::write_bson_binary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - subtype
    - reinterpret_cast<const CharType*>
    - size
    - binary_writer::write_number
    - data
    - write_characters
    - static_cast<std::int32_t>
    - binary_writer::write_bson_entry_header
    - has_subtype
    - static_cast<std::uint8_t>
    linkageType: ''
    returnType: void
    signature: "void write_bson_binary(const string_t& name,\n                           const
      binary_t& value)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer::calc_bson_entry_header_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16206,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16207,1
    - Dst: binary_writer::calc_bson_object_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16210,1
    - Dst: binary_writer::calc_bson_array_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16213,1
    - Dst: binary_writer::calc_bson_binary_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16216,1
    - Dst: binary_writer::calc_bson_integer_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16225,1
    - Dst: binary_writer::calc_bson_unsigned_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16228,1
    - Dst: binary_writer::calc_bson_string_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16231,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 2
    argNames:
    - ' name'
    - ' j'
    argTypes:
    - string_t
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16243
      start: 16203
    functionDepth: 5
    functionLinenumber: 16203
    functionLinenumberEnd: 16243
    functionName: binary_writer::calc_bson_element_size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - binary_writer::calc_bson_array_size
    - binary_writer::calc_bson_object_size
    - binary_writer::calc_bson_string_size
    - binary_writer::calc_bson_entry_header_size
    - binary_writer::calc_bson_integer_size
    - binary_writer::calc_bson_unsigned_size
    - JSON_ASSERT
    - type
    - binary_writer::calc_bson_binary_size
    linkageType: ''
    returnType: std::size_t
    signature: "std::size_t calc_bson_element_size(const string_t& name,\n            const
      BasicJsonType& j)"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16254,1
    - Dst: binary_writer::write_bson_object_entry
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16257,1
    - Dst: binary_writer::write_bson_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16260,1
    - Dst: binary_writer::write_bson_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16263,1
    - Dst: binary_writer::write_bson_boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16266,1
    - Dst: binary_writer::write_bson_double
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16269,1
    - Dst: binary_writer::write_bson_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16272,1
    - Dst: binary_writer::write_bson_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16275,1
    - Dst: binary_writer::write_bson_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16278,1
    - Dst: binary_writer::write_bson_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16281,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16286,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 25
    argCount: 2
    argNames:
    - ' name'
    - ' j'
    argTypes:
    - string_t
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16290
      start: 16251
    functionDepth: 6
    functionLinenumber: 16251
    functionLinenumberEnd: 16290
    functionName: binary_writer::write_bson_element
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - binary_writer::write_bson_unsigned
    - binary_writer::write_bson_double
    - binary_writer::write_bson_null
    - binary_writer::write_bson_object_entry
    - binary_writer::write_bson_integer
    - binary_writer::write_bson_binary
    - JSON_ASSERT
    - binary_writer::write_bson_string
    - type
    - binary_writer::write_bson_boolean
    - binary_writer::write_bson_array
    linkageType: ''
    returnType: void
    signature: "void write_bson_element(const string_t& name,\n                            const
      BasicJsonType& j)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::accumulate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16300,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16300,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16300,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16300,1
    - Dst: binary_writer::calc_bson_element_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - typename BasicJsonType::object_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16307
      start: 16298
    functionDepth: 6
    functionLinenumber: 16298
    functionLinenumberEnd: 16307
    functionName: binary_writer::calc_bson_object_size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - std::accumulate
    - begin
    - binary_writer::calc_bson_element_size
    - end
    - static_cast<std::size_t>
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t calc_bson_object_size(const typename BasicJsonType::object_t&
      value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16315,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16315,1
    - Dst: binary_writer::calc_bson_object_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16315,1
    - Dst: binary_writer::write_bson_element
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16319,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16322,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16322,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - typename BasicJsonType::object_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16323
      start: 16313
    functionDepth: 7
    functionLinenumber: 16313
    functionLinenumberEnd: 16323
    functionName: binary_writer::write_bson_object
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - write_character
    - binary_writer::calc_bson_object_size
    - binary_writer::write_bson_element
    - binary_writer::write_number
    - binary_writer::to_char_type
    - static_cast<std::int32_t>
    linkageType: ''
    returnType: void
    signature: void write_bson_object(const typename BasicJsonType::object_t& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16332
      start: 16329
    functionDepth: 1
    functionLinenumber: 16329
    functionLinenumberEnd: 16332
    functionName: binary_writer::get_cbor_float_prefix
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - binary_writer::to_char_type
    linkageType: ''
    returnType: CharType
    signature: CharType get_cbor_float_prefix(float /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16337
      start: 16334
    functionDepth: 1
    functionLinenumber: 16334
    functionLinenumberEnd: 16337
    functionName: binary_writer::get_cbor_float_prefix
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - binary_writer::to_char_type
    linkageType: ''
    returnType: CharType
    signature: CharType get_cbor_float_prefix(double /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16346
      start: 16343
    functionDepth: 1
    functionLinenumber: 16343
    functionLinenumberEnd: 16346
    functionName: binary_writer::get_msgpack_float_prefix
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - binary_writer::to_char_type
    linkageType: ''
    returnType: CharType
    signature: CharType get_msgpack_float_prefix(float /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16350,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16351
      start: 16348
    functionDepth: 1
    functionLinenumber: 16348
    functionLinenumberEnd: 16351
    functionName: binary_writer::get_msgpack_float_prefix
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - binary_writer::to_char_type
    linkageType: ''
    returnType: CharType
    signature: CharType get_msgpack_float_prefix(double /*unused*/)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16366,1
    - Dst: binary_writer::get_ubjson_float_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16366,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16368,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 3
    argNames:
    - n
    - add_prefix
    - use_bjdata
    argTypes:
    - NumberType
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16369
      start: 16360
    functionDepth: 1
    functionLinenumber: 16360
    functionLinenumberEnd: 16369
    functionName: binary_writer::write_number_with_ubjson_prefix
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - write_character
    - binary_writer::write_number
    - binary_writer::get_ubjson_float_prefix
    linkageType: ''
    returnType: void
    signature: "void write_number_with_ubjson_prefix(const NumberType n,\n                                         const
      bool add_prefix,\n                                         const bool use_bjdata)"
  - BBCount: 18
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16378,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16382,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16382,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16384,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16384,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16390,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16390,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16392,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16392,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16394,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16398,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16398,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16400,1
    - Dst: static_cast<std::int16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16400,1
    - Dst: static_cast<uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16402,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16406,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16406,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16408,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16408,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16410,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16414,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16414,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16416,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16416,1
    - Dst: static_cast<uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16418,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16422,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16422,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16424,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16424,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16426,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16430,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16430,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16432,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16432,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16438,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16438,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16440,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16440,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16446,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16446,1
    - Dst: BasicJsonType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16449,1
    - Dst: binary_writer::write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16450,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16450,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16451,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16453,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16453,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16453,1
    CyclomaticComplexity: 21
    EdgeCount: 21
    ICount: 57
    argCount: 3
    argNames:
    - n
    - add_prefix
    - use_bjdata
    argTypes:
    - NumberType
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16456
      start: 16374
    functionDepth: 1
    functionLinenumber: 16374
    functionLinenumberEnd: 16456
    functionName: binary_writer::write_number_with_ubjson_prefix
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - write_character
    - static_cast<uint64_t>
    - static_cast<std::uint32_t>
    - static_cast<std::uint64_t>
    - static_cast<std::int64_t>
    - static_cast<std::int16_t>
    - binary_writer::write_number_with_ubjson_prefix
    - binary_writer::write_number
    - BasicJsonType
    - binary_writer::to_char_type
    - static_cast<std::uint16_t>
    - static_cast<std::int32_t>
    - static_cast<std::uint8_t>
    - auto::size
    linkageType: ''
    returnType: void
    signature: "void write_number_with_ubjson_prefix(const NumberType n,\n                                         const
      bool add_prefix,\n                                         const bool use_bjdata)"
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16470,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16470,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16472,1
    - Dst: static_cast<std::int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16472,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16474,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16474,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16478,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16478,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16480,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16480,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16486,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16486,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16488,1
    - Dst: static_cast<std::int16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16488,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16490,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16490,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16494,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16494,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16496,1
    - Dst: static_cast<uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16496,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16502,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16502,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16504,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16504,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16506,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16506,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16510,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16510,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16512,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16512,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16518,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16518,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16520,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16520,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16527,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16527,1
    - Dst: BasicJsonType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16530,1
    - Dst: binary_writer::write_number_with_ubjson_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16531,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16531,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16532,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16534,1
    - Dst: binary_writer::to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16534,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16534,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 51
    argCount: 3
    argNames:
    - n
    - add_prefix
    - use_bjdata
    argTypes:
    - NumberType
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16538
      start: 16462
    functionDepth: 1
    functionLinenumber: 16462
    functionLinenumberEnd: 16538
    functionName: binary_writer::write_number_with_ubjson_prefix
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - write_character
    - static_cast<std::int8_t>
    - static_cast<std::int64_t>
    - static_cast<std::int16_t>
    - binary_writer::write_number_with_ubjson_prefix
    - binary_writer::write_number
    - BasicJsonType
    - binary_writer::to_char_type
    - static_cast<std::int32_t>
    - static_cast<uint32_t>
    - auto::size
    - static_cast<std::uint8_t>
    - static_cast<uint16_t>
    linkageType: ''
    returnType: void
    signature: "void write_number_with_ubjson_prefix(const NumberType n,\n                                         const
      bool add_prefix,\n                                         const bool use_bjdata)"
  - BBCount: 27
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16545,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16589,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16593,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16597,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16601,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16605,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16609,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16613,1
    - Dst: binary_writer::get_ubjson_float_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16626,1
    CyclomaticComplexity: 28
    EdgeCount: 28
    ICount: 70
    argCount: 2
    argNames:
    - ' j'
    - use_bjdata
    argTypes:
    - BasicJsonType
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16642
      start: 16543
    functionDepth: 1
    functionLinenumber: 16543
    functionLinenumberEnd: 16642
    functionName: binary_writer::ubjson_prefix
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - static_cast<std::uint64_t>
    - type
    - binary_writer::get_ubjson_float_prefix
    linkageType: ''
    returnType: CharType
    signature: CharType ubjson_prefix(const BasicJsonType& j, const bool use_bjdata)
      const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16647
      start: 16644
    functionDepth: 0
    functionLinenumber: 16644
    functionLinenumberEnd: 16647
    functionName: binary_writer::get_ubjson_float_prefix
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: CharType
    signature: CharType get_ubjson_float_prefix(float /*unused*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16652
      start: 16649
    functionDepth: 0
    functionLinenumber: 16649
    functionLinenumberEnd: 16652
    functionName: binary_writer::get_ubjson_float_prefix
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: CharType
    signature: CharType get_ubjson_float_prefix(double /*unused*/)
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: std::map::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16664,1
    - Dst: static_cast<string_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16664,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16664,1
    - Dst: std::map::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16665,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16672,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16673,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16675,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16679,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16684,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16685,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16686,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16687,1
    - Dst: binary_writer::write_ubjson
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16690,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16690,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16695,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16697,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16697,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16702,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16704,1
    - Dst: static_cast<std::int8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16704,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16709,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16711,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16711,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16716,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16718,1
    - Dst: static_cast<std::int16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16718,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16723,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16725,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16725,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16730,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16732,1
    - Dst: static_cast<std::int32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16732,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16737,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16739,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16739,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16744,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16746,1
    - Dst: static_cast<std::int64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16746,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16751,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16753,1
    - Dst: static_cast<float>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16753,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16758,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16760,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16760,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 59
    argCount: 3
    argNames:
    - ' value'
    - use_count
    - use_type
    argTypes:
    - typename BasicJsonType::object_t
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16764
      start: 16657
    functionDepth: 3
    functionLinenumber: 16657
    functionLinenumberEnd: 16764
    functionName: binary_writer::write_bjdata_ndarray
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - write_character
    - static_cast<std::int8_t>
    - static_cast<std::uint32_t>
    - binary_writer::write_ubjson
    - static_cast<std::uint64_t>
    - static_cast<std::int64_t>
    - static_cast<string_t>
    - static_cast<std::int16_t>
    - std::map::end
    - binary_writer::write_number
    - static_cast<std::uint16_t>
    - static_cast<std::int32_t>
    - static_cast<float>
    - at
    - std::map::find
    - static_cast<double>
    - static_cast<std::uint8_t>
    - static_cast<std::size_t>
    linkageType: ''
    returnType: bool
    signature: bool write_bjdata_ndarray(const typename BasicJsonType::object_t& value,
      const bool use_count, const bool use_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16788,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16788,1
    - Dst: std::reverse
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16794,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16794,1
    - Dst: std::array::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16794,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16797,1
    - Dst: std::array::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16797,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - n
    argTypes:
    - NumberType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16798
      start: 16784
    functionDepth: 1
    functionLinenumber: 16784
    functionLinenumberEnd: 16798
    functionName: binary_writer::write_number
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 13
    functionsReached:
    - std::reverse
    - std::array::end
    - std::array::data
    - std::array::begin
    - std::memcpy
    - write_characters
    linkageType: ''
    returnType: void
    signature: void write_number(const NumberType n, const bool OutputIsLittleEndian
      = false)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16806,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16806,1
    - Dst: std::numeric_limits<float>::lowest
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16806,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16807,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16807,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16808,1
    - Dst: static_cast<float>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16808,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16808,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16810,1
    - Dst: binary_writer::get_cbor_float_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16811,1
    - Dst: static_cast<float>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16811,1
    - Dst: binary_writer::get_msgpack_float_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16812,1
    - Dst: static_cast<float>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16812,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16813,1
    - Dst: static_cast<float>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16813,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16817,1
    - Dst: binary_writer::get_cbor_float_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16818,1
    - Dst: binary_writer::get_msgpack_float_prefix
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16819,1
    - Dst: binary_writer::write_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16820,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - n
    - format
    argTypes:
    - number_float_t
    - detail::input_format_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16825
      start: 16800
    functionDepth: 2
    functionLinenumber: 16800
    functionLinenumberEnd: 16825
    functionName: binary_writer::write_compact_float
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - write_character
    - binary_writer::get_msgpack_float_prefix
    - binary_writer::write_number
    - static_cast<double>
    - binary_writer::get_cbor_float_prefix
    - static_cast<float>
    - std::numeric_limits<float>::lowest
    linkageType: ''
    returnType: void
    signature: void write_compact_float(const number_float_t n, detail::input_format_t
      format)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<char*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16836,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - std::uint8_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16837
      start: 16834
    functionDepth: 0
    functionLinenumber: 16834
    functionLinenumberEnd: 16837
    functionName: binary_writer::to_char_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 13
    functionsReached:
    - reinterpret_cast<char*>
    linkageType: ''
    returnType: CharType
    signature: CharType to_char_type(std::uint8_t x) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16846,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - std::uint8_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16848
      start: 16841
    functionDepth: 0
    functionLinenumber: 16841
    functionLinenumberEnd: 16848
    functionName: binary_writer::to_char_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 13
    functionsReached:
    - std::memcpy
    linkageType: ''
    returnType: CharType
    signature: CharType to_char_type(std::uint8_t x) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - std::uint8_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16855
      start: 16852
    functionDepth: 0
    functionLinenumber: 16852
    functionLinenumberEnd: 16855
    functionName: binary_writer::to_char_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: CharType
    signature: CharType to_char_type(std::uint8_t x) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - InputCharType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16866
      start: 16863
    functionDepth: 0
    functionLinenumber: 16863
    functionLinenumberEnd: 16866
    functionName: binary_writer::to_char_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 13
    functionsReached: []
    linkageType: ''
    returnType: CharType
    signature: CharType to_char_type(InputCharType x) noexcept
  - BBCount: 21
    BranchProfiles: []
    Callsites:
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16960,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16979,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16980,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17056,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17075,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17076,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17098,1
    - Dst: std::isfinite
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17098,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17099,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17118,1
    - Dst: reinterpret_bits<bits_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17118,1
    - Dst: diyfp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17124,1
    - Dst: diyfp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17125,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17125,1
    - Dst: diyfp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17149,1
    - Dst: diyfp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17151,1
    - Dst: diyfp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17152,1
    - Dst: dtoa_impl::normalize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17155,1
    - Dst: dtoa_impl::normalize_to
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17158,1
    - Dst: dtoa_impl::normalize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17160,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17379,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17380,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17382,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17385,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17386,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17386,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17386,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17388,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17389,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17390,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17456,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17457,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17458,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17459,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17484,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17512,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17513,1
    - Dst: dtoa_impl::sub
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17515,1
    - Dst: dtoa_impl::sub
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17516,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17527,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17534,1
    - Dst: find_largest_pow10
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17537,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17570,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17571,1
    - Dst: grisu2_round
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17607,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17657,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17668,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17677,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17678,1
    - Dst: grisu2_round
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17712,1
    - Dst: JSON_HEDLEY_NON_NULL
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17734,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17738,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17739,1
    - Dst: get_cached_power_for_binary_exponent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17750,1
    - Dst: dtoa_impl::mul
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17755,1
    - Dst: dtoa_impl::mul
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17756,1
    - Dst: dtoa_impl::mul
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17757,1
    - Dst: grisu2_digit_gen
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17785,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17800,1
    - Dst: std::isfinite
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17800,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17801,1
    - Dst: compute_boundaries
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17820,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17820,1
    - Dst: compute_boundaries
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17822,1
    - Dst: grisu2
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17825,1
    - Dst: JSON_HEDLEY_NON_NULL
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17833,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17837,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17838,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17850,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17856,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17860,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17862,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17866,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17868,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17870,1
    - Dst: JSON_HEDLEY_NON_NULL
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17885,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17890,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17891,1
    - Dst: std::memset
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17905,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17905,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17905,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17909,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17917,1
    - Dst: std::memmove
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17919,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17919,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17919,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17919,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17921,1
    - Dst: std::memmove
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17929,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17929,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17929,1
    - Dst: std::memset
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17932,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17932,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17933,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17933,1
    - Dst: std::memmove
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17948,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17948,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17950,1
    - Dst: append_exponent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17954,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17975,1
    - Dst: std::isfinite
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17975,1
    - Dst: std::signbit
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17978,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18000,1
    - Dst: dtoa_impl::grisu2
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18008,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18010,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18017,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18018,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18019,1
    - Dst: dtoa_impl::format_buffer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18021,1
    CyclomaticComplexity: 32
    EdgeCount: 32
    ICount: 200
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18022
      start: 16928
    functionDepth: 1
    functionLinenumber: 16928
    functionLinenumberEnd: 18022
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - dtoa_impl::format_buffer
    - JSON_HEDLEY_NON_NULL
    - std::memcpy
    - std::array::size
    - std::memset
    - dtoa_impl::normalize_to
    - static_cast<size_t>
    - get_cached_power_for_binary_exponent
    - static_cast<double>
    - std::memmove
    - grisu2_round
    - reinterpret_bits<bits_type>
    - static_cast<char>
    - static_cast<std::uint64_t>
    - grisu2_digit_gen
    - compute_boundaries
    - JSON_ASSERT
    - static_cast<std::size_t>
    - find_largest_pow10
    - std::isfinite
    - grisu2
    - dtoa_impl::mul
    - dtoa_impl::normalize
    - append_exponent
    - static_cast<std::uint32_t>
    - std::signbit
    - diyfp
    - dtoa_impl::grisu2
    - dtoa_impl::sub
    - static_cast<int>
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: NLOHMANN_JSON_NAMESPACE_BEGIN namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16960,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - source
    argTypes:
    - Source
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16962
      start: 16955
    functionDepth: 0
    functionLinenumber: 16955
    functionLinenumberEnd: 16962
    functionName: dtoa_impl::reinterpret_bits
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::memcpy
    linkageType: ''
    returnType: Target
    signature: Target reinterpret_bits(const Source source)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - f_
    - e_
    argTypes:
    - std::uint64_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16971
      start: 16971
    functionDepth: 0
    functionLinenumber: 16971
    functionLinenumberEnd: 16971
    functionName: dtoa_impl::diyfp
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void diyfp(std::uint64_t f_, int e_) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16979,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16980,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - diyfp
    - diyfp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16983
      start: 16977
    functionDepth: 1
    functionLinenumber: 16977
    functionLinenumberEnd: 16983
    functionName: dtoa_impl::sub
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - JSON_ASSERT
    linkageType: ''
    returnType: diyfp
    signature: diyfp sub(const diyfp& x, const diyfp& y) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - diyfp
    - diyfp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17048
      start: 16989
    functionDepth: 0
    functionLinenumber: 16989
    functionLinenumberEnd: 17048
    functionName: dtoa_impl::mul
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: diyfp
    signature: diyfp mul(const diyfp& x, const diyfp& y) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17056,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - diyfp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17065
      start: 17054
    functionDepth: 1
    functionLinenumber: 17054
    functionLinenumberEnd: 17065
    functionName: dtoa_impl::normalize
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - JSON_ASSERT
    linkageType: ''
    returnType: diyfp
    signature: diyfp normalize(diyfp x) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17075,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17076,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' x'
    - target_exponent
    argTypes:
    - diyfp
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17079
      start: 17071
    functionDepth: 1
    functionLinenumber: 17071
    functionLinenumberEnd: 17079
    functionName: dtoa_impl::normalize_to
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - JSON_ASSERT
    linkageType: ''
    returnType: diyfp
    signature: diyfp normalize_to(const diyfp& x, const int target_exponent) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17098,1
    - Dst: std::isfinite
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17098,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17099,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17118,1
    - Dst: dtoa_impl::reinterpret_bits
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17118,1
    - Dst: dtoa_impl::diyfp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17124,1
    - Dst: dtoa_impl::diyfp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17125,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17125,1
    - Dst: dtoa_impl::diyfp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17149,1
    - Dst: dtoa_impl::diyfp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17151,1
    - Dst: dtoa_impl::diyfp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17152,1
    - Dst: dtoa_impl::normalize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17155,1
    - Dst: dtoa_impl::normalize_to
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17158,1
    - Dst: dtoa_impl::normalize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17160,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - value
    argTypes:
    - FloatType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17161
      start: 17096
    functionDepth: 2
    functionLinenumber: 17096
    functionLinenumberEnd: 17161
    functionName: dtoa_impl::compute_boundaries
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<std::uint64_t>
    - std::isfinite
    - dtoa_impl::normalize_to
    - JSON_ASSERT
    - dtoa_impl::normalize
    - dtoa_impl::diyfp
    - static_cast<int>
    - dtoa_impl::reinterpret_bits
    linkageType: ''
    returnType: boundaries
    signature: boundaries compute_boundaries(FloatType value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17379,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17380,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17382,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17385,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17386,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17386,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17386,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17388,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17389,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - e
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17393
      start: 17235
    functionDepth: 1
    functionLinenumber: 17235
    functionLinenumberEnd: 17393
    functionName: dtoa_impl::get_cached_power_for_binary_exponent
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::array::size
    - JSON_ASSERT
    - static_cast<int>
    - static_cast<std::size_t>
    linkageType: ''
    returnType: cached_power
    signature: cached_power get_cached_power_for_binary_exponent(int e)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 39
    argCount: 2
    argNames:
    - n
    - ' pow10'
    argTypes:
    - std::uint32_t
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17451
      start: 17399
    functionDepth: 0
    functionLinenumber: 17399
    functionLinenumberEnd: 17451
    functionName: dtoa_impl::find_largest_pow10
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int find_largest_pow10(const std::uint32_t n, std::uint32_t& pow10)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17456,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17457,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17458,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17459,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17484,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 6
    argNames:
    - buf
    - len
    - dist
    - delta
    - rest
    - ten_k
    argTypes:
    - char*
    - int
    - std::uint64_t
    - std::uint64_t
    - std::uint64_t
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17488
      start: 17453
    functionDepth: 1
    functionLinenumber: 17453
    functionLinenumberEnd: 17488
    functionName: dtoa_impl::grisu2_round
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_ASSERT
    linkageType: ''
    returnType: void
    signature: "void grisu2_round(char* buf, int len, std::uint64_t dist, std::uint64_t
      delta,\n                         std::uint64_t rest, std::uint64_t ten_k)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17512,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17513,1
    - Dst: dtoa_impl::sub
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17515,1
    - Dst: dtoa_impl::sub
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17516,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17527,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17534,1
    - Dst: dtoa_impl::find_largest_pow10
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17537,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17570,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17571,1
    - Dst: dtoa_impl::grisu2_round
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17607,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17657,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17668,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17677,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17678,1
    - Dst: dtoa_impl::grisu2_round
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17712,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 32
    argCount: 6
    argNames:
    - buffer
    - ' length'
    - ' decimal_exponent'
    - M_minus
    - w
    - M_plus
    argTypes:
    - char*
    - int
    - int
    - diyfp
    - diyfp
    - diyfp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17727
      start: 17494
    functionDepth: 2
    functionLinenumber: 17494
    functionLinenumberEnd: 17727
    functionName: dtoa_impl::grisu2_digit_gen
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char>
    - static_cast<std::uint32_t>
    - dtoa_impl::sub
    - JSON_ASSERT
    - dtoa_impl::find_largest_pow10
    - dtoa_impl::grisu2_round
    linkageType: ''
    returnType: void
    signature: "void grisu2_digit_gen(char* buffer, int& length, int& decimal_exponent,\n
      \                            diyfp M_minus, diyfp w, diyfp M_plus)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17738,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17739,1
    - Dst: dtoa_impl::get_cached_power_for_binary_exponent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17750,1
    - Dst: dtoa_impl::mul
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17755,1
    - Dst: dtoa_impl::mul
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17756,1
    - Dst: dtoa_impl::mul
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17757,1
    - Dst: dtoa_impl::grisu2_digit_gen
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17785,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - buf
    - ' len'
    - ' decimal_exponent'
    - m_minus
    - v
    - m_plus
    argTypes:
    - char*
    - int
    - int
    - diyfp
    - diyfp
    - diyfp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17786
      start: 17735
    functionDepth: 3
    functionLinenumber: 17735
    functionLinenumberEnd: 17786
    functionName: dtoa_impl::grisu2
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - dtoa_impl::get_cached_power_for_binary_exponent
    - JSON_ASSERT
    - dtoa_impl::grisu2_digit_gen
    - dtoa_impl::mul
    linkageType: ''
    returnType: void
    signature: "void grisu2(char* buf, int& len, int& decimal_exponent,\n                   diyfp
      m_minus, diyfp v, diyfp m_plus)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17800,1
    - Dst: std::isfinite
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17800,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17801,1
    - Dst: dtoa_impl::compute_boundaries
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17820,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17820,1
    - Dst: dtoa_impl::compute_boundaries
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17822,1
    - Dst: dtoa_impl::grisu2
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17825,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - buf
    - ' len'
    - ' decimal_exponent'
    - value
    argTypes:
    - char*
    - int
    - int
    - FloatType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17826
      start: 17794
    functionDepth: 4
    functionLinenumber: 17794
    functionLinenumberEnd: 17826
    functionName: '(1)

      void grisu2(char* buf, int& len, int& decimal_exponent, FloatType value)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - dtoa_impl::compute_boundaries
    - std::isfinite
    - dtoa_impl::grisu2
    - JSON_ASSERT
    - static_cast<double>
    linkageType: ''
    returnType: JSON_HEDLEY_NON_NULL
    signature: 'JSON_HEDLEY_NON_NULL (1)

      void grisu2(char* buf, int& len, int& decimal_exponent, FloatType value)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17837,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17838,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17850,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17856,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17860,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17862,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17866,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17868,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17870,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 2
    argNames:
    - buf
    - e
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17874
      start: 17835
    functionDepth: 1
    functionLinenumber: 17835
    functionLinenumberEnd: 17874
    functionName: dtoa_impl::append_exponent
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_ASSERT
    - static_cast<char>
    - static_cast<std::uint32_t>
    linkageType: ''
    returnType: char
    signature: char * append_exponent(char* buf, int e)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17890,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17891,1
    - Dst: std::memset
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17905,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17905,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17905,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17909,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17917,1
    - Dst: std::memmove
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17919,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17919,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17919,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17919,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17921,1
    - Dst: std::memmove
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17929,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17929,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17929,1
    - Dst: std::memset
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17932,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17932,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17933,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17933,1
    - Dst: std::memmove
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17948,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17948,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17950,1
    - Dst: dtoa_impl::append_exponent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17954,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 5
    argNames:
    - buf
    - len
    - decimal_exponent
    - min_exp
    - max_exp
    argTypes:
    - char*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17955
      start: 17887
    functionDepth: 2
    functionLinenumber: 17887
    functionLinenumberEnd: 17955
    functionName: dtoa_impl::format_buffer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - dtoa_impl::append_exponent
    - std::memset
    - static_cast<size_t>
    - JSON_ASSERT
    - std::memmove
    linkageType: ''
    returnType: char
    signature: "char * format_buffer(char* buf, int len, int decimal_exponent,\n                           int
      min_exp, int max_exp)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16960,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - source
    argTypes:
    - Source
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16962
      start: 16955
    functionDepth: 0
    functionLinenumber: 16955
    functionLinenumberEnd: 16962
    functionName: dtoa_impl::reinterpret_bits
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - std::memcpy
    linkageType: ''
    returnType: Target
    signature: Target reinterpret_bits(const Source source)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - f_
    - e_
    argTypes:
    - std::uint64_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16971
      start: 16971
    functionDepth: 0
    functionLinenumber: 16971
    functionLinenumberEnd: 16971
    functionName: dtoa_impl::diyfp
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void diyfp(std::uint64_t f_, int e_) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16979,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:16980,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - diyfp
    - diyfp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 16983
      start: 16977
    functionDepth: 1
    functionLinenumber: 16977
    functionLinenumberEnd: 16983
    functionName: dtoa_impl::sub
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - JSON_ASSERT
    linkageType: ''
    returnType: diyfp
    signature: diyfp sub(const diyfp& x, const diyfp& y) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - diyfp
    - diyfp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17048
      start: 16989
    functionDepth: 0
    functionLinenumber: 16989
    functionLinenumberEnd: 17048
    functionName: dtoa_impl::mul
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: diyfp
    signature: diyfp mul(const diyfp& x, const diyfp& y) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17056,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - x
    argTypes:
    - diyfp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17065
      start: 17054
    functionDepth: 1
    functionLinenumber: 17054
    functionLinenumberEnd: 17065
    functionName: dtoa_impl::normalize
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - JSON_ASSERT
    linkageType: ''
    returnType: diyfp
    signature: diyfp normalize(diyfp x) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17075,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17076,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' x'
    - target_exponent
    argTypes:
    - diyfp
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17079
      start: 17071
    functionDepth: 1
    functionLinenumber: 17071
    functionLinenumberEnd: 17079
    functionName: dtoa_impl::normalize_to
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - JSON_ASSERT
    linkageType: ''
    returnType: diyfp
    signature: diyfp normalize_to(const diyfp& x, const int target_exponent) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17098,1
    - Dst: std::isfinite
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17098,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17099,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17118,1
    - Dst: dtoa_impl::reinterpret_bits
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17118,1
    - Dst: dtoa_impl::diyfp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17124,1
    - Dst: dtoa_impl::diyfp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17125,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17125,1
    - Dst: dtoa_impl::diyfp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17149,1
    - Dst: dtoa_impl::diyfp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17151,1
    - Dst: dtoa_impl::diyfp
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17152,1
    - Dst: dtoa_impl::normalize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17155,1
    - Dst: dtoa_impl::normalize_to
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17158,1
    - Dst: dtoa_impl::normalize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17160,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - value
    argTypes:
    - FloatType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17161
      start: 17096
    functionDepth: 2
    functionLinenumber: 17096
    functionLinenumberEnd: 17161
    functionName: dtoa_impl::compute_boundaries
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - static_cast<std::uint64_t>
    - std::isfinite
    - dtoa_impl::normalize_to
    - JSON_ASSERT
    - dtoa_impl::normalize
    - dtoa_impl::diyfp
    - static_cast<int>
    - dtoa_impl::reinterpret_bits
    linkageType: ''
    returnType: boundaries
    signature: boundaries compute_boundaries(FloatType value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17379,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17380,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17382,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17385,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17386,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17386,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17386,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17388,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17389,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 1
    argNames:
    - e
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17393
      start: 17235
    functionDepth: 1
    functionLinenumber: 17235
    functionLinenumberEnd: 17393
    functionName: dtoa_impl::get_cached_power_for_binary_exponent
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - std::array::size
    - JSON_ASSERT
    - static_cast<int>
    - static_cast<std::size_t>
    linkageType: ''
    returnType: cached_power
    signature: cached_power get_cached_power_for_binary_exponent(int e)
  - BBCount: 10
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 39
    argCount: 2
    argNames:
    - n
    - ' pow10'
    argTypes:
    - std::uint32_t
    - std::uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17451
      start: 17399
    functionDepth: 0
    functionLinenumber: 17399
    functionLinenumberEnd: 17451
    functionName: dtoa_impl::find_largest_pow10
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int find_largest_pow10(const std::uint32_t n, std::uint32_t& pow10)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17456,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17457,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17458,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17459,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17484,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 6
    argNames:
    - buf
    - len
    - dist
    - delta
    - rest
    - ten_k
    argTypes:
    - char*
    - int
    - std::uint64_t
    - std::uint64_t
    - std::uint64_t
    - std::uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17488
      start: 17453
    functionDepth: 1
    functionLinenumber: 17453
    functionLinenumberEnd: 17488
    functionName: dtoa_impl::grisu2_round
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - JSON_ASSERT
    linkageType: ''
    returnType: void
    signature: "void grisu2_round(char* buf, int len, std::uint64_t dist, std::uint64_t
      delta,\n                         std::uint64_t rest, std::uint64_t ten_k)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17512,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17513,1
    - Dst: dtoa_impl::sub
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17515,1
    - Dst: dtoa_impl::sub
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17516,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17527,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17534,1
    - Dst: dtoa_impl::find_largest_pow10
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17537,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17570,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17571,1
    - Dst: dtoa_impl::grisu2_round
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17607,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17657,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17668,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17677,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17678,1
    - Dst: dtoa_impl::grisu2_round
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17712,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 32
    argCount: 6
    argNames:
    - buffer
    - ' length'
    - ' decimal_exponent'
    - M_minus
    - w
    - M_plus
    argTypes:
    - char*
    - int
    - int
    - diyfp
    - diyfp
    - diyfp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17727
      start: 17494
    functionDepth: 2
    functionLinenumber: 17494
    functionLinenumberEnd: 17727
    functionName: dtoa_impl::grisu2_digit_gen
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - static_cast<char>
    - static_cast<std::uint32_t>
    - dtoa_impl::sub
    - JSON_ASSERT
    - dtoa_impl::find_largest_pow10
    - dtoa_impl::grisu2_round
    linkageType: ''
    returnType: void
    signature: "void grisu2_digit_gen(char* buffer, int& length, int& decimal_exponent,\n
      \                            diyfp M_minus, diyfp w, diyfp M_plus)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17738,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17739,1
    - Dst: dtoa_impl::get_cached_power_for_binary_exponent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17750,1
    - Dst: dtoa_impl::mul
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17755,1
    - Dst: dtoa_impl::mul
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17756,1
    - Dst: dtoa_impl::mul
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17757,1
    - Dst: dtoa_impl::grisu2_digit_gen
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17785,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 6
    argNames:
    - buf
    - ' len'
    - ' decimal_exponent'
    - m_minus
    - v
    - m_plus
    argTypes:
    - char*
    - int
    - int
    - diyfp
    - diyfp
    - diyfp
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17786
      start: 17735
    functionDepth: 3
    functionLinenumber: 17735
    functionLinenumberEnd: 17786
    functionName: dtoa_impl::grisu2
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - dtoa_impl::get_cached_power_for_binary_exponent
    - JSON_ASSERT
    - dtoa_impl::grisu2_digit_gen
    - dtoa_impl::mul
    linkageType: ''
    returnType: void
    signature: "void grisu2(char* buf, int& len, int& decimal_exponent,\n                   diyfp
      m_minus, diyfp v, diyfp m_plus)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17800,1
    - Dst: std::isfinite
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17800,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17801,1
    - Dst: compute_boundaries
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17820,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17820,1
    - Dst: compute_boundaries
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17822,1
    - Dst: grisu2
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17825,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 4
    argNames:
    - buf
    - ' len'
    - ' decimal_exponent'
    - value
    argTypes:
    - char*
    - int
    - int
    - FloatType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17826
      start: 17794
    functionDepth: 1
    functionLinenumber: 17794
    functionLinenumberEnd: 17826
    functionName: '(1)

      void grisu2(char* buf, int& len, int& decimal_exponent, FloatType value)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::isfinite
    - grisu2
    - compute_boundaries
    - JSON_ASSERT
    - static_cast<double>
    linkageType: ''
    returnType: JSON_HEDLEY_NON_NULL
    signature: 'JSON_HEDLEY_NON_NULL (1)

      void grisu2(char* buf, int& len, int& decimal_exponent, FloatType value)'
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17837,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17838,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17850,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17856,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17860,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17862,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17866,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17868,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17870,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 25
    argCount: 2
    argNames:
    - buf
    - e
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17874
      start: 17835
    functionDepth: 1
    functionLinenumber: 17835
    functionLinenumberEnd: 17874
    functionName: dtoa_impl::append_exponent
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - JSON_ASSERT
    - static_cast<char>
    - static_cast<std::uint32_t>
    linkageType: ''
    returnType: char
    signature: char * append_exponent(char* buf, int e)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17890,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17891,1
    - Dst: std::memset
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17905,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17905,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17905,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17909,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17917,1
    - Dst: std::memmove
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17919,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17919,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17919,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17919,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17921,1
    - Dst: std::memmove
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17929,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17929,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17929,1
    - Dst: std::memset
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17932,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17932,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17933,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17933,1
    - Dst: std::memmove
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17948,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17948,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17950,1
    - Dst: dtoa_impl::append_exponent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:17954,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 31
    argCount: 5
    argNames:
    - buf
    - len
    - decimal_exponent
    - min_exp
    - max_exp
    argTypes:
    - char*
    - int
    - int
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17955
      start: 17887
    functionDepth: 2
    functionLinenumber: 17887
    functionLinenumberEnd: 17955
    functionName: dtoa_impl::format_buffer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - dtoa_impl::append_exponent
    - std::memset
    - static_cast<size_t>
    - JSON_ASSERT
    - std::memmove
    linkageType: ''
    returnType: char
    signature: "char * format_buffer(char* buf, int len, int decimal_exponent,\n                           int
      min_exp, int max_exp)"
  - BBCount: 53
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18077,1
    - Dst: std::localeconv
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18078,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18079,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18080,1
    - Dst: m_data::m_value::object::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18125,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18127,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18133,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18137,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18137,1
    - Dst: resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18139,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18139,1
    - Dst: m_data::m_value::object::cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18143,1
    - Dst: m_data::m_value::object::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18144,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18146,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18146,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18147,1
    - Dst: dump_escaped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18148,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18149,1
    - Dst: dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18150,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18151,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18155,1
    - Dst: m_data::m_value::object::cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18155,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18156,1
    - Dst: std::next
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18156,1
    - Dst: m_data::m_value::object::cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18156,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18157,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18157,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18158,1
    - Dst: dump_escaped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18159,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18160,1
    - Dst: dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18161,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18163,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18164,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18164,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18165,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18169,1
    - Dst: m_data::m_value::object::cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18172,1
    - Dst: m_data::m_value::object::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18173,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18175,1
    - Dst: dump_escaped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18176,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18177,1
    - Dst: dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18178,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18179,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18183,1
    - Dst: m_data::m_value::object::cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18183,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18184,1
    - Dst: std::next
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18184,1
    - Dst: m_data::m_value::object::cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18184,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18185,1
    - Dst: dump_escaped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18186,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18187,1
    - Dst: dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18188,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18190,1
    - Dst: m_data::m_value::array::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18198,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18200,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18206,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18210,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18210,1
    - Dst: resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18212,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18212,1
    - Dst: m_data::m_value::array::cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18216,1
    - Dst: m_data::m_value::array::cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18217,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18219,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18219,1
    - Dst: dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18220,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18221,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18225,1
    - Dst: m_data::m_value::array::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18225,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18226,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18226,1
    - Dst: dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18227,1
    - Dst: m_data::m_value::array::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18227,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18229,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18230,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18230,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18231,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18235,1
    - Dst: m_data::m_value::array::cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18238,1
    - Dst: m_data::m_value::array::cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18239,1
    - Dst: dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18241,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18242,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18246,1
    - Dst: m_data::m_value::array::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18246,1
    - Dst: dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18247,1
    - Dst: m_data::m_value::array::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18247,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18249,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18257,1
    - Dst: dump_escaped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18258,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18259,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18267,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18271,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18271,1
    - Dst: resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18273,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18273,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18276,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18276,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18278,1
    - Dst: m_data::m_value::binary::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18280,1
    - Dst: m_data::m_value::binary::cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18282,1
    - Dst: m_data::m_value::binary::cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18283,1
    - Dst: dump_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18285,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18286,1
    - Dst: dump_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18288,1
    - Dst: m_data::m_value::binary::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18288,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18291,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18292,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18292,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18294,1
    - Dst: m_data::m_value::binary::has_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18295,1
    - Dst: dump_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18297,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18297,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18301,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18303,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18304,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18304,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18305,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18309,1
    - Dst: m_data::m_value::binary::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18311,1
    - Dst: m_data::m_value::binary::cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18313,1
    - Dst: m_data::m_value::binary::cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18314,1
    - Dst: dump_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18316,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18317,1
    - Dst: dump_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18319,1
    - Dst: m_data::m_value::binary::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18319,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18322,1
    - Dst: m_data::m_value::binary::has_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18323,1
    - Dst: dump_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18325,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18325,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18326,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18330,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18340,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18344,1
    - Dst: dump_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18351,1
    - Dst: dump_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18357,1
    - Dst: dump_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18363,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18369,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18375,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18380,1
    - Dst: dump_escaped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18399,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18409,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18411,1
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18477,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18477,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18478,1
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18484,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18484,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18485,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18486,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18503,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18505,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18505,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18521,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18521,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18521,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18521,1
    - Dst: hex_bytes
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18521,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18554,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18555,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18556,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18562,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18564,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18564,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18579,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18598,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18603,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18603,1
    - Dst: switch
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18609,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18613,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18613,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18613,1
    - Dst: hex_bytes
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18613,1
    - Dst: static_cast<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18613,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18613,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18619,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18619,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18626,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18626,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18634,1
    CyclomaticComplexity: 52
    EdgeCount: 52
    ICount: 294
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18678
      start: 18025
    functionDepth: 5
    functionLinenumber: 18025
    functionLinenumberEnd: 18678
    functionName: NLOHMANN_JSON_NAMESPACE_BEGIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - m_data::m_value::object::cbegin
    - m_data::m_value::array::cbegin
    - m_data::m_value::array::back
    - size
    - std::next
    - JSON_THROW
    - switch
    - write_character
    - dump
    - dump_float
    - JSON_HEDLEY_UNLIKELY
    - m_data::m_value::binary::cbegin
    - data
    - back
    - m_data::m_value::binary::subtype
    - to_char_type
    - JSON_ASSERT
    - m_data::m_value::object::empty
    - std::localeconv
    - m_data::m_value::binary::cend
    - dump_integer
    - m_data::m_value::object::size
    - hex_bytes
    - m_data::m_value::binary::empty
    - concat
    - m_data::m_value::array::empty
    - to_string
    - static_cast<std::uint16_t>
    - dump_escaped
    - c_str
    - m_data::m_value::binary::back
    - std::move
    - JSON_HEDLEY_LIKELY
    - static_cast<void>
    - write_characters
    - m_data::m_value::array::cend
    - type_error::create
    - m_data::m_value::object::cend
    - m_data::m_value::binary::has_subtype
    - static_cast<std::uint8_t>
    - resize
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_END
    signature: NLOHMANN_JSON_NAMESPACE_END NLOHMANN_JSON_NAMESPACE_BEGIN
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18077,1
    - Dst: std::localeconv
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18078,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18079,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18080,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - s
    - ichar
    argTypes:
    - output_adapter_t<char>
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18084
      start: 18075
    functionDepth: 1
    functionLinenumber: 18075
    functionLinenumberEnd: 18084
    functionName: serializer::serializer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::localeconv
    - to_char_type
    - std::move
    linkageType: ''
    returnType: void
    signature: "void serializer(output_adapter_t<char> s, const char ichar,\n               error_handler_t
      error_handler_ = error_handler_t::strict)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18087
      start: 18087
    functionDepth: 0
    functionLinenumber: 18087
    functionLinenumberEnd: 18087
    functionName: serializer::serializer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void serializer(const serializer&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18088
      start: 18088
    functionDepth: 0
    functionLinenumber: 18088
    functionLinenumberEnd: 18088
    functionName: '& operator=(const serializer&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: serializer
    signature: serializer & operator=(const serializer&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18089
      start: 18089
    functionDepth: 0
    functionLinenumber: 18089
    functionLinenumberEnd: 18089
    functionName: serializer::serializer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void serializer(serializer&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18090
      start: 18090
    functionDepth: 0
    functionLinenumber: 18090
    functionLinenumberEnd: 18090
    functionName: '& operator=(serializer&&)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: serializer
    signature: serializer & operator=(serializer&&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18091
      start: 18091
    functionDepth: 0
    functionLinenumber: 18091
    functionLinenumberEnd: 18091
    functionName: ~serializer()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~serializer()
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: m_data::m_value::object::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18125,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18127,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18133,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18137,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18137,1
    - Dst: resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18139,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18139,1
    - Dst: m_data::m_value::object::cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18143,1
    - Dst: m_data::m_value::object::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18144,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18146,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18146,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18147,1
    - Dst: dump_escaped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18148,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18149,1
    - Dst: serializer::dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18150,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18151,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18155,1
    - Dst: m_data::m_value::object::cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18155,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18156,1
    - Dst: std::next
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18156,1
    - Dst: m_data::m_value::object::cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18156,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18157,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18157,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18158,1
    - Dst: dump_escaped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18159,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18160,1
    - Dst: serializer::dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18161,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18163,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18164,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18164,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18165,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18169,1
    - Dst: m_data::m_value::object::cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18172,1
    - Dst: m_data::m_value::object::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18173,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18175,1
    - Dst: dump_escaped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18176,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18177,1
    - Dst: serializer::dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18178,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18179,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18183,1
    - Dst: m_data::m_value::object::cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18183,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18184,1
    - Dst: std::next
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18184,1
    - Dst: m_data::m_value::object::cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18184,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18185,1
    - Dst: dump_escaped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18186,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18187,1
    - Dst: serializer::dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18188,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18190,1
    - Dst: m_data::m_value::array::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18198,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18200,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18206,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18210,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18210,1
    - Dst: resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18212,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18212,1
    - Dst: m_data::m_value::array::cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18216,1
    - Dst: m_data::m_value::array::cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18217,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18219,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18219,1
    - Dst: serializer::dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18220,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18221,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18225,1
    - Dst: m_data::m_value::array::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18225,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18226,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18226,1
    - Dst: serializer::dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18227,1
    - Dst: m_data::m_value::array::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18227,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18229,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18230,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18230,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18231,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18235,1
    - Dst: m_data::m_value::array::cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18238,1
    - Dst: m_data::m_value::array::cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18239,1
    - Dst: serializer::dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18241,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18242,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18246,1
    - Dst: m_data::m_value::array::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18246,1
    - Dst: serializer::dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18247,1
    - Dst: m_data::m_value::array::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18247,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18249,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18257,1
    - Dst: dump_escaped
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18258,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18259,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18267,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18271,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18271,1
    - Dst: resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18273,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18273,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18276,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18276,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18278,1
    - Dst: m_data::m_value::binary::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18280,1
    - Dst: m_data::m_value::binary::cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18282,1
    - Dst: m_data::m_value::binary::cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18283,1
    - Dst: dump_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18285,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18286,1
    - Dst: dump_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18288,1
    - Dst: m_data::m_value::binary::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18288,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18291,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18292,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18292,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18294,1
    - Dst: m_data::m_value::binary::has_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18295,1
    - Dst: dump_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18297,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18297,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18301,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18303,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18304,1
    - Dst: c_str
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18304,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18305,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18309,1
    - Dst: m_data::m_value::binary::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18311,1
    - Dst: m_data::m_value::binary::cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18313,1
    - Dst: m_data::m_value::binary::cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18314,1
    - Dst: dump_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18316,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18317,1
    - Dst: dump_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18319,1
    - Dst: m_data::m_value::binary::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18319,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18322,1
    - Dst: m_data::m_value::binary::has_subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18323,1
    - Dst: dump_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18325,1
    - Dst: m_data::m_value::binary::subtype
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18325,1
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18326,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18330,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18340,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18344,1
    - Dst: dump_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18351,1
    - Dst: dump_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18357,1
    - Dst: dump_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18363,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18369,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18375,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18380,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 164
    argCount: 4
    argNames:
    - ' val'
    - pretty_print
    - ensure_ascii
    - indent_step
    argTypes:
    - BasicJsonType
    - bool
    - bool
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18382
      start: 18115
    functionDepth: 5
    functionLinenumber: 18115
    functionLinenumberEnd: 18382
    functionName: serializer::dump
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - m_data::m_value::object::cbegin
    - m_data::m_value::array::cbegin
    - m_data::m_value::array::back
    - size
    - std::next
    - write_character
    - dump_float
    - JSON_HEDLEY_UNLIKELY
    - m_data::m_value::binary::cbegin
    - m_data::m_value::binary::subtype
    - JSON_ASSERT
    - m_data::m_value::object::empty
    - m_data::m_value::binary::cend
    - dump_integer
    - m_data::m_value::object::size
    - m_data::m_value::binary::empty
    - m_data::m_value::array::empty
    - dump_escaped
    - serializer::dump
    - c_str
    - m_data::m_value::binary::back
    - write_characters
    - m_data::m_value::array::cend
    - m_data::m_value::object::cend
    - m_data::m_value::binary::has_subtype
    - resize
    linkageType: ''
    returnType: void
    signature: "void dump(const BasicJsonType& val,\n              const bool pretty_print,\n
      \             const bool ensure_ascii,\n              const unsigned int indent_step,\n
      \             const unsigned int current_indent = 0)"
  - BBCount: 24
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18477,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18477,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18478,1
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18484,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18484,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18485,1
    - Dst: static_cast<std::uint16_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18486,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18503,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18505,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18505,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18521,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18521,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18521,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18521,1
    - Dst: hex_bytes
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18521,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18554,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18555,1
    - Dst: to_char_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18556,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18562,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18564,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18564,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18579,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 107
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18594
      start: 18413
    functionDepth: 4
    functionLinenumber: 18413
    functionLinenumberEnd: 18594
    functionName: serializer::switch
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - hex_bytes
    - concat
    - size
    - static_cast<void>
    - to_string
    - data
    - write_characters
    - static_cast<std::uint16_t>
    - type_error::create
    - JSON_THROW
    - to_char_type
    - JSON_ASSERT
    linkageType: ''
    returnType: void
    signature: void switch (decode(state, codepoint, byte))
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - byte
    argTypes:
    - std::uint8_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18692
      start: 18685
    functionDepth: 0
    functionLinenumber: 18685
    functionLinenumberEnd: 18692
    functionName: hex_bytes
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string hex_bytes(std::uint8_t byte)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - NumberType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18699
      start: 18696
    functionDepth: 0
    functionLinenumber: 18696
    functionLinenumberEnd: 18699
    functionName: is_negative_number
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_negative_number(NumberType x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18705
      start: 18702
    functionDepth: 0
    functionLinenumber: 18702
    functionLinenumberEnd: 18705
    functionName: is_negative_number
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_negative_number(NumberType /*unused*/)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: write_character
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18743,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18748,1
    - Dst: is_negative_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18754,1
    - Dst: remove_sign
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18757,1
    - Dst: static_cast<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18757,1
    - Dst: count_digits
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18760,1
    - Dst: static_cast<number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18764,1
    - Dst: count_digits
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18765,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18769,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18769,1
    - Dst: static_cast<unsigned>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18779,1
    - Dst: static_cast<unsigned>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18787,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18793,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18796,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18796,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 27
    argCount: 1
    argNames:
    - x
    argTypes:
    - NumberType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18797
      start: 18722
    functionDepth: 1
    functionLinenumber: 18722
    functionLinenumberEnd: 18797
    functionName: dump_integer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - write_character
    - static_cast<char>
    - begin
    - static_cast<number_unsigned_t>
    - static_cast<unsigned>
    - size
    - data
    - write_characters
    - JSON_ASSERT
    - remove_sign
    - is_negative_number
    - static_cast<number_integer_t>
    - count_digits
    linkageType: ''
    returnType: void
    signature: void dump_integer(NumberType x)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::isfinite
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18810,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18812,1
    - Dst: dump_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18825,1
    - Dst: std::integral_constant<bool, is_ieee_single_or_double>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18825,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 6
    argCount: 1
    argNames:
    - x
    argTypes:
    - number_float_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18826
      start: 18807
    functionDepth: 1
    functionLinenumber: 18807
    functionLinenumberEnd: 18826
    functionName: dump_float
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - dump_float
    - write_characters
    - std::isfinite
    - std::integral_constant<bool, is_ieee_single_or_double>
    linkageType: ''
    returnType: void
    signature: void dump_float(number_float_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18830,1
    - Dst: ::nlohmann::detail::to_chars
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18831,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18831,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18833,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18833,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - x
    argTypes:
    - number_float_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18834
      start: 18828
    functionDepth: 1
    functionLinenumber: 18828
    functionLinenumberEnd: 18834
    functionName: dump_float
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - ::nlohmann::detail::to_chars
    - size
    - data
    - write_characters
    - static_cast<size_t>
    linkageType: ''
    returnType: void
    signature: void dump_float(number_float_t x, std::true_type /*is_ieee_single_or_double*/)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18843,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18843,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18846,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18848,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18848,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18848,1
    - Dst: std::remove
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18854,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18854,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18854,1
    - Dst: std::fill
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18855,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18855,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18856,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18856,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18857,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18864,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18864,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18864,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18865,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18871,1
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18871,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18871,1
    - Dst: std::none_of
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18875,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18875,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18875,1
    - Dst: write_characters
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18883,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - x
    argTypes:
    - number_float_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18885
      start: 18836
    functionDepth: 1
    functionLinenumber: 18836
    functionLinenumberEnd: 18885
    functionName: dump_float
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - begin
    - find
    - std::none_of
    - std::remove
    - size
    - data
    - write_characters
    - end
    - std::fill
    - JSON_ASSERT
    - static_cast<std::size_t>
    linkageType: ''
    returnType: void
    signature: void dump_float(number_float_t x, std::false_type /*is_ieee_single_or_double*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18930,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18930,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18937,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18937,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18938,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18938,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 3
    argNames:
    - ' state'
    - ' codep'
    - byte
    argTypes:
    - std::uint8_t
    - std::uint32_t
    - std::uint8_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18941
      start: 18908
    functionDepth: 1
    functionLinenumber: 18908
    functionLinenumberEnd: 18941
    functionName: decode
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::array::size
    - JSON_ASSERT
    - static_cast<size_t>
    linkageType: ''
    returnType: std::uint8_t
    signature: std::uint8_t decode(std::uint8_t& state, std::uint32_t& codep, const
      std::uint8_t byte) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18950,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - number_unsigned_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18952
      start: 18948
    functionDepth: 1
    functionLinenumber: 18948
    functionLinenumberEnd: 18952
    functionName: remove_sign
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - JSON_ASSERT
    linkageType: ''
    returnType: number_unsigned_t
    signature: number_unsigned_t remove_sign(number_unsigned_t x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18965,1
    - Dst: static_cast<number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:18966,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - x
    argTypes:
    - number_integer_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18967
      start: 18963
    functionDepth: 1
    functionLinenumber: 18963
    functionLinenumberEnd: 18967
    functionName: remove_sign
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - static_cast<number_unsigned_t>
    - JSON_ASSERT
    linkageType: ''
    returnType: number_unsigned_t
    signature: number_unsigned_t remove_sign(number_integer_t x) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19050,1
    - Dst: Container
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19050,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19050
      start: 19050
    functionDepth: 1
    functionLinenumber: 19050
    functionLinenumberEnd: 19050
    functionName: ordered_map
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - Container
    linkageType: ''
    returnType: void
    signature: void ordered_map() noexcept(noexcept(Container()))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19051,1
    - Dst: Container
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19051,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' alloc'
    argTypes:
    - Allocator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19051
      start: 19051
    functionDepth: 1
    functionLinenumber: 19051
    functionLinenumberEnd: 19051
    functionName: ordered_map
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - Container
    linkageType: ''
    returnType: void
    signature: void ordered_map(const Allocator& alloc) noexcept(noexcept(Container(alloc)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Allocator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19053,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - It
    - It
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19054
      start: 19053
    functionDepth: 0
    functionLinenumber: 19053
    functionLinenumberEnd: 19054
    functionName: ordered_map
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - Allocator
    linkageType: ''
    returnType: void
    signature: void ordered_map(It first, It last, const Allocator& alloc = Allocator())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Allocator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19055,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - init
    argTypes:
    - std::initializer_list<value_type>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19056
      start: 19055
    functionDepth: 0
    functionLinenumber: 19055
    functionLinenumberEnd: 19056
    functionName: ordered_map
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - Allocator
    linkageType: ''
    returnType: void
    signature: void ordered_map(std::initializer_list<value_type> init, const Allocator&
      alloc = Allocator() )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19060,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19060,1
    - Dst: m_compare
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19062,1
    - Dst: emplace_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19067,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19067,1
    - Dst: std::prev
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19068,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19068,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ' key'
    - ' t'
    argTypes:
    - key_type
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19069
      start: 19058
    functionDepth: 1
    functionLinenumber: 19058
    functionLinenumberEnd: 19069
    functionName: emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 5
    functionsReached:
    - std::prev
    - begin
    - std::forward<T>
    - end
    - emplace_back
    - m_compare
    linkageType: ''
    returnType: std::pair<iterator, bool>
    signature: std::pair<iterator, bool> emplace(const key_type& key, T&& t)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19075,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19075,1
    - Dst: m_compare
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19077,1
    - Dst: emplace_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19082,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19082,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19082,1
    - Dst: std::prev
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19083,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19083,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - ' key'
    - ' t'
    argTypes:
    - KeyType
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19084
      start: 19073
    functionDepth: 1
    functionLinenumber: 19073
    functionLinenumberEnd: 19084
    functionName: emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 5
    functionsReached:
    - std::prev
    - begin
    - std::forward<T>
    - end
    - std::forward<KeyType>
    - emplace_back
    - m_compare
    linkageType: ''
    returnType: std::pair<iterator, bool>
    signature: std::pair<iterator, bool> emplace(KeyType && key, T && t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19088,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - key_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19089
      start: 19086
    functionDepth: 2
    functionLinenumber: 19086
    functionLinenumberEnd: 19089
    functionName: '& operator[](const key_type& key)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - emplace
    linkageType: ''
    returnType: T
    signature: T & operator[](const key_type& key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19095,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19095,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19096
      start: 19093
    functionDepth: 2
    functionLinenumber: 19093
    functionLinenumberEnd: 19096
    functionName: '& operator[](KeyType && key)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::forward<KeyType>
    - emplace
    linkageType: ''
    returnType: T
    signature: T & operator[](KeyType && key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19100,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - key_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19101
      start: 19098
    functionDepth: 1
    functionLinenumber: 19098
    functionLinenumberEnd: 19101
    functionName: '& operator[](const key_type& key) const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: T
    signature: T & operator[](const key_type& key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19107,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19107,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19108
      start: 19105
    functionDepth: 1
    functionLinenumber: 19105
    functionLinenumberEnd: 19108
    functionName: '& operator[](KeyType && key) const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - at
    - std::forward<KeyType>
    linkageType: ''
    returnType: T
    signature: T & operator[](KeyType && key) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19112,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19112,1
    - Dst: m_compare
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19114,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19120,1
    - Dst: std::out_of_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19120,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - key_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19121
      start: 19110
    functionDepth: 1
    functionLinenumber: 19110
    functionLinenumberEnd: 19121
    functionName: at
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 178
    functionsReached:
    - begin
    - std::out_of_range
    - end
    - JSON_THROW
    - m_compare
    linkageType: ''
    returnType: T
    signature: T & at(const key_type& key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19127,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19127,1
    - Dst: m_compare
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19129,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19135,1
    - Dst: std::out_of_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19135,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19136
      start: 19125
    functionDepth: 1
    functionLinenumber: 19125
    functionLinenumberEnd: 19136
    functionName: at
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 178
    functionsReached:
    - begin
    - std::out_of_range
    - end
    - JSON_THROW
    - m_compare
    linkageType: ''
    returnType: T
    signature: T & at(KeyType && key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19140,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19140,1
    - Dst: m_compare
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19142,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19148,1
    - Dst: std::out_of_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19148,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - key_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19149
      start: 19138
    functionDepth: 1
    functionLinenumber: 19138
    functionLinenumberEnd: 19149
    functionName: at
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 178
    functionsReached:
    - begin
    - std::out_of_range
    - end
    - JSON_THROW
    - m_compare
    linkageType: ''
    returnType: T
    signature: T & at(const key_type& key) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19155,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19155,1
    - Dst: m_compare
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19157,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19163,1
    - Dst: std::out_of_range
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19163,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19164
      start: 19153
    functionDepth: 1
    functionLinenumber: 19153
    functionLinenumberEnd: 19164
    functionName: at
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 178
    functionsReached:
    - begin
    - std::out_of_range
    - end
    - JSON_THROW
    - m_compare
    linkageType: ''
    returnType: T
    signature: T & at(KeyType && key) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19168,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19168,1
    - Dst: m_compare
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19170,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19173,1
    - Dst: auto::~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19175,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19176,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19176,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19178,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - key_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19183
      start: 19166
    functionDepth: 5
    functionLinenumber: 19166
    functionLinenumberEnd: 19183
    functionName: erase
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 20
    functionsReached:
    - begin
    - std::move
    - pop_back
    - auto::~value_type
    - value_type::value_type
    - end
    - m_compare
    linkageType: ''
    returnType: size_type
    signature: size_type erase(const key_type& key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19189,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19189,1
    - Dst: m_compare
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19191,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19194,1
    - Dst: auto::~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19196,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19197,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19197,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19199,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19204
      start: 19187
    functionDepth: 5
    functionLinenumber: 19187
    functionLinenumberEnd: 19204
    functionName: erase
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 20
    functionsReached:
    - begin
    - std::move
    - pop_back
    - auto::~value_type
    - value_type::value_type
    - end
    - m_compare
    linkageType: ''
    returnType: size_type
    signature: size_type erase(KeyType && key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: erase
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19208,1
    - Dst: std::next
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19208,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - pos
    argTypes:
    - iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19209
      start: 19206
    functionDepth: 1
    functionLinenumber: 19206
    functionLinenumberEnd: 19209
    functionName: erase
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 21
    functionsReached:
    - erase
    - std::next
    linkageType: ''
    returnType: iterator
    signature: iterator erase(iterator pos)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::distance
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19218,1
    - Dst: std::distance
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19219,1
    - Dst: iteration_proxy::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19219,1
    - Dst: std::next
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19241,1
    - Dst: BT::StrAppend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19241,1
    - Dst: auto::~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19243,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19244,1
    - Dst: std::next
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19244,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19244,1
    - Dst: Container::resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19252,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19252,1
    - Dst: static_cast<size_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19252,1
    - Dst: iteration_proxy::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19261,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - iterator
    - iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19262
      start: 19211
    functionDepth: 2
    functionLinenumber: 19211
    functionLinenumberEnd: 19262
    functionName: erase
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 21
    functionsReached:
    - iteration_proxy::begin
    - std::move
    - static_cast<size_type>
    - Container::resize
    - std::next
    - size
    - auto::~value_type
    - value_type::value_type
    - std::distance
    - BT::StrAppend
    linkageType: ''
    returnType: iterator
    signature: iterator erase(iterator first, iterator last)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19266,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19266,1
    - Dst: m_compare
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19268,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - key_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19274
      start: 19264
    functionDepth: 1
    functionLinenumber: 19264
    functionLinenumberEnd: 19274
    functionName: count
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 40
    functionsReached:
    - m_compare
    - begin
    - end
    linkageType: ''
    returnType: size_type
    signature: size_type count(const key_type& key) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19280,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19280,1
    - Dst: m_compare
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19282,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19288
      start: 19278
    functionDepth: 1
    functionLinenumber: 19278
    functionLinenumberEnd: 19288
    functionName: count
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 40
    functionsReached:
    - m_compare
    - begin
    - end
    linkageType: ''
    returnType: size_type
    signature: size_type count(KeyType && key) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19292,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19292,1
    - Dst: m_compare
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19294,1
    - Dst: BT::StrAppend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19299,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - key_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19300
      start: 19290
    functionDepth: 2
    functionLinenumber: 19290
    functionLinenumberEnd: 19300
    functionName: find
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 109
    functionsReached:
    - m_compare
    - begin
    - BT::StrAppend
    - end
    linkageType: ''
    returnType: iterator
    signature: iterator find(const key_type& key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19306,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19306,1
    - Dst: m_compare
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19308,1
    - Dst: BT::StrAppend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19313,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19314
      start: 19304
    functionDepth: 2
    functionLinenumber: 19304
    functionLinenumberEnd: 19314
    functionName: find
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 109
    functionsReached:
    - m_compare
    - begin
    - BT::StrAppend
    - end
    linkageType: ''
    returnType: iterator
    signature: iterator find(KeyType && key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19318,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19318,1
    - Dst: m_compare
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19320,1
    - Dst: BT::StrAppend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19325,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - key_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19326
      start: 19316
    functionDepth: 2
    functionLinenumber: 19316
    functionLinenumberEnd: 19326
    functionName: find
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 109
    functionsReached:
    - m_compare
    - begin
    - BT::StrAppend
    - end
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator find(const key_type& key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19330,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19330,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19331
      start: 19328
    functionDepth: 2
    functionLinenumber: 19328
    functionLinenumberEnd: 19331
    functionName: insert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 60
    functionsReached:
    - emplace
    - std::move
    linkageType: ''
    returnType: std::pair<iterator, bool>
    signature: std::pair<iterator, bool> insert( value_type&& value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19335,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19335,1
    - Dst: m_compare
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19337,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19342,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19343,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19344
      start: 19333
    functionDepth: 2
    functionLinenumber: 19333
    functionLinenumberEnd: 19344
    functionName: insert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 60
    functionsReached:
    - m_compare
    - begin
    - end
    - push_back
    linkageType: ''
    returnType: std::pair<iterator, bool>
    signature: std::pair<iterator, bool> insert( const value_type& value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19355,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - InputIt
    - InputIt
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19357
      start: 19351
    functionDepth: 1
    functionLinenumber: 19351
    functionLinenumberEnd: 19357
    functionName: insert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 61
    functionsReached:
    - insert
    linkageType: ''
    returnType: void
    signature: void insert(InputIt first, InputIt last)
  - BBCount: 29
    BranchProfiles: []
    Callsites:
    - Dst: ::nlohmann::detail::parser<basic_json, InputAdapterType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19441,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19441,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19442,1
    - Dst: allocator_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19544,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19558,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19558,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19559,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19560,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19582,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19583,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19584,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19585,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19603,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19605,1
    - Dst: AllocatorTraits::deallocate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19687,1
    - Dst: AllocatorTraits::allocate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19689,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19690,1
    - Dst: std::unique_ptr::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19690,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19690,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19691,1
    - Dst: std::unique_ptr::release
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19692,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19761,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19767,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19773,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19779,1
    - Dst: static_cast<boolean_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19785,1
    - Dst: static_cast<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19791,1
    - Dst: static_cast<number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19797,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19803,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19817,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19819,1
    - Dst: other_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19819,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19827,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19830,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19830,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19833,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19836,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19836,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19839,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19842,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19842,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19845,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19848,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19848,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19851,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19854,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19854,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19876,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19876,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19877,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19877,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19877,1
    - Dst: std::back_inserter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19877,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19881,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19881,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19884,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19884,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19888,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19891,1
    - Dst: std::vector::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19891,1
    - Dst: std::vector::pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19892,1
    - Dst: basic_json::is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19896,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19898,1
    - Dst: basic_json::m_data::m_value::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19898,1
    - Dst: basic_json::m_data::m_value::array::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19898,1
    - Dst: std::back_inserter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19898,1
    - Dst: basic_json::m_data::m_value::array::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19900,1
    - Dst: basic_json::is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19902,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19906,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19906,1
    - Dst: basic_json::m_data::m_value::object::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19909,1
    - Dst: destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19922,1
    - Dst: std::allocator_traits<decltype(alloc)>::deallocate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19923,1
    - Dst: destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19930,1
    - Dst: std::allocator_traits<decltype(alloc)>::deallocate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19931,1
    - Dst: destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19938,1
    - Dst: std::allocator_traits<decltype(alloc)>::deallocate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19939,1
    - Dst: destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19946,1
    - Dst: std::allocator_traits<decltype(alloc)>::deallocate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19947,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19986,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19987,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19988,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19989,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19995,1
    - Dst: is_structured
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19995,1
    - Dst: std::all_of
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19995,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19995,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19995,1
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20002,1
    CyclomaticComplexity: 51
    EdgeCount: 51
    ICount: 176
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20003
      start: 19378
    functionDepth: 5
    functionLinenumber: 19378
    functionLinenumberEnd: 20003
    functionName: "NLOHMANN_BASIC_JSON_TPL_DECLARATION\nclass basic_json // NOLINT(cppcoreguidelines-special-member-functions,hicpp-special-member-functions)\n
      \   : public ::nlohmann::detail::json_base_class<CustomBaseClass>"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - begin
    - std::vector::reserve
    - static_cast<number_unsigned_t>
    - basic_json::is_object
    - basic_json::is_array
    - construct
    - size
    - create
    - basic_json::m_data::m_value::array::end
    - JSON_THROW
    - AllocatorTraits::allocate
    - std::vector::back
    - std::back_inserter
    - JSON_HEDLEY_UNLIKELY
    - ::nlohmann::detail::parser<basic_json, InputAdapterType>
    - std::vector::pop_back
    - basic_json::m_data::m_value::array::begin
    - basic_json::m_data::m_value::object::clear
    - is_structured
    - JSON_ASSERT
    - static_cast<number_integer_t>
    - AllocatorTraits::deallocate
    - std::unique_ptr::release
    - allocator_type
    - concat
    - to_string
    - end
    - std::vector::empty
    - static_cast<boolean_t>
    - std::unique_ptr::get
    - other_error::create
    - std::allocator_traits<decltype(alloc)>::deallocate
    - std::all_of
    - std::move
    - std::forward<Args>
    - static_cast<number_float_t>
    - destroy
    - static_cast<void>
    - std::vector::push_back
    - basic_json::m_data::m_value::array::clear
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_BEGIN
    signature: "NLOHMANN_JSON_NAMESPACE_BEGIN NLOHMANN_BASIC_JSON_TPL_DECLARATION\nclass
      basic_json // NOLINT(cppcoreguidelines-special-member-functions,hicpp-special-member-functions)\n
      \   : public ::nlohmann::detail::json_base_class<CustomBaseClass>"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ::nlohmann::detail::parser<basic_json, InputAdapterType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19441,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19441,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - adapter
    argTypes:
    - InputAdapterType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19443
      start: 19434
    functionDepth: 0
    functionLinenumber: 19434
    functionLinenumberEnd: 19443
    functionName: parser
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - ::nlohmann::detail::parser<basic_json, InputAdapterType>
    - std::move
    linkageType: ''
    returnType: ::nlohmann::detail::parser<basic_json, InputAdapterType>
    signature: "::nlohmann::detail::parser<basic_json, InputAdapterType> parser(\n
      \       InputAdapterType adapter,\n        detail::parser_callback_t<basic_json>cb
      = nullptr,\n        const bool allow_exceptions = true,\n        const bool
      ignore_comments = false\n                                 )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: allocator_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19544,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19545
      start: 19542
    functionDepth: 0
    functionLinenumber: 19542
    functionLinenumberEnd: 19545
    functionName: get_allocator
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - allocator_type
    linkageType: ''
    returnType: allocator_type
    signature: allocator_type get_allocator()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19558,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19558,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19559,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19560,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19582,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19583,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19584,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19585,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19603,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19605,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 26
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19610
      start: 19549
    functionDepth: 4
    functionLinenumber: 19549
    functionLinenumberEnd: 19610
    functionName: meta
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - to_string
    - concat
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: JSON_HEDLEY_WARN_UNUSED_RESULT meta()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: AllocatorTraits::deallocate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19687,1
    - Dst: AllocatorTraits::allocate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19689,1
    - Dst: construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19690,1
    - Dst: std::unique_ptr::get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19690,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19690,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19691,1
    - Dst: std::unique_ptr::release
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19692,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19693
      start: 19675
    functionDepth: 2
    functionLinenumber: 19675
    functionLinenumberEnd: 19693
    functionName: create
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 141
    functionsReached:
    - AllocatorTraits::deallocate
    - std::forward<Args>
    - std::unique_ptr::release
    - construct
    - std::unique_ptr::get
    - AllocatorTraits::allocate
    - JSON_ASSERT
    linkageType: ''
    returnType: "private:\n\n    /// helper for exception-safe object creation\n    template<typename
      T, typename... Args>"
    signature: "private:\n\n    /// helper for exception-safe object creation\n    template<typename
      T, typename... Args> * create(Args&& ... args)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19745
      start: 19745
    functionDepth: 0
    functionLinenumber: 19745
    functionLinenumberEnd: 19745
    functionName: json_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - boolean_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19747
      start: 19747
    functionDepth: 0
    functionLinenumber: 19747
    functionLinenumberEnd: 19747
    functionName: json_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_value(boolean_t v) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - number_integer_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19749
      start: 19749
    functionDepth: 0
    functionLinenumber: 19749
    functionLinenumberEnd: 19749
    functionName: json_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_value(number_integer_t v) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - number_unsigned_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19751
      start: 19751
    functionDepth: 0
    functionLinenumber: 19751
    functionLinenumberEnd: 19751
    functionName: json_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_value(number_unsigned_t v) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - number_float_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19753
      start: 19753
    functionDepth: 0
    functionLinenumber: 19753
    functionLinenumberEnd: 19753
    functionName: json_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void json_value(number_float_t v) noexcept
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19761,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19767,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19773,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19779,1
    - Dst: static_cast<boolean_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19785,1
    - Dst: static_cast<number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19791,1
    - Dst: static_cast<number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19797,1
    - Dst: static_cast<number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19803,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19817,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19819,1
    - Dst: other_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19819,1
    CyclomaticComplexity: 12
    EdgeCount: 12
    ICount: 47
    argCount: 1
    argNames:
    - t
    argTypes:
    - value_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19824
      start: 19755
    functionDepth: 4
    functionLinenumber: 19755
    functionLinenumberEnd: 19824
    functionName: json_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - static_cast<number_float_t>
    - static_cast<number_unsigned_t>
    - create
    - JSON_THROW
    - static_cast<boolean_t>
    - other_error::create
    - static_cast<number_integer_t>
    linkageType: ''
    returnType: void
    signature: void json_value(value_t t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19827,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19827
      start: 19827
    functionDepth: 1
    functionLinenumber: 19827
    functionLinenumberEnd: 19827
    functionName: json_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - create
    linkageType: ''
    returnType: void
    signature: void json_value(const string_t& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19830,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19830,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19830
      start: 19830
    functionDepth: 1
    functionLinenumber: 19830
    functionLinenumberEnd: 19830
    functionName: json_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - create
    - std::move
    linkageType: ''
    returnType: void
    signature: void json_value(string_t&& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19833,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - object_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19833
      start: 19833
    functionDepth: 1
    functionLinenumber: 19833
    functionLinenumberEnd: 19833
    functionName: json_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - create
    linkageType: ''
    returnType: void
    signature: void json_value(const object_t& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19836,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19836,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - object_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19836
      start: 19836
    functionDepth: 1
    functionLinenumber: 19836
    functionLinenumberEnd: 19836
    functionName: json_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - create
    - std::move
    linkageType: ''
    returnType: void
    signature: void json_value(object_t&& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19839,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - array_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19839
      start: 19839
    functionDepth: 1
    functionLinenumber: 19839
    functionLinenumberEnd: 19839
    functionName: json_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - create
    linkageType: ''
    returnType: void
    signature: void json_value(const array_t& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19842,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19842,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - array_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19842
      start: 19842
    functionDepth: 1
    functionLinenumber: 19842
    functionLinenumberEnd: 19842
    functionName: json_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - create
    - std::move
    linkageType: ''
    returnType: void
    signature: void json_value(array_t&& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19845,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - typename binary_t::container_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19845
      start: 19845
    functionDepth: 1
    functionLinenumber: 19845
    functionLinenumberEnd: 19845
    functionName: json_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - create
    linkageType: ''
    returnType: void
    signature: void json_value(const typename binary_t::container_type& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19848,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19848,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - typename binary_t::container_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19848
      start: 19848
    functionDepth: 1
    functionLinenumber: 19848
    functionLinenumberEnd: 19848
    functionName: json_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - create
    - std::move
    linkageType: ''
    returnType: void
    signature: void json_value(typename binary_t::container_type&& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19851,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19851
      start: 19851
    functionDepth: 1
    functionLinenumber: 19851
    functionLinenumberEnd: 19851
    functionName: json_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - create
    linkageType: ''
    returnType: void
    signature: void json_value(const binary_t& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19854,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19854,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19854
      start: 19854
    functionDepth: 1
    functionLinenumber: 19854
    functionLinenumberEnd: 19854
    functionName: json_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - create
    - std::move
    linkageType: ''
    returnType: void
    signature: void json_value(binary_t&& value)
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19876,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19876,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19877,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19877,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19877,1
    - Dst: std::back_inserter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19877,1
    - Dst: std::vector::reserve
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19881,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19881,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19884,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19884,1
    - Dst: std::vector::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19888,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19891,1
    - Dst: std::vector::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19891,1
    - Dst: std::vector::pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19892,1
    - Dst: basic_json::is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19896,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19898,1
    - Dst: basic_json::m_data::m_value::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19898,1
    - Dst: basic_json::m_data::m_value::array::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19898,1
    - Dst: std::back_inserter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19898,1
    - Dst: basic_json::m_data::m_value::array::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19900,1
    - Dst: basic_json::is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19902,1
    - Dst: std::vector::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19906,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19906,1
    - Dst: basic_json::m_data::m_value::object::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19909,1
    - Dst: destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19922,1
    - Dst: std::allocator_traits<decltype(alloc)>::deallocate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19923,1
    - Dst: destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19930,1
    - Dst: std::allocator_traits<decltype(alloc)>::deallocate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19931,1
    - Dst: destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19938,1
    - Dst: std::allocator_traits<decltype(alloc)>::deallocate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19939,1
    - Dst: destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19946,1
    - Dst: std::allocator_traits<decltype(alloc)>::deallocate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:19947,1
    CyclomaticComplexity: 24
    EdgeCount: 24
    ICount: 57
    argCount: 1
    argNames:
    - t
    argTypes:
    - value_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 19962
      start: 19856
    functionDepth: 5
    functionLinenumber: 19856
    functionLinenumberEnd: 19962
    functionName: destroy
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 39
    functionsReached:
    - std::back_inserter
    - begin
    - std::allocator_traits<decltype(alloc)>::deallocate
    - std::move
    - std::vector::reserve
    - basic_json::is_object
    - basic_json::is_array
    - size
    - destroy
    - std::vector::pop_back
    - basic_json::m_data::m_value::array::end
    - basic_json::m_data::m_value::array::begin
    - end
    - basic_json::m_data::m_value::object::clear
    - std::vector::empty
    - std::vector::back
    - std::vector::push_back
    - basic_json::m_data::m_value::array::clear
    linkageType: ''
    returnType: void
    signature: void destroy(value_t t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20000
      start: 20000
    functionDepth: 0
    functionLinenumber: 20000
    functionLinenumberEnd: 20000
    functionName: JSON_CATCH
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JSON_CATCH(...)
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 23
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20040
      start: 20005
    functionDepth: 0
    functionLinenumber: 20005
    functionLinenumberEnd: 20040
    functionName: set_parents
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 16
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_parents()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20050,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - it
    - count_set_parents
    argTypes:
    - iterator
    - typename iterator::difference_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20053
      start: 20042
    functionDepth: 0
    functionLinenumber: 20042
    functionLinenumberEnd: 20053
    functionName: set_parents
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 16
    functionsReached:
    - static_cast<void>
    linkageType: ''
    returnType: iterator
    signature: iterator set_parents(iterator it, typename iterator::difference_type
      count_set_parents)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20055,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20058,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20061,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20061,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20062,1
    - Dst: m_value::array::capacity
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20062,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20065,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20078,1
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20087,1
    - Dst: static_cast<void>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20088,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 16
    argCount: 1
    argNames:
    - j
    argTypes:
    - reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20091
      start: 20055
    functionDepth: 1
    functionLinenumber: 20055
    functionLinenumberEnd: 20091
    functionName: set_parent
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - static_cast<void>
    - m_value::array::capacity
    - set_parents
    - JSON_ASSERT
    - type
    - static_cast<std::size_t>
    linkageType: ''
    returnType: reference
    signature: reference set_parent(reference j, std::size_t old_capacity = static_cast<std::size_t>(-1))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - value_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20121
      start: 20117
    functionDepth: 0
    functionLinenumber: 20117
    functionLinenumberEnd: 20121
    functionName: basic_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void basic_json(const value_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20129
      start: 20125
    functionDepth: 0
    functionLinenumber: 20125
    functionLinenumberEnd: 20129
    functionName: basic_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void basic_json(std::nullptr_t = nullptr) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20137,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20138,1
    - Dst: std::declval<basic_json_t&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20138,1
    - Dst: std::forward<CompatibleType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20139,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20141,1
    - Dst: std::forward<CompatibleType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20141,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20142,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20143,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - CompatibleType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20144
      start: 20137
    functionDepth: 1
    functionLinenumber: 20137
    functionLinenumberEnd: 20144
    functionName: basic_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - assert_invariant
    - std::forward<CompatibleType>
    - std::declval<basic_json_t&>
    - set_parents
    - noexcept
    - BT::Monitor::to_json
    linkageType: ''
    returnType: void
    signature: "void basic_json(CompatibleType && val) noexcept(noexcept( // NOLINT(bugprone-forwarding-reference-overload,bugprone-exception-escape)\n
      \               JSONSerializer<U>::to_json(std::declval<basic_json_t&>(),\n
      \                                          std::forward<CompatibleType>(val))))"
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20162,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20165,1
    - Dst: template get<other_boolean_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20165,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20168,1
    - Dst: template get<other_number_float_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20168,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20171,1
    - Dst: template get<other_number_integer_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20171,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20174,1
    - Dst: template get<other_number_unsigned_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20174,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20177,1
    - Dst: template get_ref<const other_string_t&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20177,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20180,1
    - Dst: template get_ref<const other_object_t&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20180,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20183,1
    - Dst: template get_ref<const other_array_t&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20183,1
    - Dst: BT::Monitor::to_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20186,1
    - Dst: template get_ref<const other_binary_t&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20186,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20195,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20197,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20197,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20198,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20199,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 38
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - BasicJsonType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20200
      start: 20151
    functionDepth: 1
    functionLinenumber: 20151
    functionLinenumberEnd: 20200
    functionName: basic_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - template get_ref<const other_string_t&>
    - template get_ref<const other_array_t&>
    - template get_ref<const other_binary_t&>
    - template get<other_boolean_t>
    - template get<other_number_integer_t>
    - template get_ref<const other_object_t&>
    - template get<other_number_unsigned_t>
    - assert_invariant
    - template get<other_number_float_t>
    - set_parents
    - JSON_ASSERT
    - type
    - BT::Monitor::to_json
    linkageType: ''
    returnType: void
    signature: void basic_json(const BasicJsonType& val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: std::all_of
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20210,1
    - Dst: initializer_list_t::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20210,1
    - Dst: initializer_list_t::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20210,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20216,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20216,1
    - Dst: static_cast<size_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20216,1
    - Dst: is_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20216,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20229,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20231,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20231,1
    - Dst: moved_or_copied
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20243,1
    - Dst: m_value::object::emplace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20244,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20245,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20246,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20253,1
    - Dst: initializer_list_t::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20253,1
    - Dst: initializer_list_t::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20253,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20256,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20257,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 22
    argCount: 1
    argNames:
    - init
    argTypes:
    - initializer_list_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20258
      start: 20204
    functionDepth: 4
    functionLinenumber: 20204
    functionLinenumberEnd: 20258
    functionName: basic_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - initializer_list_t::begin
    - m_value::object::emplace
    - is_array
    - JSON_HEDLEY_UNLIKELY
    - static_cast<size_type>
    - std::move
    - size
    - assert_invariant
    - create
    - set_parents
    - is_string
    - type_error::create
    - JSON_THROW
    - moved_or_copied
    - initializer_list_t::end
    - std::all_of
    linkageType: ''
    returnType: void
    signature: "void basic_json(initializer_list_t init,\n               bool type_deduction
      = true,\n               value_t manual_type = value_t::array)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - ' init'
    argTypes:
    - typename binary_t::container_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20269
      start: 20262
    functionDepth: 1
    functionLinenumber: 20262
    functionLinenumberEnd: 20269
    functionName: binary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 15
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: JSON_HEDLEY_WARN_UNUSED_RESULT binary(const typename binary_t::container_type&
      init)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20276,1
    - Dst: binary_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20278,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' init'
    - subtype
    argTypes:
    - typename binary_t::container_type
    - typename binary_t::subtype_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20280
      start: 20273
    functionDepth: 1
    functionLinenumber: 20273
    functionLinenumberEnd: 20280
    functionName: binary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 15
    functionsReached:
    - basic_json
    - binary_t
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: JSON_HEDLEY_WARN_UNUSED_RESULT binary(const typename binary_t::container_type&
      init, typename binary_t::subtype_type subtype)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20287,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20289,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' init'
    argTypes:
    - typename binary_t::container_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20291
      start: 20284
    functionDepth: 1
    functionLinenumber: 20284
    functionLinenumberEnd: 20291
    functionName: binary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 15
    functionsReached:
    - basic_json
    - std::move
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: JSON_HEDLEY_WARN_UNUSED_RESULT binary(typename binary_t::container_type&&
      init)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20298,1
    - Dst: binary_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20300,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20300,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 2
    argNames:
    - ' init'
    - subtype
    argTypes:
    - typename binary_t::container_type
    - typename binary_t::subtype_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20302
      start: 20295
    functionDepth: 1
    functionLinenumber: 20295
    functionLinenumberEnd: 20302
    functionName: binary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 15
    functionsReached:
    - basic_json
    - std::move
    - binary_t
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: JSON_HEDLEY_WARN_UNUSED_RESULT binary(typename binary_t::container_type&&
      init, typename binary_t::subtype_type subtype)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20310
      start: 20306
    functionDepth: 1
    functionLinenumber: 20306
    functionLinenumberEnd: 20310
    functionName: array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 32
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: JSON_HEDLEY_WARN_UNUSED_RESULT array(initializer_list_t init = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20318
      start: 20314
    functionDepth: 1
    functionLinenumber: 20314
    functionLinenumberEnd: 20318
    functionName: object
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 25
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: JSON_HEDLEY_WARN_UNUSED_RESULT object(initializer_list_t init = {})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20325,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - cnt
    - ' val'
    argTypes:
    - size_type
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20327
      start: 20322
    functionDepth: 1
    functionLinenumber: 20322
    functionLinenumberEnd: 20327
    functionName: basic_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 6
    functionsReached:
    - set_parents
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void basic_json(size_type cnt, const basic_json& val)
  - BBCount: 25
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20336,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20337,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20340,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20342,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20342,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20357,1
    - Dst: InputIT::m_it::primitive_iterator::is_begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20357,1
    - Dst: InputIT::m_it::primitive_iterator::is_end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20358,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20360,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20360,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20408,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20415,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20429,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20429,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20429,1
    - Dst: InputIT::m_object::type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20429,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20432,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20433,1
    CyclomaticComplexity: 15
    EdgeCount: 15
    ICount: 66
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - InputIT
    - InputIT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20434
      start: 20334
    functionDepth: 4
    functionLinenumber: 20334
    functionLinenumberEnd: 20434
    functionName: basic_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 6
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - InputIT::m_it::primitive_iterator::is_begin
    - concat
    - assert_invariant
    - InputIT::m_object::type_name
    - create
    - invalid_iterator::create
    - set_parents
    - JSON_THROW
    - JSON_ASSERT
    - InputIT::m_it::primitive_iterator::is_end
    linkageType: ''
    returnType: void
    signature: void basic_json(InputIT first, InputIT last)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: moved_or_copied
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' ref'
    argTypes:
    - JsonRef
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20443
      start: 20443
    functionDepth: 0
    functionLinenumber: 20443
    functionLinenumberEnd: 20443
    functionName: basic_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 6
    functionsReached:
    - moved_or_copied
    linkageType: ''
    returnType: void
    signature: void basic_json(const JsonRef& ref)
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20452,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20510,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20511,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 43
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20512
      start: 20447
    functionDepth: 1
    functionLinenumber: 20447
    functionLinenumberEnd: 20512
    functionName: basic_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 6
    functionsReached:
    - set_parents
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void basic_json(const basic_json& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<json_base_class_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20517,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20518,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20521,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20527,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20528,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20529
      start: 20516
    functionDepth: 1
    functionLinenumber: 20516
    functionLinenumberEnd: 20529
    functionName: basic_json
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 6
    functionsReached:
    - set_parents
    - std::forward<json_base_class_t>
    - std::move
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void basic_json(basic_json&& other) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json::assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20542,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20545,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20546,1
    - Dst: json_base_class_t::operator=
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20547,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20547,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20549,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20550,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 1
    argNames:
    - other
    argTypes:
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20552
      start: 20533
    functionDepth: 1
    functionLinenumber: 20533
    functionLinenumberEnd: 20552
    functionName: "& operator=(basic_json other) noexcept (\n        std::is_nothrow_move_constructible<value_t>::value&&\n
      \       std::is_nothrow_move_assignable<value_t>::value&&\n        std::is_nothrow_move_constructible<json_value>::value&&\n
      \       std::is_nothrow_move_assignable<json_value>::value&&\n        std::is_nothrow_move_assignable<json_base_class_t>::value\n
      \   )"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - assert_invariant
    - swap
    - basic_json::assert_invariant
    - set_parents
    - json_base_class_t::operator=
    linkageType: ''
    returnType: basic_json
    signature: "basic_json & operator=(basic_json other) noexcept (\n        std::is_nothrow_move_constructible<value_t>::value&&\n
      \       std::is_nothrow_move_assignable<value_t>::value&&\n        std::is_nothrow_move_constructible<json_value>::value&&\n
      \       std::is_nothrow_move_assignable<json_value>::value&&\n        std::is_nothrow_move_assignable<json_base_class_t>::value\n
      \   )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20558,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20559
      start: 20556
    functionDepth: 0
    functionLinenumber: 20556
    functionLinenumberEnd: 20559
    functionName: ~basic_json() noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - assert_invariant
    linkageType: ''
    returnType: void
    signature: void ~basic_json() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20599
      start: 20596
    functionDepth: 0
    functionLinenumber: 20596
    functionLinenumberEnd: 20599
    functionName: type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 125
    functionsReached: []
    linkageType: ''
    returnType: value_t
    signature: value_t type() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20605,1
    - Dst: is_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20605,1
    - Dst: is_boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20605,1
    - Dst: is_number
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20605,1
    - Dst: is_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20605,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20606
      start: 20603
    functionDepth: 1
    functionLinenumber: 20603
    functionLinenumberEnd: 20606
    functionName: is_primitive
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_number
    - is_boolean
    - is_binary
    - is_null
    - is_string
    linkageType: ''
    returnType: bool
    signature: bool is_primitive() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20612,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20612,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20613
      start: 20610
    functionDepth: 1
    functionLinenumber: 20610
    functionLinenumberEnd: 20613
    functionName: is_structured
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - is_object
    - is_array
    linkageType: ''
    returnType: bool
    signature: bool is_structured() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20620
      start: 20617
    functionDepth: 0
    functionLinenumber: 20617
    functionLinenumberEnd: 20620
    functionName: is_null
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_null() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20627
      start: 20624
    functionDepth: 0
    functionLinenumber: 20624
    functionLinenumberEnd: 20627
    functionName: is_boolean
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 5
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_boolean() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20633,1
    - Dst: is_number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20633,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20634
      start: 20631
    functionDepth: 1
    functionLinenumber: 20631
    functionLinenumberEnd: 20634
    functionName: is_number
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - is_number_integer
    - is_number_float
    linkageType: ''
    returnType: bool
    signature: bool is_number() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20641
      start: 20638
    functionDepth: 0
    functionLinenumber: 20638
    functionLinenumberEnd: 20641
    functionName: is_number_integer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_number_integer() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20648
      start: 20645
    functionDepth: 0
    functionLinenumber: 20645
    functionLinenumberEnd: 20648
    functionName: is_number_unsigned
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_number_unsigned() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20655
      start: 20652
    functionDepth: 0
    functionLinenumber: 20652
    functionLinenumberEnd: 20655
    functionName: is_number_float
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_number_float() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20662
      start: 20659
    functionDepth: 0
    functionLinenumber: 20659
    functionLinenumberEnd: 20662
    functionName: is_object
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_object() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20669
      start: 20666
    functionDepth: 0
    functionLinenumber: 20666
    functionLinenumberEnd: 20669
    functionName: is_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 16
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_array() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20676
      start: 20673
    functionDepth: 0
    functionLinenumber: 20673
    functionLinenumberEnd: 20676
    functionName: is_string
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_string() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20683
      start: 20680
    functionDepth: 0
    functionLinenumber: 20680
    functionLinenumberEnd: 20683
    functionName: is_binary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_binary() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20690
      start: 20687
    functionDepth: 0
    functionLinenumber: 20687
    functionLinenumberEnd: 20690
    functionName: is_discarded
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_discarded() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20697
      start: 20694
    functionDepth: 0
    functionLinenumber: 20694
    functionLinenumberEnd: 20697
    functionName: operator value_t() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator value_t() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20720,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20721
      start: 20718
    functionDepth: 1
    functionLinenumber: 20718
    functionLinenumberEnd: 20721
    functionName: get_impl_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_object
    linkageType: ''
    returnType: object_t
    signature: object_t * get_impl_ptr(object_t* /*unused*/) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20726,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20727
      start: 20724
    functionDepth: 1
    functionLinenumber: 20724
    functionLinenumberEnd: 20727
    functionName: get_impl_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_object
    linkageType: ''
    returnType: object_t
    signature: object_t * get_impl_ptr(const object_t* /*unused*/) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20732,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20733
      start: 20730
    functionDepth: 1
    functionLinenumber: 20730
    functionLinenumberEnd: 20733
    functionName: get_impl_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_array
    linkageType: ''
    returnType: array_t
    signature: array_t * get_impl_ptr(array_t* /*unused*/) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20738,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20739
      start: 20736
    functionDepth: 1
    functionLinenumber: 20736
    functionLinenumberEnd: 20739
    functionName: get_impl_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_array
    linkageType: ''
    returnType: array_t
    signature: array_t * get_impl_ptr(const array_t* /*unused*/) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20744,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20745
      start: 20742
    functionDepth: 1
    functionLinenumber: 20742
    functionLinenumberEnd: 20745
    functionName: get_impl_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_string
    linkageType: ''
    returnType: string_t
    signature: string_t * get_impl_ptr(string_t* /*unused*/) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20750,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20751
      start: 20748
    functionDepth: 1
    functionLinenumber: 20748
    functionLinenumberEnd: 20751
    functionName: get_impl_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_string
    linkageType: ''
    returnType: string_t
    signature: string_t * get_impl_ptr(const string_t* /*unused*/) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20756,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20757
      start: 20754
    functionDepth: 1
    functionLinenumber: 20754
    functionLinenumberEnd: 20757
    functionName: get_impl_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_boolean
    linkageType: ''
    returnType: boolean_t
    signature: boolean_t * get_impl_ptr(boolean_t* /*unused*/) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_boolean
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20762,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20763
      start: 20760
    functionDepth: 1
    functionLinenumber: 20760
    functionLinenumberEnd: 20763
    functionName: get_impl_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_boolean
    linkageType: ''
    returnType: boolean_t
    signature: boolean_t * get_impl_ptr(const boolean_t* /*unused*/) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20768,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20769
      start: 20766
    functionDepth: 1
    functionLinenumber: 20766
    functionLinenumberEnd: 20769
    functionName: get_impl_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_number_integer
    linkageType: ''
    returnType: number_integer_t
    signature: number_integer_t * get_impl_ptr(number_integer_t* /*unused*/) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_number_integer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20774,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20775
      start: 20772
    functionDepth: 1
    functionLinenumber: 20772
    functionLinenumberEnd: 20775
    functionName: get_impl_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_number_integer
    linkageType: ''
    returnType: number_integer_t
    signature: number_integer_t * get_impl_ptr(const number_integer_t* /*unused*/)
      const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20780,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20781
      start: 20778
    functionDepth: 1
    functionLinenumber: 20778
    functionLinenumberEnd: 20781
    functionName: get_impl_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_number_unsigned
    linkageType: ''
    returnType: number_unsigned_t
    signature: number_unsigned_t * get_impl_ptr(number_unsigned_t* /*unused*/) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_number_unsigned
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20786,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20787
      start: 20784
    functionDepth: 1
    functionLinenumber: 20784
    functionLinenumberEnd: 20787
    functionName: get_impl_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_number_unsigned
    linkageType: ''
    returnType: number_unsigned_t
    signature: number_unsigned_t * get_impl_ptr(const number_unsigned_t* /*unused*/)
      const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20792,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20793
      start: 20790
    functionDepth: 1
    functionLinenumber: 20790
    functionLinenumberEnd: 20793
    functionName: get_impl_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_number_float
    linkageType: ''
    returnType: number_float_t
    signature: number_float_t * get_impl_ptr(number_float_t* /*unused*/) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_number_float
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20798,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20799
      start: 20796
    functionDepth: 1
    functionLinenumber: 20796
    functionLinenumberEnd: 20799
    functionName: get_impl_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_number_float
    linkageType: ''
    returnType: number_float_t
    signature: number_float_t * get_impl_ptr(const number_float_t* /*unused*/) const
      noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20804,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20805
      start: 20802
    functionDepth: 1
    functionLinenumber: 20802
    functionLinenumberEnd: 20805
    functionName: get_impl_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_binary
    linkageType: ''
    returnType: binary_t
    signature: binary_t * get_impl_ptr(binary_t* /*unused*/) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20810,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20811
      start: 20808
    functionDepth: 1
    functionLinenumber: 20808
    functionLinenumberEnd: 20811
    functionName: get_impl_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_binary
    linkageType: ''
    returnType: binary_t
    signature: binary_t * get_impl_ptr(const binary_t* /*unused*/) const noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: template get_ptr<typename std::add_pointer<ReferenceType>::type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20828,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20830,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20835,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20835,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20835,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20835,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' obj'
    argTypes:
    - ThisType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20836
      start: 20825
    functionDepth: 4
    functionLinenumber: 20825
    functionLinenumberEnd: 20836
    functionName: get_ref_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - concat
    - JSON_HEDLEY_LIKELY
    - type_name
    - template get_ptr<typename std::add_pointer<ReferenceType>::type>
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: ReferenceType
    signature: ReferenceType get_ref_impl(ThisType& obj)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::declval<const basic_json_t&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20858,1
    - Dst: std::declval<PointerType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20858,1
    - Dst: get_impl_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20861,1
    - Dst: static_cast<PointerType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20861,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20862
      start: 20858
    functionDepth: 2
    functionLinenumber: 20858
    functionLinenumberEnd: 20862
    functionName: get_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - static_cast<PointerType>
    - std::declval<const basic_json_t&>
    - get_impl_ptr
    - std::declval<PointerType>
    linkageType: ''
    returnType: auto
    signature: auto get_ptr() const noexcept -> decltype(std::declval<const basic_json_t&>().get_impl_ptr(std::declval<PointerType>()))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ValueType
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20911,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20912,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20914
      start: 20908
    functionDepth: 0
    functionLinenumber: 20908
    functionLinenumberEnd: 20914
    functionName: noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 21
    functionsReached:
    - ValueType
    - BT::Monitor::from_json
    linkageType: ''
    returnType: void
    signature: "void noexcept(noexcept(\n                JSONSerializer<ValueType>::from_json(std::declval<const
      basic_json_t&>(), std::declval<ValueType&>())))"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20950,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20951,1
    - Dst: std::declval<const basic_json_t&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20951,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:20953,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20954
      start: 20950
    functionDepth: 1
    functionLinenumber: 20950
    functionLinenumberEnd: 20954
    functionName: get_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::declval<const basic_json_t&>
    - BT::Monitor::from_json
    linkageType: ''
    returnType: ValueType
    signature: "ValueType get_impl(detail::priority_tag<1> /*unused*/) const noexcept(noexcept(\n
      \               JSONSerializer<ValueType>::from_json(std::declval<const basic_json_t&>())))"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 20978
      start: 20975
    functionDepth: 0
    functionLinenumber: 20975
    functionLinenumberEnd: 20978
    functionName: get_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: BasicJsonType
    signature: BasicJsonType get_impl(detail::priority_tag<2> /*unused*/) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21001
      start: 20998
    functionDepth: 0
    functionLinenumber: 20998
    functionLinenumberEnd: 21001
    functionName: get_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: basic_json
    signature: basic_json get_impl(detail::priority_tag<3> /*unused*/) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::declval<const basic_json_t&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21012,1
    - Dst: get_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21015,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21016
      start: 21011
    functionDepth: 3
    functionLinenumber: 21011
    functionLinenumberEnd: 21016
    functionName: get_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get_ptr
    - std::declval<const basic_json_t&>
    linkageType: ''
    returnType: auto
    signature: "auto get_impl(detail::priority_tag<4> /*unused*/) const noexcept\n
      \   -> decltype(std::declval<const basic_json_t&>().template get_ptr<PointerType>())"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::declval<basic_json_t&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21087,1
    - Dst: get_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21090,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21091
      start: 21087
    functionDepth: 3
    functionLinenumber: 21087
    functionLinenumberEnd: 21091
    functionName: get
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 134
    functionsReached:
    - get_ptr
    - std::declval<basic_json_t&>
    linkageType: ''
    returnType: auto
    signature: auto get() noexcept -> decltype(std::declval<basic_json_t&>().template
      get_ptr<PointerType>())
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21100,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21101,1
    - Dst: std::declval<const basic_json_t&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21101,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - ValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21105
      start: 21100
    functionDepth: 1
    functionLinenumber: 21100
    functionLinenumberEnd: 21105
    functionName: get_to
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::declval<const basic_json_t&>
    - BT::Monitor::from_json
    linkageType: ''
    returnType: ValueType
    signature: "ValueType & get_to(ValueType& v) const noexcept(noexcept(\n                JSONSerializer<ValueType>::from_json(std::declval<const
      basic_json_t&>(), v)))"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - ValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21117
      start: 21113
    functionDepth: 0
    functionLinenumber: 21113
    functionLinenumberEnd: 21117
    functionName: get_to
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ValueType
    signature: ValueType & get_to(ValueType& v) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21125,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21125,1
    - Dst: std::declval<const basic_json_t&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21126,1
    - Dst: BT::Monitor::from_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21128,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - (v)
    argTypes:
    - T[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21130
      start: 21124
    functionDepth: 1
    functionLinenumber: 21124
    functionLinenumberEnd: 21130
    functionName: get_to
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::declval<const basic_json_t&>
    - BT::Monitor::from_json
    linkageType: ''
    returnType: Array
    signature: "Array get_to(T (&v)[N]) const // NOLINT(cppcoreguidelines-avoid-c-arrays,hicpp-avoid-c-arrays,modernize-avoid-c-arrays)\n
      \   noexcept(noexcept(JSONSerializer<Array>::from_json(\n                          std::declval<const
      basic_json_t&>(), v)))"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_ref_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21140
      start: 21136
    functionDepth: 5
    functionLinenumber: 21136
    functionLinenumberEnd: 21140
    functionName: get_ref
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get_ref_impl
    linkageType: ''
    returnType: ReferenceType
    signature: ReferenceType get_ref()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_ref_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21151
      start: 21147
    functionDepth: 5
    functionLinenumber: 21147
    functionLinenumberEnd: 21151
    functionName: get_ref
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get_ref_impl
    linkageType: ''
    returnType: ReferenceType
    signature: ReferenceType get_ref() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: is_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21208,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21210,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21210,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21210,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21210,1
    - Dst: get_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21214
      start: 21206
    functionDepth: 4
    functionLinenumber: 21206
    functionLinenumberEnd: 21214
    functionName: get_binary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - get_ptr
    - concat
    - is_binary
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: binary_t
    signature: binary_t & get_binary()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: is_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21220,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21222,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21222,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21222,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21222,1
    - Dst: get_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21225,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21226
      start: 21218
    functionDepth: 4
    functionLinenumber: 21218
    functionLinenumberEnd: 21226
    functionName: get_binary
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - get_ptr
    - concat
    - is_binary
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: binary_t
    signature: binary_t & get_binary() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21243,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21243,1
    - Dst: set_parent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21247,1
    - Dst: m_value::array::at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21247,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21252,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21252,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21252,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21252,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - idx
    argTypes:
    - size_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21254
      start: 21240
    functionDepth: 4
    functionLinenumber: 21240
    functionLinenumberEnd: 21254
    functionName: at
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 188
    functionsReached:
    - m_value::array::at
    - is_array
    - set_parent
    - out_of_range::create
    - concat
    - JSON_HEDLEY_LIKELY
    - to_string
    - JSON_THROW
    linkageType: ''
    returnType: reference
    signature: reference at(size_type idx)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21252,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21252,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21252,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21252,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21253
      start: 21249
    functionDepth: 4
    functionLinenumber: 21249
    functionLinenumberEnd: 21253
    functionName: JSON_CATCH
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_THROW
    - out_of_range::create
    - to_string
    - concat
    linkageType: ''
    returnType: void
    signature: void JSON_CATCH (std::out_of_range&)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21266,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21266,1
    - Dst: m_value::array::at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21270,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21275,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21275,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21275,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21275,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - idx
    argTypes:
    - size_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21277
      start: 21263
    functionDepth: 4
    functionLinenumber: 21263
    functionLinenumberEnd: 21277
    functionName: at
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 190
    functionsReached:
    - m_value::array::at
    - is_array
    - out_of_range::create
    - concat
    - JSON_HEDLEY_LIKELY
    - to_string
    - JSON_THROW
    linkageType: ''
    returnType: const_reference
    signature: const_reference at(size_type idx) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21275,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21275,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21275,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21276
      start: 21272
    functionDepth: 4
    functionLinenumber: 21272
    functionLinenumberEnd: 21276
    functionName: JSON_CATCH
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_THROW
    - out_of_range::create
    - to_string
    - concat
    linkageType: ''
    returnType: void
    signature: void JSON_CATCH (std::out_of_range&)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21289,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21289,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21291,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21291,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21291,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21291,1
    - Dst: m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21294,1
    - Dst: m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21295,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21297,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21297,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21297,1
    - Dst: set_parent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21299,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - typename object_t::key_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21300
      start: 21286
    functionDepth: 4
    functionLinenumber: 21286
    functionLinenumberEnd: 21300
    functionName: at
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 192
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - m_value::object::end
    - out_of_range::create
    - set_parent
    - concat
    - is_object
    - m_value::object::find
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: reference
    signature: reference at(const typename object_t::key_type& key)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21309,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21309,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21311,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21311,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21311,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21311,1
    - Dst: m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21314,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21314,1
    - Dst: m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21315,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21317,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21317,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21317,1
    - Dst: string_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21317,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21317,1
    - Dst: set_parent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21319,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21320
      start: 21306
    functionDepth: 4
    functionLinenumber: 21306
    functionLinenumberEnd: 21320
    functionName: at
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 193
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - m_value::object::end
    - out_of_range::create
    - set_parent
    - concat
    - is_object
    - m_value::object::find
    - type_name
    - type_error::create
    - JSON_THROW
    - std::forward<KeyType>
    - string_t
    linkageType: ''
    returnType: reference
    signature: reference at(KeyType && key)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21327,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21327,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21329,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21329,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21329,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21329,1
    - Dst: m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21332,1
    - Dst: m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21333,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21335,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21335,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21335,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - typename object_t::key_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21338
      start: 21324
    functionDepth: 4
    functionLinenumber: 21324
    functionLinenumberEnd: 21338
    functionName: at
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 194
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - m_value::object::end
    - out_of_range::create
    - concat
    - is_object
    - m_value::object::find
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: const_reference
    signature: const_reference at(const typename object_t::key_type& key) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21347,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21347,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21349,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21349,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21349,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21349,1
    - Dst: m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21352,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21352,1
    - Dst: m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21353,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21355,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21355,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21355,1
    - Dst: string_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21355,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21355,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21358
      start: 21344
    functionDepth: 4
    functionLinenumber: 21344
    functionLinenumberEnd: 21358
    functionName: at
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 195
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - m_value::object::end
    - out_of_range::create
    - concat
    - is_object
    - m_value::object::find
    - type_name
    - type_error::create
    - JSON_THROW
    - std::forward<KeyType>
    - string_t
    linkageType: ''
    returnType: const_reference
    signature: const_reference at(KeyType && key) const
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21365,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21368,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21369,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21373,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21373,1
    - Dst: m_value::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21376,1
    - Dst: m_value::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21380,1
    - Dst: m_value::array::capacity
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21381,1
    - Dst: m_value::array::resize
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21383,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21386,1
    - Dst: m_value::array::capacity
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21386,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21389,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21394,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21394,1
    - Dst: static_cast<typename iterator::difference_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21394,1
    - Dst: static_cast<typename iterator::difference_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21394,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21397,1
    - Dst: m_value::array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21400,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21403,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21403,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21403,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21403,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - idx
    argTypes:
    - size_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21404
      start: 21362
    functionDepth: 4
    functionLinenumber: 21362
    functionLinenumberEnd: 21404
    functionName: operator[](size_type idx)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - begin
    - is_array
    - JSON_HEDLEY_UNLIKELY
    - m_value::array
    - m_value::array::resize
    - JSON_THROW
    - JSON_HEDLEY_LIKELY
    - assert_invariant
    - create
    - m_value::array::size
    - m_value::array::capacity
    - static_cast<typename iterator::difference_type>
    - concat
    - is_null
    - type_name
    - type_error::create
    - set_parents
    linkageType: ''
    returnType: reference
    signature: reference operator[](size_type idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21411,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21411,1
    - Dst: m_value::array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21413,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21416,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21416,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21416,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21416,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - idx
    argTypes:
    - size_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21417
      start: 21408
    functionDepth: 4
    functionLinenumber: 21408
    functionLinenumberEnd: 21417
    functionName: operator[](size_type idx) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - is_array
    - JSON_THROW
    - JSON_HEDLEY_LIKELY
    - concat
    - type_name
    - type_error::create
    - m_value::array
    linkageType: ''
    returnType: const_reference
    signature: const_reference operator[](size_type idx) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21424,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21427,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21428,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21432,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21432,1
    - Dst: m_value::object::emplace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21434,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21434,1
    - Dst: set_parent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21435,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21438,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21438,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21438,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21438,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - key
    argTypes:
    - typename object_t::key_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21439
      start: 21421
    functionDepth: 4
    functionLinenumber: 21421
    functionLinenumberEnd: 21439
    functionName: operator[](typename object_t::key_type key)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - m_value::object::emplace
    - std::move
    - set_parent
    - concat
    - JSON_HEDLEY_LIKELY
    - assert_invariant
    - create
    - is_object
    - is_null
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: reference
    signature: reference operator[](typename object_t::key_type key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21446,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21446,1
    - Dst: m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21448,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21449,1
    - Dst: m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21449,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21453,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21453,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21453,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21453,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - typename object_t::key_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21454
      start: 21443
    functionDepth: 4
    functionLinenumber: 21443
    functionLinenumberEnd: 21454
    functionName: operator[](const typename object_t::key_type& key) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - m_value::object::end
    - concat
    - JSON_HEDLEY_LIKELY
    - is_object
    - m_value::object::find
    - type_name
    - type_error::create
    - JSON_THROW
    - JSON_ASSERT
    linkageType: ''
    returnType: const_reference
    signature: const_reference operator[](const typename object_t::key_type& key)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: object_t::key_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21461,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - key
    argTypes:
    - T*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21462
      start: 21459
    functionDepth: 0
    functionLinenumber: 21459
    functionLinenumberEnd: 21462
    functionName: operator[](T* key)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - object_t::key_type
    linkageType: ''
    returnType: reference
    signature: reference operator[](T* key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: object_t::key_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21467,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - key
    argTypes:
    - T*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21468
      start: 21465
    functionDepth: 0
    functionLinenumber: 21465
    functionLinenumberEnd: 21468
    functionName: operator[](T* key) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - object_t::key_type
    linkageType: ''
    returnType: const_reference
    signature: const_reference operator[](T* key) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21477,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21480,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21481,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21485,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21485,1
    - Dst: m_value::object::emplace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21487,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21487,1
    - Dst: set_parent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21488,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21491,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21491,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21491,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21491,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21492
      start: 21474
    functionDepth: 4
    functionLinenumber: 21474
    functionLinenumberEnd: 21492
    functionName: operator[](KeyType && key)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - m_value::object::emplace
    - set_parent
    - concat
    - JSON_HEDLEY_LIKELY
    - assert_invariant
    - create
    - is_object
    - is_null
    - type_name
    - type_error::create
    - JSON_THROW
    - std::forward<KeyType>
    linkageType: ''
    returnType: reference
    signature: reference operator[](KeyType && key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21501,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21501,1
    - Dst: m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21503,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21503,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21504,1
    - Dst: m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21504,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21508,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21508,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21508,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21508,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21509
      start: 21498
    functionDepth: 4
    functionLinenumber: 21498
    functionLinenumberEnd: 21509
    functionName: operator[](KeyType && key) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - m_value::object::end
    - concat
    - JSON_HEDLEY_LIKELY
    - is_object
    - m_value::object::find
    - type_name
    - type_error::create
    - JSON_THROW
    - std::forward<KeyType>
    - JSON_ASSERT
    linkageType: ''
    returnType: const_reference
    signature: const_reference operator[](KeyType && key) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21531,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21531,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21534,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21535,1
    - Dst: auto::template get<ValueType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21537,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21543,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21543,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21543,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21543,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - ' key'
    - ' default_value'
    argTypes:
    - typename object_t::key_type
    - ValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21544
      start: 21521
    functionDepth: 4
    functionLinenumber: 21521
    functionLinenumberEnd: 21544
    functionName: value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 134
    functionsReached:
    - find
    - concat
    - JSON_HEDLEY_LIKELY
    - is_object
    - end
    - auto::template get<ValueType>
    - type_error::create
    - JSON_THROW
    - type_name
    linkageType: ''
    returnType: "public:\n    /// @brief access specified object element with default
      value\n    /// @sa https://json.nlohmann.me/api/basic_json/value/\n    template
      < class ValueType, detail::enable_if_t <\n                   !detail::is_transparent<object_comparator_t>::value\n
      \                  && detail::is_getable<basic_json_t, ValueType>::value\n                   &&
      !std::is_same<value_t, detail::uncvref_t<ValueType>>::value, int > = 0 >"
    signature: "public:\n    /// @brief access specified object element with default
      value\n    /// @sa https://json.nlohmann.me/api/basic_json/value/\n    template
      < class ValueType, detail::enable_if_t <\n                   !detail::is_transparent<object_comparator_t>::value\n
      \                  && detail::is_getable<basic_json_t, ValueType>::value\n                   &&
      !std::is_same<value_t, detail::uncvref_t<ValueType>>::value, int > = 0 > value(const
      typename object_t::key_type& key, const ValueType& default_value) const"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21556,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21556,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21559,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21560,1
    - Dst: auto::template get<ReturnType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21562,1
    - Dst: std::forward<ValueType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21565,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21568,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21568,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21568,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21568,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ' key'
    - ' default_value'
    argTypes:
    - typename object_t::key_type
    - ValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21569
      start: 21553
    functionDepth: 4
    functionLinenumber: 21553
    functionLinenumberEnd: 21569
    functionName: value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 134
    functionsReached:
    - find
    - auto::template get<ReturnType>
    - std::forward<ValueType>
    - concat
    - JSON_HEDLEY_LIKELY
    - is_object
    - end
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: ReturnType
    signature: ReturnType value(const typename object_t::key_type& key, ValueType
      && default_value) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21582,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21582,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21585,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21585,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21586,1
    - Dst: auto::template get<ValueType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21588,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21594,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21594,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21594,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21594,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - ' key'
    - ' default_value'
    argTypes:
    - KeyType
    - ValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21595
      start: 21579
    functionDepth: 4
    functionLinenumber: 21579
    functionLinenumberEnd: 21595
    functionName: value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 134
    functionsReached:
    - find
    - concat
    - JSON_HEDLEY_LIKELY
    - is_object
    - end
    - auto::template get<ValueType>
    - type_error::create
    - JSON_THROW
    - type_name
    - std::forward<KeyType>
    linkageType: ''
    returnType: ValueType
    signature: ValueType value(KeyType && key, const ValueType& default_value) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21609,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21609,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21612,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21612,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21613,1
    - Dst: auto::template get<ReturnType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21615,1
    - Dst: std::forward<ValueType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21618,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21621,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21621,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21621,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21621,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - ' key'
    - ' default_value'
    argTypes:
    - KeyType
    - ValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21622
      start: 21606
    functionDepth: 4
    functionLinenumber: 21606
    functionLinenumberEnd: 21622
    functionName: value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 134
    functionsReached:
    - find
    - auto::template get<ReturnType>
    - std::forward<ValueType>
    - concat
    - JSON_HEDLEY_LIKELY
    - is_object
    - end
    - type_name
    - type_error::create
    - JSON_THROW
    - std::forward<KeyType>
    linkageType: ''
    returnType: ReturnType
    signature: ReturnType value(KeyType && key, ValueType && default_value) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21632,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21632,1
    - Dst: get_checked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21637,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - ' ptr'
    - ' default_value'
    argTypes:
    - json_pointer
    - ValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21643
      start: 21629
    functionDepth: 5
    functionLinenumber: 21629
    functionLinenumberEnd: 21643
    functionName: value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 134
    functionsReached:
    - is_object
    - get_checked
    - JSON_HEDLEY_LIKELY
    linkageType: ''
    returnType: ValueType
    signature: ValueType value(const json_pointer& ptr, const ValueType& default_value)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21642
      start: 21639
    functionDepth: 0
    functionLinenumber: 21639
    functionLinenumberEnd: 21642
    functionName: JSON_INTERNAL_CATCH
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void JSON_INTERNAL_CATCH (out_of_range&)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21657,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21657,1
    - Dst: get_checked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21662,1
    - Dst: std::forward<ValueType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21666,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 2
    argNames:
    - ' ptr'
    - ' default_value'
    argTypes:
    - json_pointer
    - ValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21668
      start: 21654
    functionDepth: 5
    functionLinenumber: 21654
    functionLinenumberEnd: 21668
    functionName: value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 134
    functionsReached:
    - is_object
    - std::forward<ValueType>
    - get_checked
    - JSON_HEDLEY_LIKELY
    linkageType: ''
    returnType: ReturnType
    signature: ReturnType value(const json_pointer& ptr, ValueType && default_value)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<ValueType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21666,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21667
      start: 21664
    functionDepth: 0
    functionLinenumber: 21664
    functionLinenumberEnd: 21667
    functionName: JSON_INTERNAL_CATCH
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::forward<ValueType>
    linkageType: ''
    returnType: void
    signature: void JSON_INTERNAL_CATCH (out_of_range&)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21680,1
    - Dst: convert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21680,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' ptr'
    - ' default_value'
    argTypes:
    - ::nlohmann::json_pointer<BasicJsonType>
    - ValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21681
      start: 21678
    functionDepth: 1
    functionLinenumber: 21678
    functionLinenumberEnd: 21681
    functionName: value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 135
    functionsReached:
    - convert
    - value
    linkageType: ''
    returnType: ValueType
    signature: ValueType value(const ::nlohmann::json_pointer<BasicJsonType>& ptr,
      const ValueType& default_value) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21691,1
    - Dst: convert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21691,1
    - Dst: std::forward<ValueType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21691,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' ptr'
    - ' default_value'
    argTypes:
    - ::nlohmann::json_pointer<BasicJsonType>
    - ValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21692
      start: 21689
    functionDepth: 1
    functionLinenumber: 21689
    functionLinenumberEnd: 21692
    functionName: value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 136
    functionsReached:
    - convert
    - std::forward<ValueType>
    - value
    linkageType: ''
    returnType: ReturnType
    signature: ReturnType value(const ::nlohmann::json_pointer<BasicJsonType>& ptr,
      ValueType && default_value) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21698,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21699
      start: 21696
    functionDepth: 1
    functionLinenumber: 21696
    functionLinenumberEnd: 21699
    functionName: front
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 49
    functionsReached:
    - begin
    linkageType: ''
    returnType: reference
    signature: reference front()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21706
      start: 21703
    functionDepth: 1
    functionLinenumber: 21703
    functionLinenumberEnd: 21706
    functionName: front
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 49
    functionsReached:
    - cbegin
    linkageType: ''
    returnType: const_reference
    signature: const_reference front() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21712,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21715
      start: 21710
    functionDepth: 1
    functionLinenumber: 21710
    functionLinenumberEnd: 21715
    functionName: back
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 174
    functionsReached:
    - end
    linkageType: ''
    returnType: reference
    signature: reference back()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21721,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21724
      start: 21719
    functionDepth: 1
    functionLinenumber: 21719
    functionLinenumberEnd: 21724
    functionName: back
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 174
    functionsReached:
    - cend
    linkageType: ''
    returnType: const_reference
    signature: const_reference back() const
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21734,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21736,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21736,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21739,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21750,1
    - Dst: IteratorType::m_it::primitive_iterator::is_begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21750,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21752,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21752,1
    - Dst: is_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21755,1
    - Dst: destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21758,1
    - Dst: std::allocator_traits<decltype(alloc)>::deallocate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21759,1
    - Dst: is_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21762,1
    - Dst: destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21765,1
    - Dst: std::allocator_traits<decltype(alloc)>::deallocate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21766,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21771,1
    - Dst: m_value::object::erase
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21777,1
    - Dst: m_value::array::erase
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21783,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21790,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21790,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21790,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21790,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 42
    argCount: 1
    argNames:
    - pos
    argTypes:
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21794
      start: 21731
    functionDepth: 6
    functionLinenumber: 21731
    functionLinenumberEnd: 21794
    functionName: erase
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 22
    functionsReached:
    - std::allocator_traits<decltype(alloc)>::deallocate
    - JSON_HEDLEY_UNLIKELY
    - concat
    - assert_invariant
    - destroy
    - invalid_iterator::create
    - is_binary
    - m_value::object::erase
    - m_value::array::erase
    - end
    - is_string
    - type_error::create
    - JSON_THROW
    - type_name
    - IteratorType::m_it::primitive_iterator::is_begin
    linkageType: ''
    returnType: IteratorType
    signature: IteratorType erase(IteratorType pos)
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21804,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21806,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21806,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21809,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21820,1
    - Dst: IteratorType::m_it::primitive_iterator::is_begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21820,1
    - Dst: IteratorType::m_it::primitive_iterator::is_end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21821,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21823,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21823,1
    - Dst: is_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21826,1
    - Dst: destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21829,1
    - Dst: std::allocator_traits<decltype(alloc)>::deallocate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21830,1
    - Dst: is_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21833,1
    - Dst: destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21836,1
    - Dst: std::allocator_traits<decltype(alloc)>::deallocate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21837,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21842,1
    - Dst: m_value::object::erase
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21848,1
    - Dst: m_value::array::erase
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21855,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21863,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21863,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21863,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21863,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 42
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21867
      start: 21801
    functionDepth: 6
    functionLinenumber: 21801
    functionLinenumberEnd: 21867
    functionName: erase
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 23
    functionsReached:
    - std::allocator_traits<decltype(alloc)>::deallocate
    - JSON_HEDLEY_UNLIKELY
    - IteratorType::m_it::primitive_iterator::is_end
    - concat
    - JSON_HEDLEY_LIKELY
    - destroy
    - assert_invariant
    - invalid_iterator::create
    - is_binary
    - m_value::object::erase
    - m_value::array::erase
    - end
    - is_string
    - type_error::create
    - JSON_THROW
    - type_name
    - IteratorType::m_it::primitive_iterator::is_begin
    linkageType: ''
    returnType: IteratorType
    signature: IteratorType erase(IteratorType first, IteratorType last)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21875,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21875,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21877,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21877,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21877,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21877,1
    - Dst: m_value::object::erase
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21880,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21880,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21881
      start: 21869
    functionDepth: 6
    functionLinenumber: 21869
    functionLinenumberEnd: 21881
    functionName: erase_internal
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - concat
    - is_object
    - m_value::object::erase
    - type_name
    - type_error::create
    - JSON_THROW
    - std::forward<KeyType>
    linkageType: ''
    returnType: "private:\n    template < typename KeyType, detail::enable_if_t <\n
      \                  detail::has_erase_with_key_type<basic_json_t, KeyType>::value,
      int > = 0 >"
    signature: "private:\n    template < typename KeyType, detail::enable_if_t <\n
      \                  detail::has_erase_with_key_type<basic_json_t, KeyType>::value,
      int > = 0 > erase_internal(KeyType && key)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21888,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21888,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21890,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21890,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21890,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21890,1
    - Dst: m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21893,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21893,1
    - Dst: m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21894,1
    - Dst: m_value::object::erase
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21896,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21900
      start: 21885
    functionDepth: 6
    functionLinenumber: 21885
    functionLinenumberEnd: 21900
    functionName: erase_internal
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - m_value::object::end
    - concat
    - is_object
    - m_value::object::erase
    - m_value::object::find
    - type_name
    - type_error::create
    - JSON_THROW
    - std::forward<KeyType>
    linkageType: ''
    returnType: size_type
    signature: size_type erase_internal(KeyType && key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: erase_internal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21919,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21919,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21920
      start: 21917
    functionDepth: 7
    functionLinenumber: 21917
    functionLinenumberEnd: 21920
    functionName: erase
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 25
    functionsReached:
    - std::forward<KeyType>
    - erase_internal
    linkageType: ''
    returnType: size_type
    signature: size_type erase(KeyType && key)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21927,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21927,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21929,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21929,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21931,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21931,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21931,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21931,1
    - Dst: m_value::array::erase
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21934,1
    - Dst: m_value::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21934,1
    - Dst: static_cast<difference_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21934,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21938,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21938,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21938,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21938,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - idx
    argTypes:
    - size_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21940
      start: 21924
    functionDepth: 4
    functionLinenumber: 21924
    functionLinenumberEnd: 21940
    functionName: erase
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 26
    functionsReached:
    - is_array
    - JSON_HEDLEY_UNLIKELY
    - m_value::array::begin
    - out_of_range::create
    - static_cast<difference_type>
    - concat
    - size
    - JSON_HEDLEY_LIKELY
    - to_string
    - m_value::array::erase
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: void
    signature: void erase(const size_type idx)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21955,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21957,1
    - Dst: m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21959,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - typename object_t::key_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21963
      start: 21953
    functionDepth: 1
    functionLinenumber: 21953
    functionLinenumberEnd: 21963
    functionName: find
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 121
    functionsReached:
    - is_object
    - m_value::object::find
    - end
    linkageType: ''
    returnType: iterator
    signature: iterator find(const typename object_t::key_type& key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21969,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21971,1
    - Dst: m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21973,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - typename object_t::key_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21977
      start: 21967
    functionDepth: 1
    functionLinenumber: 21967
    functionLinenumberEnd: 21977
    functionName: find
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 122
    functionsReached:
    - is_object
    - m_value::object::find
    - cend
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator find(const typename object_t::key_type& key) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21985,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21987,1
    - Dst: m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21989,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:21989,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 21993
      start: 21983
    functionDepth: 1
    functionLinenumber: 21983
    functionLinenumberEnd: 21993
    functionName: find
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 123
    functionsReached:
    - is_object
    - std::forward<KeyType>
    - m_value::object::find
    - end
    linkageType: ''
    returnType: iterator
    signature: iterator find(KeyType && key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22001,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22003,1
    - Dst: m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22005,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22005,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22009
      start: 21999
    functionDepth: 1
    functionLinenumber: 21999
    functionLinenumberEnd: 22009
    functionName: find
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 124
    functionsReached:
    - is_object
    - std::forward<KeyType>
    - m_value::object::find
    - cend
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator find(KeyType && key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22016,1
    - Dst: m_value::object::count
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22016,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - typename object_t::key_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22017
      start: 22013
    functionDepth: 1
    functionLinenumber: 22013
    functionLinenumberEnd: 22017
    functionName: count
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 41
    functionsReached:
    - is_object
    - m_value::object::count
    linkageType: ''
    returnType: size_type
    signature: size_type count(const typename object_t::key_type& key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22026,1
    - Dst: m_value::object::count
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22026,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22026,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22027
      start: 22023
    functionDepth: 1
    functionLinenumber: 22023
    functionLinenumberEnd: 22027
    functionName: count
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 42
    functionsReached:
    - is_object
    - std::forward<KeyType>
    - m_value::object::count
    linkageType: ''
    returnType: size_type
    signature: size_type count(KeyType && key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22033,1
    - Dst: m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22033,1
    - Dst: m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22033,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - typename object_t::key_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22034
      start: 22031
    functionDepth: 3
    functionLinenumber: 22031
    functionLinenumberEnd: 22034
    functionName: contains
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 12
    functionsReached:
    - is_object
    - m_value::object::find
    - m_value::object::end
    linkageType: ''
    returnType: bool
    signature: bool contains(const typename object_t::key_type& key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22042,1
    - Dst: m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22042,1
    - Dst: std::forward<KeyType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22042,1
    - Dst: m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22042,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' key'
    argTypes:
    - KeyType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22043
      start: 22040
    functionDepth: 3
    functionLinenumber: 22040
    functionLinenumberEnd: 22043
    functionName: contains
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 12
    functionsReached:
    - is_object
    - std::forward<KeyType>
    - m_value::object::find
    - m_value::object::end
    linkageType: ''
    returnType: bool
    signature: bool contains(KeyType && key) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: contains
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22049,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ptr'
    argTypes:
    - json_pointer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22050
      start: 22047
    functionDepth: 1
    functionLinenumber: 22047
    functionLinenumberEnd: 22050
    functionName: contains
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 13
    functionsReached:
    - contains
    linkageType: ''
    returnType: bool
    signature: bool contains(const json_pointer& ptr) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: contains
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22056,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ptr'
    argTypes:
    - typename ::nlohmann::json_pointer<BasicJsonType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22057
      start: 22054
    functionDepth: 1
    functionLinenumber: 22054
    functionLinenumberEnd: 22057
    functionName: contains
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 14
    functionsReached:
    - contains
    linkageType: ''
    returnType: bool
    signature: bool contains(const typename ::nlohmann::json_pointer<BasicJsonType>&
      ptr) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: iterator::set_begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22073,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22075
      start: 22070
    functionDepth: 0
    functionLinenumber: 22070
    functionLinenumberEnd: 22075
    functionName: begin
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 92
    functionsReached:
    - iterator::set_begin
    linkageType: ''
    returnType: iterator
    signature: iterator begin() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22081,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22082
      start: 22079
    functionDepth: 1
    functionLinenumber: 22079
    functionLinenumberEnd: 22082
    functionName: begin
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 93
    functionsReached:
    - cbegin
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator begin() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_iterator::set_begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22089,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22091
      start: 22086
    functionDepth: 0
    functionLinenumber: 22086
    functionLinenumberEnd: 22091
    functionName: cbegin
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - const_iterator::set_begin
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator cbegin() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: iterator::set_end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22098,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22100
      start: 22095
    functionDepth: 2
    functionLinenumber: 22095
    functionLinenumberEnd: 22100
    functionName: end
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 204
    functionsReached:
    - iterator::set_end
    linkageType: ''
    returnType: iterator
    signature: iterator end() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22107
      start: 22104
    functionDepth: 1
    functionLinenumber: 22104
    functionLinenumberEnd: 22107
    functionName: end
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 205
    functionsReached:
    - cend
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator end() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_iterator::set_end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22114,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22116
      start: 22111
    functionDepth: 2
    functionLinenumber: 22111
    functionLinenumberEnd: 22116
    functionName: cend
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 8
    functionsReached:
    - const_iterator::set_end
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator cend() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22122,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22122,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22123
      start: 22120
    functionDepth: 3
    functionLinenumber: 22120
    functionLinenumberEnd: 22123
    functionName: rbegin
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - end
    - reverse_iterator
    linkageType: ''
    returnType: reverse_iterator
    signature: reverse_iterator rbegin() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: crbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22129,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22130
      start: 22127
    functionDepth: 1
    functionLinenumber: 22127
    functionLinenumberEnd: 22130
    functionName: rbegin
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 5
    functionsReached:
    - crbegin
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rbegin() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reverse_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22136,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22136,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22137
      start: 22134
    functionDepth: 1
    functionLinenumber: 22134
    functionLinenumberEnd: 22137
    functionName: rend
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 4
    functionsReached:
    - begin
    - reverse_iterator
    linkageType: ''
    returnType: reverse_iterator
    signature: reverse_iterator rend() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: crend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22143,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22144
      start: 22141
    functionDepth: 1
    functionLinenumber: 22141
    functionLinenumberEnd: 22144
    functionName: rend
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 5
    functionsReached:
    - crend
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rend() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22150,1
    - Dst: cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22150,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22151
      start: 22148
    functionDepth: 3
    functionLinenumber: 22148
    functionLinenumberEnd: 22151
    functionName: crbegin
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - const_reverse_iterator
    - cend
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator crbegin() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reverse_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22157,1
    - Dst: cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22158
      start: 22155
    functionDepth: 1
    functionLinenumber: 22155
    functionLinenumberEnd: 22158
    functionName: crend
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - const_reverse_iterator
    - cbegin
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator crend() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reference::items
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ref
    argTypes:
    - reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22170
      start: 22167
    functionDepth: 1
    functionLinenumber: 22167
    functionLinenumberEnd: 22170
    functionName: iterator_wrapper
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - reference::items
    linkageType: ''
    returnType: iteration_proxy<iterator>
    signature: iteration_proxy<iterator> iterator_wrapper(reference ref) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_reference::items
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ref
    argTypes:
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22181
      start: 22178
    functionDepth: 1
    functionLinenumber: 22178
    functionLinenumberEnd: 22181
    functionName: iterator_wrapper
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - const_reference::items
    linkageType: ''
    returnType: iteration_proxy<const_iterator>
    signature: iteration_proxy<const_iterator> iterator_wrapper(const_reference ref)
      noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: iteration_proxy<iterator>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22188
      start: 22185
    functionDepth: 0
    functionLinenumber: 22185
    functionLinenumberEnd: 22188
    functionName: items
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 10
    functionsReached:
    - iteration_proxy<iterator>
    linkageType: ''
    returnType: iteration_proxy<iterator>
    signature: iteration_proxy<iterator> items() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: iteration_proxy<const_iterator>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22194,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22195
      start: 22192
    functionDepth: 0
    functionLinenumber: 22192
    functionLinenumberEnd: 22195
    functionName: items
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 10
    functionsReached:
    - iteration_proxy<const_iterator>
    linkageType: ''
    returnType: iteration_proxy<const_iterator>
    signature: iteration_proxy<const_iterator> items() const noexcept
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: m_value::array::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22221,1
    - Dst: m_value::object::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22227,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22243
      start: 22208
    functionDepth: 1
    functionLinenumber: 22208
    functionLinenumberEnd: 22243
    functionName: empty
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 173
    functionsReached:
    - m_value::array::empty
    - m_value::object::empty
    linkageType: ''
    returnType: bool
    signature: bool empty() const noexcept
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: m_value::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22260,1
    - Dst: m_value::object::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22266,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22282
      start: 22247
    functionDepth: 1
    functionLinenumber: 22247
    functionLinenumberEnd: 22282
    functionName: size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 350
    functionsReached:
    - m_value::object::size
    - m_value::array::size
    linkageType: ''
    returnType: size_type
    signature: size_type size() const noexcept
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: m_value::array::max_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22293,1
    - Dst: m_value::object::max_size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22299,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22313,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22316
      start: 22286
    functionDepth: 1
    functionLinenumber: 22286
    functionLinenumberEnd: 22316
    functionName: max_size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - m_value::object::max_size
    - m_value::array::max_size
    - size
    linkageType: ''
    returnType: size_type
    signature: size_type max_size() const noexcept
  - BBCount: 12
    BranchProfiles: []
    Callsites:
    - Dst: m_value::string::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22359,1
    - Dst: m_value::binary::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22365,1
    - Dst: m_value::array::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22371,1
    - Dst: m_value::object::clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22377,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 39
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22386
      start: 22329
    functionDepth: 1
    functionLinenumber: 22329
    functionLinenumberEnd: 22386
    functionName: clear
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 53
    functionsReached:
    - m_value::array::clear
    - m_value::string::clear
    - m_value::binary::clear
    - m_value::object::clear
    linkageType: ''
    returnType: void
    signature: void clear() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22393,1
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22393,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22393,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22395,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22395,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22395,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22395,1
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22399,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22403,1
    - Dst: m_value::array::capacity
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22407,1
    - Dst: m_value::array::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22408,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22408,1
    - Dst: set_parent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22409,1
    - Dst: m_value::array::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22409,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22411
      start: 22390
    functionDepth: 5
    functionLinenumber: 22390
    functionLinenumberEnd: 22411
    functionName: push_back
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 126
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - is_array
    - m_value::array::push_back
    - std::move
    - m_value::array::back
    - set_parent
    - concat
    - assert_invariant
    - m_value::array::capacity
    - is_null
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: void
    signature: void push_back(basic_json&& val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22417,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22417,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22419
      start: 22415
    functionDepth: 2
    functionLinenumber: 22415
    functionLinenumberEnd: 22419
    functionName: operator+=(basic_json&& val)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - push_back
    linkageType: ''
    returnType: reference
    signature: reference operator+=(basic_json&& val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22426,1
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22426,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22426,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22428,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22428,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22428,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22428,1
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22432,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22436,1
    - Dst: m_value::array::capacity
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22440,1
    - Dst: m_value::array::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22441,1
    - Dst: set_parent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22442,1
    - Dst: m_value::array::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22442,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22443
      start: 22423
    functionDepth: 5
    functionLinenumber: 22423
    functionLinenumberEnd: 22443
    functionName: push_back
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 128
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - is_array
    - m_value::array::push_back
    - m_value::array::back
    - set_parent
    - concat
    - assert_invariant
    - m_value::array::capacity
    - is_null
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: void
    signature: void push_back(const basic_json& val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22449,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22451
      start: 22447
    functionDepth: 2
    functionLinenumber: 22447
    functionLinenumberEnd: 22451
    functionName: operator+=(const basic_json& val)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - push_back
    linkageType: ''
    returnType: reference
    signature: reference operator+=(const basic_json& val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22458,1
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22458,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22458,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22460,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22460,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22460,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22460,1
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22464,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22468,1
    - Dst: m_value::object::insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22472,1
    - Dst: set_parent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22473,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - typename object_t::value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22474
      start: 22455
    functionDepth: 4
    functionLinenumber: 22455
    functionLinenumberEnd: 22474
    functionName: push_back
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 129
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - set_parent
    - concat
    - assert_invariant
    - is_object
    - m_value::object::insert
    - is_null
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: void
    signature: void push_back(const typename object_t::value_type& val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22480,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' val'
    argTypes:
    - typename object_t::value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22482
      start: 22478
    functionDepth: 2
    functionLinenumber: 22478
    functionLinenumberEnd: 22482
    functionName: operator+=(const typename object_t::value_type& val)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - push_back
    linkageType: ''
    returnType: reference
    signature: reference operator+=(const typename object_t::value_type& val)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22488,1
    - Dst: initializer_list_t::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22488,1
    - Dst: initializer_list_t::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22488,1
    - Dst: is_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22488,1
    - Dst: initializer_list_t::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22490,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22496,1
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22496,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    argCount: 1
    argNames:
    - init
    argTypes:
    - initializer_list_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22498
      start: 22486
    functionDepth: 1
    functionLinenumber: 22486
    functionLinenumberEnd: 22498
    functionName: push_back
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 131
    functionsReached:
    - basic_json
    - initializer_list_t::begin
    - push_back
    - is_object
    - is_string
    - initializer_list_t::size
    linkageType: ''
    returnType: void
    signature: void push_back(initializer_list_t init)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22504,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - init
    argTypes:
    - initializer_list_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22506
      start: 22502
    functionDepth: 2
    functionLinenumber: 22502
    functionLinenumberEnd: 22506
    functionName: operator+=(initializer_list_t init)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - push_back
    linkageType: ''
    returnType: reference
    signature: reference operator+=(initializer_list_t init)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22514,1
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22514,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22514,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22516,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22516,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22516,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22516,1
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22520,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22524,1
    - Dst: m_value::array::capacity
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22528,1
    - Dst: m_value::array::emplace_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22529,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22529,1
    - Dst: set_parent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22530,1
    - Dst: m_value::array::back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22530,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22531
      start: 22511
    functionDepth: 5
    functionLinenumber: 22511
    functionLinenumberEnd: 22531
    functionName: emplace_back
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 10
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - is_array
    - std::forward<Args>
    - m_value::array::back
    - set_parent
    - concat
    - assert_invariant
    - m_value::array::capacity
    - is_null
    - type_name
    - type_error::create
    - JSON_THROW
    - m_value::array::emplace_back
    linkageType: ''
    returnType: reference
    signature: reference emplace_back(Args&& ... args)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22539,1
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22539,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22539,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22541,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22541,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22541,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22541,1
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22545,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22549,1
    - Dst: m_value::object::emplace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22553,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22553,1
    - Dst: set_parent
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22554,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22557,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22562
      start: 22536
    functionDepth: 4
    functionLinenumber: 22536
    functionLinenumberEnd: 22562
    functionName: emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 12
    functionsReached:
    - m_value::object::emplace
    - begin
    - JSON_HEDLEY_UNLIKELY
    - std::forward<Args>
    - set_parent
    - concat
    - assert_invariant
    - is_object
    - is_null
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: std::pair<iterator, bool>
    signature: std::pair<iterator, bool> emplace(Args&& ... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22571,1
    - Dst: std::distance
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22573,1
    - Dst: m_value::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22573,1
    - Dst: m_value::array::insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22574,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22574,1
    - Dst: m_value::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22575,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22581,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - pos
    argTypes:
    - const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22583
      start: 22568
    functionDepth: 3
    functionLinenumber: 22568
    functionLinenumberEnd: 22583
    functionName: insert_iterator
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - m_value::array::begin
    - std::forward<Args>
    - m_value::array::insert
    - std::distance
    - set_parents
    - JSON_ASSERT
    linkageType: ''
    returnType: iterator
    signature: iterator insert_iterator(const_iterator pos, Args&& ... args)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22590,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22590,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22593,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22595,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22595,1
    - Dst: insert_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22599,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22602,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22602,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22602,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22602,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - pos
    - ' val'
    argTypes:
    - const_iterator
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22603
      start: 22587
    functionDepth: 4
    functionLinenumber: 22587
    functionLinenumberEnd: 22603
    functionName: insert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 63
    functionsReached:
    - is_array
    - JSON_HEDLEY_UNLIKELY
    - concat
    - JSON_HEDLEY_LIKELY
    - invalid_iterator::create
    - insert_iterator
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: iterator
    signature: iterator insert(const_iterator pos, const basic_json& val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22609,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - pos
    - ' val'
    argTypes:
    - const_iterator
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22610
      start: 22607
    functionDepth: 1
    functionLinenumber: 22607
    functionLinenumberEnd: 22610
    functionName: insert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 64
    functionsReached:
    - insert
    linkageType: ''
    returnType: iterator
    signature: iterator insert(const_iterator pos, basic_json&& val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22617,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22617,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22620,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22622,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22622,1
    - Dst: insert_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22626,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22629,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22629,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22629,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22629,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 3
    argNames:
    - pos
    - cnt
    - ' val'
    argTypes:
    - const_iterator
    - size_type
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22630
      start: 22614
    functionDepth: 4
    functionLinenumber: 22614
    functionLinenumberEnd: 22630
    functionName: insert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 64
    functionsReached:
    - is_array
    - JSON_HEDLEY_UNLIKELY
    - concat
    - JSON_HEDLEY_LIKELY
    - invalid_iterator::create
    - insert_iterator
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: iterator
    signature: iterator insert(const_iterator pos, size_type cnt, const basic_json&
      val)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22637,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22637,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22639,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22639,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22639,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22639,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22643,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22645,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22645,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22649,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22651,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22651,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22654,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22656,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22656,1
    - Dst: insert_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22660,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 14
    argCount: 3
    argNames:
    - pos
    - first
    - last
    argTypes:
    - const_iterator
    - const_iterator
    - const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22661
      start: 22634
    functionDepth: 4
    functionLinenumber: 22634
    functionLinenumberEnd: 22661
    functionName: insert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 64
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - is_array
    - concat
    - invalid_iterator::create
    - insert_iterator
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: iterator
    signature: iterator insert(const_iterator pos, const_iterator first, const_iterator
      last)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22668,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22668,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22670,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22670,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22670,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22670,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22674,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22676,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22676,1
    - Dst: insert_iterator
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22680,1
    - Dst: initializer_list_t::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22680,1
    - Dst: initializer_list_t::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22680,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 2
    argNames:
    - pos
    - ilist
    argTypes:
    - const_iterator
    - initializer_list_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22681
      start: 22665
    functionDepth: 4
    functionLinenumber: 22665
    functionLinenumberEnd: 22681
    functionName: insert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 64
    functionsReached:
    - initializer_list_t::begin
    - JSON_HEDLEY_UNLIKELY
    - is_array
    - concat
    - invalid_iterator::create
    - insert_iterator
    - type_name
    - type_error::create
    - JSON_THROW
    - initializer_list_t::end
    linkageType: ''
    returnType: iterator
    signature: iterator insert(const_iterator pos, initializer_list_t ilist)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22688,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22688,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22690,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22690,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22690,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22690,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22694,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22696,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22696,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22700,1
    - Dst: const_iterator::m_object::is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22700,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22702,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22702,1
    - Dst: m_value::object::insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22705,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - const_iterator
    - const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22706
      start: 22685
    functionDepth: 4
    functionLinenumber: 22685
    functionLinenumberEnd: 22706
    functionName: insert
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 65
    functionsReached:
    - JSON_HEDLEY_UNLIKELY
    - const_iterator::m_object::is_object
    - concat
    - is_object
    - invalid_iterator::create
    - m_value::object::insert
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: void
    signature: void insert(const_iterator first, const_iterator last)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: update
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22712,1
    - Dst: const_reference::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22712,1
    - Dst: const_reference::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22712,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - j
    argTypes:
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22713
      start: 22710
    functionDepth: 3
    functionLinenumber: 22710
    functionLinenumberEnd: 22713
    functionName: update
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - const_reference::begin
    - update
    - const_reference::end
    linkageType: ''
    returnType: void
    signature: void update(const_reference j, bool merge_objects = false)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: is_null
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22720,1
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22723,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22724,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22727,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22727,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22729,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22729,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22729,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22729,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22733,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22735,1
    - Dst: invalid_iterator::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22735,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22739,1
    - Dst: const_iterator::m_object::is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22739,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22741,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22741,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22741,1
    - Dst: const_iterator::m_object::type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22741,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22746,1
    - Dst: m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22748,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22748,1
    - Dst: m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22749,1
    - Dst: auto::second::update
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22751,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22751,1
    - Dst: m_value::object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22755,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22755,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22755,1
    - Dst: m_value::object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22757,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22757,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 25
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - const_iterator
    - const_iterator
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22760
      start: 22717
    functionDepth: 4
    functionLinenumber: 22717
    functionLinenumberEnd: 22760
    functionName: update
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - auto::second::update
    - JSON_HEDLEY_UNLIKELY
    - const_iterator::m_object::is_object
    - m_value::object::end
    - const_iterator::m_object::type_name
    - auto::value
    - concat
    - assert_invariant
    - m_value::object
    - create
    - is_object
    - invalid_iterator::create
    - m_value::object::find
    - is_null
    - type_name
    - type_error::create
    - JSON_THROW
    - auto::key
    linkageType: ''
    returnType: void
    signature: void update(const_iterator first, const_iterator last, bool merge_objects
      = false)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22771,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22772,1
    - Dst: set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22774,1
    - Dst: reference::set_parents
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22775,1
    - Dst: assert_invariant
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22776,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - other
    argTypes:
    - reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22777
      start: 22764
    functionDepth: 1
    functionLinenumber: 22764
    functionLinenumberEnd: 22777
    functionName: swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 16
    functionsReached:
    - set_parents
    - assert_invariant
    - swap
    - reference::set_parents
    linkageType: ''
    returnType: void
    signature: "void swap(reference other) noexcept (\n        std::is_nothrow_move_constructible<value_t>::value&&\n
      \       std::is_nothrow_move_assignable<value_t>::value&&\n        std::is_nothrow_move_constructible<json_value>::value&&
      // NOLINT(cppcoreguidelines-noexcept-swap,performance-noexcept-swap)\n        std::is_nothrow_move_assignable<json_value>::value\n
      \   )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reference::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22788,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 2
    argNames:
    - left
    - right
    argTypes:
    - reference
    - reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22789
      start: 22781
    functionDepth: 0
    functionLinenumber: 22781
    functionLinenumberEnd: 22789
    functionName: swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 17
    functionsReached:
    - reference::swap
    linkageType: ''
    returnType: friend
    signature: "friend swap(reference left, reference right) noexcept (\n        std::is_nothrow_move_constructible<value_t>::value&&\n
      \       std::is_nothrow_move_assignable<value_t>::value&&\n        std::is_nothrow_move_constructible<json_value>::value&&
      // NOLINT(cppcoreguidelines-noexcept-swap,performance-noexcept-swap)\n        std::is_nothrow_move_assignable<json_value>::value\n
      \   )"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22796,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22796,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22799,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22803,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22803,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22803,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22803,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - array_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22805
      start: 22793
    functionDepth: 4
    functionLinenumber: 22793
    functionLinenumberEnd: 22805
    functionName: swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 18
    functionsReached:
    - is_array
    - concat
    - JSON_HEDLEY_LIKELY
    - swap
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: void
    signature: void swap(array_t& other)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22812,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22812,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22815,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22819,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22819,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22819,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22819,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - object_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22821
      start: 22809
    functionDepth: 4
    functionLinenumber: 22809
    functionLinenumberEnd: 22821
    functionName: swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 19
    functionsReached:
    - concat
    - JSON_HEDLEY_LIKELY
    - is_object
    - swap
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: void
    signature: void swap(object_t& other)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22828,1
    - Dst: is_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22828,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22831,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22835,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22835,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22835,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22835,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - string_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22837
      start: 22825
    functionDepth: 4
    functionLinenumber: 22825
    functionLinenumberEnd: 22837
    functionName: swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 20
    functionsReached:
    - concat
    - JSON_HEDLEY_LIKELY
    - swap
    - is_string
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: void
    signature: void swap(string_t& other)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22844,1
    - Dst: is_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22844,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22847,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22851,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22851,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22851,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22851,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - binary_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22853
      start: 22841
    functionDepth: 4
    functionLinenumber: 22841
    functionLinenumberEnd: 22853
    functionName: swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 21
    functionsReached:
    - concat
    - JSON_HEDLEY_LIKELY
    - is_binary
    - swap
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: void
    signature: void swap(binary_t& other)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22860,1
    - Dst: is_binary
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22860,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22863,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22867,1
    - Dst: type_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22867,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22867,1
    - Dst: type_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22867,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - typename binary_t::container_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22869
      start: 22857
    functionDepth: 4
    functionLinenumber: 22857
    functionLinenumberEnd: 22869
    functionName: swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 22
    functionsReached:
    - concat
    - JSON_HEDLEY_LIKELY
    - is_binary
    - swap
    - type_name
    - type_error::create
    - JSON_THROW
    linkageType: ''
    returnType: void
    signature: void swap(typename binary_t::container_type& other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - op
    - ','
    - null_result
    - ','
    - unordered_result
    - ','
    - default_result
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22886
      start: 22882
    functionDepth: 0
    functionLinenumber: 22882
    functionLinenumberEnd: 22886
    functionName: JSON_IMPLEMENT_OPERATOR
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: JSON_IMPLEMENT_OPERATOR(op, null_result, unordered_result, default_result)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22949
      start: 22946
    functionDepth: 0
    functionLinenumber: 22946
    functionLinenumberEnd: 22949
    functionName: if
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: else
    signature: else if(compares_unordered(lhs, rhs))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: compares_unordered
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22977,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22978
      start: 22975
    functionDepth: 1
    functionLinenumber: 22975
    functionLinenumberEnd: 22978
    functionName: compares_unordered
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - compares_unordered
    linkageType: ''
    returnType: bool
    signature: bool compares_unordered(const_reference rhs, bool inverse = false)
      const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_IMPLEMENT_OPERATOR
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:22991,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22995
      start: 22984
    functionDepth: 1
    functionLinenumber: 22984
    functionLinenumberEnd: 22995
    functionName: operator==(const_reference rhs) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_IMPLEMENT_OPERATOR
    linkageType: ''
    returnType: bool
    signature: bool operator==(const_reference rhs) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23003,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - ScalarType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23004
      start: 23001
    functionDepth: 1
    functionLinenumber: 23001
    functionLinenumberEnd: 23004
    functionName: operator==(ScalarType rhs) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: bool
    signature: bool operator==(ScalarType rhs) const noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compares_unordered
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23010,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23015
      start: 23008
    functionDepth: 2
    functionLinenumber: 23008
    functionLinenumberEnd: 23015
    functionName: operator!=(const_reference rhs) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - compares_unordered
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const_reference rhs) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23028
      start: 23019
    functionDepth: 0
    functionLinenumber: 23019
    functionLinenumberEnd: 23028
    functionName: operator<=>(const_reference rhs) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::partial_ordering
    signature: std::partial_ordering operator<=>(const_reference rhs) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23036,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - ScalarType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23037
      start: 23034
    functionDepth: 1
    functionLinenumber: 23034
    functionLinenumberEnd: 23037
    functionName: operator<=>(ScalarType rhs) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: std::partial_ordering
    signature: std::partial_ordering operator<=>(ScalarType rhs) const noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compares_unordered
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23048,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23053
      start: 23046
    functionDepth: 2
    functionLinenumber: 23046
    functionLinenumberEnd: 23053
    functionName: operator<=(const_reference rhs) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - compares_unordered
    linkageType: ''
    returnType: bool
    signature: bool operator<=(const_reference rhs) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23061,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - ScalarType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23062
      start: 23059
    functionDepth: 1
    functionLinenumber: 23059
    functionLinenumberEnd: 23062
    functionName: operator<=(ScalarType rhs) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: bool
    signature: bool operator<=(ScalarType rhs) const noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compares_unordered
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23069,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23074
      start: 23067
    functionDepth: 2
    functionLinenumber: 23067
    functionLinenumberEnd: 23074
    functionName: operator>=(const_reference rhs) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - compares_unordered
    linkageType: ''
    returnType: bool
    signature: bool operator>=(const_reference rhs) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23082,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - ScalarType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23083
      start: 23080
    functionDepth: 1
    functionLinenumber: 23080
    functionLinenumberEnd: 23083
    functionName: operator>=(ScalarType rhs) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: bool
    signature: bool operator>=(ScalarType rhs) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: JSON_IMPLEMENT_OPERATOR
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23094,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - const_reference
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23098
      start: 23088
    functionDepth: 1
    functionLinenumber: 23088
    functionLinenumberEnd: 23098
    functionName: operator==(const_reference lhs, const_reference rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - JSON_IMPLEMENT_OPERATOR
    linkageType: ''
    returnType: friend
    signature: friend operator==(const_reference lhs, const_reference rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23106,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - const_reference
    - ScalarType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23107
      start: 23104
    functionDepth: 1
    functionLinenumber: 23104
    functionLinenumberEnd: 23107
    functionName: operator==(const_reference lhs, ScalarType rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: bool
    signature: bool operator==(const_reference lhs, ScalarType rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - ScalarType
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23116
      start: 23113
    functionDepth: 1
    functionLinenumber: 23113
    functionLinenumberEnd: 23116
    functionName: operator==(ScalarType lhs, const_reference rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: bool
    signature: bool operator==(ScalarType lhs, const_reference rhs) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compares_unordered
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - const_reference
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23127
      start: 23120
    functionDepth: 2
    functionLinenumber: 23120
    functionLinenumberEnd: 23127
    functionName: operator!=(const_reference lhs, const_reference rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - compares_unordered
    linkageType: ''
    returnType: friend
    signature: friend operator!=(const_reference lhs, const_reference rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - const_reference
    - ScalarType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23136
      start: 23133
    functionDepth: 1
    functionLinenumber: 23133
    functionLinenumberEnd: 23136
    functionName: operator!=(const_reference lhs, ScalarType rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const_reference lhs, ScalarType rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - ScalarType
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23145
      start: 23142
    functionDepth: 1
    functionLinenumber: 23142
    functionLinenumberEnd: 23145
    functionName: operator!=(ScalarType lhs, const_reference rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: bool
    signature: bool operator!=(ScalarType lhs, const_reference rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - const_reference
    - ScalarType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23164
      start: 23161
    functionDepth: 1
    functionLinenumber: 23161
    functionLinenumberEnd: 23164
    functionName: operator<(const_reference lhs, ScalarType rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: bool
    signature: bool operator<(const_reference lhs, ScalarType rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - ScalarType
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23173
      start: 23170
    functionDepth: 1
    functionLinenumber: 23170
    functionLinenumberEnd: 23173
    functionName: operator<(ScalarType lhs, const_reference rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: bool
    signature: bool operator<(ScalarType lhs, const_reference rhs) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compares_unordered
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23179,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - const_reference
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23184
      start: 23177
    functionDepth: 2
    functionLinenumber: 23177
    functionLinenumberEnd: 23184
    functionName: operator<=(const_reference lhs, const_reference rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - compares_unordered
    linkageType: ''
    returnType: friend
    signature: friend operator<=(const_reference lhs, const_reference rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - const_reference
    - ScalarType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23193
      start: 23190
    functionDepth: 1
    functionLinenumber: 23190
    functionLinenumberEnd: 23193
    functionName: operator<=(const_reference lhs, ScalarType rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: bool
    signature: bool operator<=(const_reference lhs, ScalarType rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - ScalarType
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23202
      start: 23199
    functionDepth: 1
    functionLinenumber: 23199
    functionLinenumberEnd: 23202
    functionName: operator<=(ScalarType lhs, const_reference rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: bool
    signature: bool operator<=(ScalarType lhs, const_reference rhs) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compares_unordered
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23209,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - const_reference
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23214
      start: 23206
    functionDepth: 2
    functionLinenumber: 23206
    functionLinenumberEnd: 23214
    functionName: operator>(const_reference lhs, const_reference rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - compares_unordered
    linkageType: ''
    returnType: friend
    signature: friend operator>(const_reference lhs, const_reference rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23222,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - const_reference
    - ScalarType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23223
      start: 23220
    functionDepth: 1
    functionLinenumber: 23220
    functionLinenumberEnd: 23223
    functionName: operator>(const_reference lhs, ScalarType rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: bool
    signature: bool operator>(const_reference lhs, ScalarType rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23231,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - ScalarType
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23232
      start: 23229
    functionDepth: 1
    functionLinenumber: 23229
    functionLinenumberEnd: 23232
    functionName: operator>(ScalarType lhs, const_reference rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: bool
    signature: bool operator>(ScalarType lhs, const_reference rhs) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: compares_unordered
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23238,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - const_reference
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23243
      start: 23236
    functionDepth: 2
    functionLinenumber: 23236
    functionLinenumberEnd: 23243
    functionName: operator>=(const_reference lhs, const_reference rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - compares_unordered
    linkageType: ''
    returnType: friend
    signature: friend operator>=(const_reference lhs, const_reference rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23251,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - const_reference
    - ScalarType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23252
      start: 23249
    functionDepth: 1
    functionLinenumber: 23249
    functionLinenumberEnd: 23252
    functionName: operator>=(const_reference lhs, ScalarType rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: bool
    signature: bool operator>=(const_reference lhs, ScalarType rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - ScalarType
    - const_reference
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23261
      start: 23258
    functionDepth: 1
    functionLinenumber: 23258
    functionLinenumberEnd: 23261
    functionName: operator>=(ScalarType lhs, const_reference rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    linkageType: ''
    returnType: bool
    signature: bool operator>=(ScalarType lhs, const_reference rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: width
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23280,1
    - Dst: width
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23281,1
    - Dst: width
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23284,1
    - Dst: detail::output_adapter<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23287,1
    - Dst: fill
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23287,1
    - Dst: serializer::dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23288,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23288,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' o'
    - ' j'
    argTypes:
    - std::ostream
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23290
      start: 23277
    functionDepth: 6
    functionLinenumber: 23277
    functionLinenumberEnd: 23290
    functionName: '& operator<<(std::ostream& o, const basic_json& j)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - fill
    - detail::output_adapter<char>
    - width
    - serializer::dump
    - static_cast<unsigned int>
    linkageType: ''
    returnType: friend
    signature: friend & operator<<(std::ostream& o, const basic_json& j)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parser
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23323,1
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23323,1
    - Dst: std::forward<InputType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23323,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - InputType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23325
      start: 23316
    functionDepth: 2
    functionLinenumber: 23316
    functionLinenumberEnd: 23325
    functionName: parse
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 17
    functionsReached:
    - parser
    - std::forward<InputType>
    - file_input_adapter
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: "JSON_HEDLEY_WARN_UNUSED_RESULT parse(InputType&& i,\n                            const
      parser_callback_t cb = nullptr,\n                            const bool allow_exceptions
      = true,\n                            const bool ignore_comments = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parser
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23338,1
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23338,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23338,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23338,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23340
      start: 23330
    functionDepth: 2
    functionLinenumber: 23330
    functionLinenumberEnd: 23340
    functionName: parse
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 17
    functionsReached:
    - parser
    - std::move
    - file_input_adapter
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: "JSON_HEDLEY_WARN_UNUSED_RESULT parse(IteratorType first,\n                            IteratorType
      last,\n                            const parser_callback_t cb = nullptr,\n                            const
      bool allow_exceptions = true,\n                            const bool ignore_comments
      = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parser
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23350,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23350,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - detail::span_input_adapter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23352
      start: 23344
    functionDepth: 1
    functionLinenumber: 23344
    functionLinenumberEnd: 23352
    functionName: parse
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 17
    functionsReached:
    - get
    - parser
    linkageType: ''
    returnType: basic_json
    signature: "basic_json parse(detail::span_input_adapter&& i,\n                            const
      parser_callback_t cb = nullptr,\n                            const bool allow_exceptions
      = true,\n                            const bool ignore_comments = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parser
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23360,1
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23360,1
    - Dst: std::forward<InputType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23360,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - InputType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23361
      start: 23357
    functionDepth: 2
    functionLinenumber: 23357
    functionLinenumberEnd: 23361
    functionName: accept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - parser
    - std::forward<InputType>
    - file_input_adapter
    linkageType: ''
    returnType: bool
    signature: "bool accept(InputType&& i,\n                       const bool ignore_comments
      = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parser
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23369,1
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23369,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23369,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23369,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23370
      start: 23366
    functionDepth: 2
    functionLinenumber: 23366
    functionLinenumberEnd: 23370
    functionName: accept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - parser
    - std::move
    - file_input_adapter
    linkageType: ''
    returnType: bool
    signature: "bool accept(IteratorType first, IteratorType last,\n                       const
      bool ignore_comments = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parser
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23377,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23377,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - detail::span_input_adapter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23378
      start: 23374
    functionDepth: 1
    functionLinenumber: 23374
    functionLinenumberEnd: 23378
    functionName: accept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get
    - parser
    linkageType: ''
    returnType: bool
    signature: "bool accept(detail::span_input_adapter&& i,\n                       const
      bool ignore_comments = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23389,1
    - Dst: std::forward<InputType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23389,1
    - Dst: parser
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23391,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23391,1
    - Dst: detail::binary_reader<basic_json, decltype(ia), SAX>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23392,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23392,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' i'
    - sax
    argTypes:
    - InputType
    - SAX*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23393
      start: 23384
    functionDepth: 2
    functionLinenumber: 23384
    functionLinenumberEnd: 23393
    functionName: sax_parse
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - std::move
    - detail::binary_reader<basic_json, decltype(ia), SAX>
    - parser
    - file_input_adapter
    - std::forward<InputType>
    linkageType: ''
    returnType: bool
    signature: "bool sax_parse(InputType&& i, SAX* sax,\n                          input_format_t
      format = input_format_t::json,\n                          const bool strict
      = true,\n                          const bool ignore_comments = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23404,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23404,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23404,1
    - Dst: parser
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23406,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23406,1
    - Dst: detail::binary_reader<basic_json, decltype(ia), SAX>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23407,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23407,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - first
    - last
    - sax
    argTypes:
    - IteratorType
    - IteratorType
    - SAX*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23408
      start: 23399
    functionDepth: 2
    functionLinenumber: 23399
    functionLinenumberEnd: 23408
    functionName: sax_parse
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - parser
    - detail::binary_reader<basic_json, decltype(ia), SAX>
    - std::move
    - file_input_adapter
    linkageType: ''
    returnType: bool
    signature: "bool sax_parse(IteratorType first, IteratorType last, SAX* sax,\n
      \                         input_format_t format = input_format_t::json,\n                          const
      bool strict = true,\n                          const bool ignore_comments =
      false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23423,1
    - Dst: parser
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23426,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23426,1
    - Dst: detail::binary_reader<basic_json, decltype(ia), SAX>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23428,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23428,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' i'
    - sax
    argTypes:
    - detail::span_input_adapter
    - SAX*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23429
      start: 23418
    functionDepth: 1
    functionLinenumber: 23418
    functionLinenumberEnd: 23429
    functionName: sax_parse
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - get
    - parser
    - detail::binary_reader<basic_json, decltype(ia), SAX>
    - std::move
    linkageType: ''
    returnType: bool
    signature: "bool sax_parse(detail::span_input_adapter&& i, SAX* sax,\n                          input_format_t
      format = input_format_t::json,\n                          const bool strict
      = true,\n                          const bool ignore_comments = false)"
  - BBCount: 12
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23484
      start: 23459
    functionDepth: 0
    functionLinenumber: 23459
    functionLinenumberEnd: 23484
    functionName: type_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 60
    functionsReached: []
    linkageType: ''
    returnType: JSON_HEDLEY_RETURNS_NON_NULL
    signature: JSON_HEDLEY_RETURNS_NON_NULL * type_name() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - v
    argTypes:
    - value_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23502
      start: 23499
    functionDepth: 0
    functionLinenumber: 23499
    functionLinenumberEnd: 23502
    functionName: data
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 142
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void data(const value_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23507,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - cnt
    - ' val'
    argTypes:
    - size_type
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23508
      start: 23504
    functionDepth: 1
    functionLinenumber: 23504
    functionLinenumberEnd: 23508
    functionName: data
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 142
    functionsReached:
    - create
    linkageType: ''
    returnType: void
    signature: void data(size_type cnt, const basic_json& val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23510
      start: 23510
    functionDepth: 0
    functionLinenumber: 23510
    functionLinenumberEnd: 23510
    functionName: data
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 142
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void data() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23511
      start: 23511
    functionDepth: 0
    functionLinenumber: 23511
    functionLinenumberEnd: 23511
    functionName: data
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 142
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void data(data&&) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23512
      start: 23512
    functionDepth: 0
    functionLinenumber: 23512
    functionLinenumberEnd: 23512
    functionName: data
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 142
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void data(const data&) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23513
      start: 23513
    functionDepth: 0
    functionLinenumber: 23513
    functionLinenumberEnd: 23513
    functionName: '& operator=(data&&) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: data
    signature: data & operator=(data&&) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23514
      start: 23514
    functionDepth: 0
    functionLinenumber: 23514
    functionLinenumberEnd: 23514
    functionName: '& operator=(const data&) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: data
    signature: data & operator=(const data&) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23518,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23519
      start: 23516
    functionDepth: 6
    functionLinenumber: 23516
    functionLinenumberEnd: 23519
    functionName: ~data() noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - destroy
    linkageType: ''
    returnType: void
    signature: void ~data() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23550,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - o
    argTypes:
    - basic_json
    - detail::output_adapter<std::uint8_t>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23551
      start: 23548
    functionDepth: 0
    functionLinenumber: 23548
    functionLinenumberEnd: 23551
    functionName: to_cbor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - binary_writer<std::uint8_t>
    linkageType: ''
    returnType: void
    signature: void to_cbor(const basic_json& j, detail::output_adapter<std::uint8_t>
      o)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23557,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - o
    argTypes:
    - basic_json
    - detail::output_adapter<char>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23558
      start: 23555
    functionDepth: 0
    functionLinenumber: 23555
    functionLinenumberEnd: 23558
    functionName: to_cbor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - binary_writer<char>
    linkageType: ''
    returnType: void
    signature: void to_cbor(const basic_json& j, detail::output_adapter<char> o)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: to_msgpack
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23565,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23567
      start: 23562
    functionDepth: 1
    functionLinenumber: 23562
    functionLinenumberEnd: 23567
    functionName: to_msgpack
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - to_msgpack
    linkageType: ''
    returnType: std::vector<std::uint8_t>
    signature: std::vector<std::uint8_t> to_msgpack(const basic_json& j)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23573,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - o
    argTypes:
    - basic_json
    - detail::output_adapter<std::uint8_t>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23574
      start: 23571
    functionDepth: 0
    functionLinenumber: 23571
    functionLinenumberEnd: 23574
    functionName: to_msgpack
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - binary_writer<std::uint8_t>
    linkageType: ''
    returnType: void
    signature: void to_msgpack(const basic_json& j, detail::output_adapter<std::uint8_t>
      o)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23580,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - o
    argTypes:
    - basic_json
    - detail::output_adapter<char>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23581
      start: 23578
    functionDepth: 0
    functionLinenumber: 23578
    functionLinenumberEnd: 23581
    functionName: to_msgpack
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - binary_writer<char>
    linkageType: ''
    returnType: void
    signature: void to_msgpack(const basic_json& j, detail::output_adapter<char> o)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: to_ubjson
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23590,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23592
      start: 23585
    functionDepth: 1
    functionLinenumber: 23585
    functionLinenumberEnd: 23592
    functionName: to_ubjson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - to_ubjson
    linkageType: ''
    returnType: std::vector<std::uint8_t>
    signature: "std::vector<std::uint8_t> to_ubjson(const basic_json& j,\n            const
      bool use_size = false,\n            const bool use_type = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23599,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - o
    argTypes:
    - basic_json
    - detail::output_adapter<std::uint8_t>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23600
      start: 23596
    functionDepth: 0
    functionLinenumber: 23596
    functionLinenumberEnd: 23600
    functionName: to_ubjson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - binary_writer<std::uint8_t>
    linkageType: ''
    returnType: void
    signature: "void to_ubjson(const basic_json& j, detail::output_adapter<std::uint8_t>
      o,\n                          const bool use_size = false, const bool use_type
      = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23607,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - o
    argTypes:
    - basic_json
    - detail::output_adapter<char>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23608
      start: 23604
    functionDepth: 0
    functionLinenumber: 23604
    functionLinenumberEnd: 23608
    functionName: to_ubjson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - binary_writer<char>
    linkageType: ''
    returnType: void
    signature: "void to_ubjson(const basic_json& j, detail::output_adapter<char> o,\n
      \                         const bool use_size = false, const bool use_type =
      false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: to_bjdata
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23617,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23619
      start: 23612
    functionDepth: 1
    functionLinenumber: 23612
    functionLinenumberEnd: 23619
    functionName: to_bjdata
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - to_bjdata
    linkageType: ''
    returnType: std::vector<std::uint8_t>
    signature: "std::vector<std::uint8_t> to_bjdata(const basic_json& j,\n            const
      bool use_size = false,\n            const bool use_type = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23626,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - o
    argTypes:
    - basic_json
    - detail::output_adapter<std::uint8_t>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23627
      start: 23623
    functionDepth: 0
    functionLinenumber: 23623
    functionLinenumberEnd: 23627
    functionName: to_bjdata
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - binary_writer<std::uint8_t>
    linkageType: ''
    returnType: void
    signature: "void to_bjdata(const basic_json& j, detail::output_adapter<std::uint8_t>
      o,\n                          const bool use_size = false, const bool use_type
      = false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23634,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - o
    argTypes:
    - basic_json
    - detail::output_adapter<char>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23635
      start: 23631
    functionDepth: 0
    functionLinenumber: 23631
    functionLinenumberEnd: 23635
    functionName: to_bjdata
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - binary_writer<char>
    linkageType: ''
    returnType: void
    signature: "void to_bjdata(const basic_json& j, detail::output_adapter<char> o,\n
      \                         const bool use_size = false, const bool use_type =
      false)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: to_bson
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23642,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23644
      start: 23639
    functionDepth: 1
    functionLinenumber: 23639
    functionLinenumberEnd: 23644
    functionName: to_bson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - to_bson
    linkageType: ''
    returnType: std::vector<std::uint8_t>
    signature: std::vector<std::uint8_t> to_bson(const basic_json& j)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer<std::uint8_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23650,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - o
    argTypes:
    - basic_json
    - detail::output_adapter<std::uint8_t>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23651
      start: 23648
    functionDepth: 0
    functionLinenumber: 23648
    functionLinenumberEnd: 23651
    functionName: to_bson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - binary_writer<std::uint8_t>
    linkageType: ''
    returnType: void
    signature: void to_bson(const basic_json& j, detail::output_adapter<std::uint8_t>
      o)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: binary_writer<char>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23657,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' j'
    - o
    argTypes:
    - basic_json
    - detail::output_adapter<char>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23658
      start: 23655
    functionDepth: 0
    functionLinenumber: 23655
    functionLinenumberEnd: 23658
    functionName: to_bson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - binary_writer<char>
    linkageType: ''
    returnType: void
    signature: void to_bson(const basic_json& j, detail::output_adapter<char> o)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23671,1
    - Dst: std::forward<InputType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23671,1
    - Dst: binary_reader<decltype(ia)>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23672,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23672,1
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23673,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - InputType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23674
      start: 23663
    functionDepth: 2
    functionLinenumber: 23663
    functionLinenumberEnd: 23674
    functionName: from_cbor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    - std::move
    - file_input_adapter
    - std::forward<InputType>
    - binary_reader<decltype(ia)>
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: "JSON_HEDLEY_WARN_UNUSED_RESULT from_cbor(InputType&& i,\n                                const
      bool strict = true,\n                                const bool allow_exceptions
      = true,\n                                const cbor_tag_handler_t tag_handler
      = cbor_tag_handler_t::error)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23687,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23687,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23687,1
    - Dst: binary_reader<decltype(ia)>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23688,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23688,1
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23689,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23690
      start: 23679
    functionDepth: 2
    functionLinenumber: 23679
    functionLinenumberEnd: 23690
    functionName: from_cbor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    - binary_reader<decltype(ia)>
    - std::move
    - file_input_adapter
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: "JSON_HEDLEY_WARN_UNUSED_RESULT from_cbor(IteratorType first, IteratorType
      last,\n                                const bool strict = true,\n                                const
      bool allow_exceptions = true,\n                                const cbor_tag_handler_t
      tag_handler = cbor_tag_handler_t::error)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: from_cbor
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23700,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ptr
    - len
    argTypes:
    - T*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23701
      start: 23695
    functionDepth: 1
    functionLinenumber: 23695
    functionLinenumberEnd: 23701
    functionName: from_cbor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - from_cbor
    linkageType: ''
    returnType: basic_json
    signature: "basic_json from_cbor(const T* ptr, std::size_t len,\n                                const
      bool strict = true,\n                                const bool allow_exceptions
      = true,\n                                const cbor_tag_handler_t tag_handler
      = cbor_tag_handler_t::error)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23712,1
    - Dst: binary_reader<decltype(ia)>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23714,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23714,1
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23715,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - detail::span_input_adapter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23716
      start: 23705
    functionDepth: 1
    functionLinenumber: 23705
    functionLinenumberEnd: 23716
    functionName: from_cbor
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - get
    - binary_reader<decltype(ia)>
    - basic_json
    - std::move
    linkageType: ''
    returnType: basic_json
    signature: "basic_json from_cbor(detail::span_input_adapter&& i,\n                                const
      bool strict = true,\n                                const bool allow_exceptions
      = true,\n                                const cbor_tag_handler_t tag_handler
      = cbor_tag_handler_t::error)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23728,1
    - Dst: std::forward<InputType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23728,1
    - Dst: binary_reader<decltype(ia)>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23729,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23729,1
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23730,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - InputType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23731
      start: 23721
    functionDepth: 2
    functionLinenumber: 23721
    functionLinenumberEnd: 23731
    functionName: from_msgpack
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - basic_json
    - std::move
    - file_input_adapter
    - std::forward<InputType>
    - binary_reader<decltype(ia)>
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: "JSON_HEDLEY_WARN_UNUSED_RESULT from_msgpack(InputType&& i,\n                                   const
      bool strict = true,\n                                   const bool allow_exceptions
      = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23743,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23743,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23743,1
    - Dst: binary_reader<decltype(ia)>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23744,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23744,1
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23745,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23746
      start: 23736
    functionDepth: 2
    functionLinenumber: 23736
    functionLinenumberEnd: 23746
    functionName: from_msgpack
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 2
    functionsReached:
    - basic_json
    - binary_reader<decltype(ia)>
    - std::move
    - file_input_adapter
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: "JSON_HEDLEY_WARN_UNUSED_RESULT from_msgpack(IteratorType first, IteratorType
      last,\n                                   const bool strict = true,\n                                   const
      bool allow_exceptions = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: from_msgpack
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23755,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ptr
    - len
    argTypes:
    - T*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23756
      start: 23751
    functionDepth: 1
    functionLinenumber: 23751
    functionLinenumberEnd: 23756
    functionName: from_msgpack
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - from_msgpack
    linkageType: ''
    returnType: basic_json
    signature: "basic_json from_msgpack(const T* ptr, std::size_t len,\n                                   const
      bool strict = true,\n                                   const bool allow_exceptions
      = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23766,1
    - Dst: binary_reader<decltype(ia)>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23768,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23768,1
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23769,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - detail::span_input_adapter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23770
      start: 23760
    functionDepth: 1
    functionLinenumber: 23760
    functionLinenumberEnd: 23770
    functionName: from_msgpack
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 3
    functionsReached:
    - get
    - binary_reader<decltype(ia)>
    - basic_json
    - std::move
    linkageType: ''
    returnType: basic_json
    signature: "basic_json from_msgpack(detail::span_input_adapter&& i,\n                                   const
      bool strict = true,\n                                   const bool allow_exceptions
      = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23782,1
    - Dst: std::forward<InputType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23782,1
    - Dst: binary_reader<decltype(ia)>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23783,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23783,1
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23784,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - InputType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23785
      start: 23775
    functionDepth: 2
    functionLinenumber: 23775
    functionLinenumberEnd: 23785
    functionName: from_ubjson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    - std::move
    - file_input_adapter
    - std::forward<InputType>
    - binary_reader<decltype(ia)>
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: "JSON_HEDLEY_WARN_UNUSED_RESULT from_ubjson(InputType&& i,\n                                  const
      bool strict = true,\n                                  const bool allow_exceptions
      = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23797,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23797,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23797,1
    - Dst: binary_reader<decltype(ia)>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23798,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23798,1
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23799,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23800
      start: 23790
    functionDepth: 2
    functionLinenumber: 23790
    functionLinenumberEnd: 23800
    functionName: from_ubjson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    - binary_reader<decltype(ia)>
    - std::move
    - file_input_adapter
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: "JSON_HEDLEY_WARN_UNUSED_RESULT from_ubjson(IteratorType first, IteratorType
      last,\n                                  const bool strict = true,\n                                  const
      bool allow_exceptions = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: from_ubjson
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23809,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ptr
    - len
    argTypes:
    - T*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23810
      start: 23805
    functionDepth: 1
    functionLinenumber: 23805
    functionLinenumberEnd: 23810
    functionName: from_ubjson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - from_ubjson
    linkageType: ''
    returnType: basic_json
    signature: "basic_json from_ubjson(const T* ptr, std::size_t len,\n                                  const
      bool strict = true,\n                                  const bool allow_exceptions
      = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23820,1
    - Dst: binary_reader<decltype(ia)>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23822,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23822,1
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23823,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - detail::span_input_adapter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23824
      start: 23814
    functionDepth: 1
    functionLinenumber: 23814
    functionLinenumberEnd: 23824
    functionName: from_ubjson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - get
    - binary_reader<decltype(ia)>
    - basic_json
    - std::move
    linkageType: ''
    returnType: basic_json
    signature: "basic_json from_ubjson(detail::span_input_adapter&& i,\n                                  const
      bool strict = true,\n                                  const bool allow_exceptions
      = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23836,1
    - Dst: std::forward<InputType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23836,1
    - Dst: binary_reader<decltype(ia)>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23837,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23837,1
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23838,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - InputType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23839
      start: 23829
    functionDepth: 2
    functionLinenumber: 23829
    functionLinenumberEnd: 23839
    functionName: from_bjdata
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    - std::move
    - file_input_adapter
    - std::forward<InputType>
    - binary_reader<decltype(ia)>
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: "JSON_HEDLEY_WARN_UNUSED_RESULT from_bjdata(InputType&& i,\n                                  const
      bool strict = true,\n                                  const bool allow_exceptions
      = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23851,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23851,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23851,1
    - Dst: binary_reader<decltype(ia)>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23852,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23852,1
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23853,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23854
      start: 23844
    functionDepth: 2
    functionLinenumber: 23844
    functionLinenumberEnd: 23854
    functionName: from_bjdata
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    - binary_reader<decltype(ia)>
    - std::move
    - file_input_adapter
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: "JSON_HEDLEY_WARN_UNUSED_RESULT from_bjdata(IteratorType first, IteratorType
      last,\n                                  const bool strict = true,\n                                  const
      bool allow_exceptions = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23866,1
    - Dst: std::forward<InputType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23866,1
    - Dst: binary_reader<decltype(ia)>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23867,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23867,1
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23868,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - InputType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23869
      start: 23859
    functionDepth: 2
    functionLinenumber: 23859
    functionLinenumberEnd: 23869
    functionName: from_bson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    - std::move
    - file_input_adapter
    - std::forward<InputType>
    - binary_reader<decltype(ia)>
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: "JSON_HEDLEY_WARN_UNUSED_RESULT from_bson(InputType&& i,\n                                const
      bool strict = true,\n                                const bool allow_exceptions
      = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: file_input_adapter
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23881,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23881,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23881,1
    - Dst: binary_reader<decltype(ia)>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23882,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23882,1
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23883,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - IteratorType
    - IteratorType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23884
      start: 23874
    functionDepth: 2
    functionLinenumber: 23874
    functionLinenumberEnd: 23884
    functionName: from_bson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json
    - binary_reader<decltype(ia)>
    - std::move
    - file_input_adapter
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: "JSON_HEDLEY_WARN_UNUSED_RESULT from_bson(IteratorType first, IteratorType
      last,\n                                const bool strict = true,\n                                const
      bool allow_exceptions = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: from_bson
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23893,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ptr
    - len
    argTypes:
    - T*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23894
      start: 23889
    functionDepth: 1
    functionLinenumber: 23889
    functionLinenumberEnd: 23894
    functionName: from_bson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - from_bson
    linkageType: ''
    returnType: basic_json
    signature: "basic_json from_bson(const T* ptr, std::size_t len,\n                                const
      bool strict = true,\n                                const bool allow_exceptions
      = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23904,1
    - Dst: binary_reader<decltype(ia)>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23906,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23906,1
    - Dst: basic_json
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23907,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' i'
    argTypes:
    - detail::span_input_adapter
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23908
      start: 23898
    functionDepth: 1
    functionLinenumber: 23898
    functionLinenumberEnd: 23908
    functionName: from_bson
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - get
    - binary_reader<decltype(ia)>
    - basic_json
    - std::move
    linkageType: ''
    returnType: basic_json
    signature: "basic_json from_bson(detail::span_input_adapter&& i,\n                                const
      bool strict = true,\n                                const bool allow_exceptions
      = true)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_unchecked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23922,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ptr'
    argTypes:
    - json_pointer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23923
      start: 23920
    functionDepth: 5
    functionLinenumber: 23920
    functionLinenumberEnd: 23923
    functionName: operator[](const json_pointer& ptr)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get_unchecked
    linkageType: ''
    returnType: reference
    signature: reference operator[](const json_pointer& ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_unchecked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23929,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ptr'
    argTypes:
    - ::nlohmann::json_pointer<BasicJsonType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23930
      start: 23927
    functionDepth: 5
    functionLinenumber: 23927
    functionLinenumberEnd: 23930
    functionName: operator[](const ::nlohmann::json_pointer<BasicJsonType>& ptr)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get_unchecked
    linkageType: ''
    returnType: reference
    signature: reference operator[](const ::nlohmann::json_pointer<BasicJsonType>&
      ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_unchecked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23936,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ptr'
    argTypes:
    - json_pointer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23937
      start: 23934
    functionDepth: 5
    functionLinenumber: 23934
    functionLinenumberEnd: 23937
    functionName: operator[](const json_pointer& ptr) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get_unchecked
    linkageType: ''
    returnType: const_reference
    signature: const_reference operator[](const json_pointer& ptr) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_unchecked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23943,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ptr'
    argTypes:
    - ::nlohmann::json_pointer<BasicJsonType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23944
      start: 23941
    functionDepth: 5
    functionLinenumber: 23941
    functionLinenumberEnd: 23944
    functionName: operator[](const ::nlohmann::json_pointer<BasicJsonType>& ptr) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - get_unchecked
    linkageType: ''
    returnType: const_reference
    signature: const_reference operator[](const ::nlohmann::json_pointer<BasicJsonType>&
      ptr) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_checked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23950,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ptr'
    argTypes:
    - json_pointer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23951
      start: 23948
    functionDepth: 5
    functionLinenumber: 23948
    functionLinenumberEnd: 23951
    functionName: at
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 226
    functionsReached:
    - get_checked
    linkageType: ''
    returnType: reference
    signature: reference at(const json_pointer& ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_checked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23957,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ptr'
    argTypes:
    - ::nlohmann::json_pointer<BasicJsonType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23958
      start: 23955
    functionDepth: 5
    functionLinenumber: 23955
    functionLinenumberEnd: 23958
    functionName: at
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 226
    functionsReached:
    - get_checked
    linkageType: ''
    returnType: reference
    signature: reference at(const ::nlohmann::json_pointer<BasicJsonType>& ptr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_checked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23964,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ptr'
    argTypes:
    - json_pointer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23965
      start: 23962
    functionDepth: 5
    functionLinenumber: 23962
    functionLinenumberEnd: 23965
    functionName: at
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 226
    functionsReached:
    - get_checked
    linkageType: ''
    returnType: const_reference
    signature: const_reference at(const json_pointer& ptr) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_checked
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23971,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ptr'
    argTypes:
    - ::nlohmann::json_pointer<BasicJsonType>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23972
      start: 23969
    functionDepth: 5
    functionLinenumber: 23969
    functionLinenumberEnd: 23972
    functionName: at
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 226
    functionsReached:
    - get_checked
    linkageType: ''
    returnType: const_reference
    signature: const_reference at(const ::nlohmann::json_pointer<BasicJsonType>& ptr)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: flatten
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23979,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23981
      start: 23976
    functionDepth: 1
    functionLinenumber: 23976
    functionLinenumberEnd: 23981
    functionName: flatten
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - flatten
    linkageType: ''
    returnType: basic_json
    signature: basic_json flatten() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unflatten
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:23987,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23988
      start: 23985
    functionDepth: 1
    functionLinenumber: 23985
    functionLinenumberEnd: 23988
    functionName: unflatten
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - unflatten
    linkageType: ''
    returnType: basic_json
    signature: basic_json unflatten() const
  - BBCount: 37
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24041,1
    - Dst: top
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24048,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24051,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24055,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24056,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24058,1
    - Dst: push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24075,1
    - Dst: json_pointer::template array_index<basic_json_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24079,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24080,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24080,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24083,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24083,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24083,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24083,1
    - Dst: insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24087,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24087,1
    - Dst: static_cast<difference_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24087,1
    - Dst: JSON_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24101,1
    - Dst: back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24109,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24110,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24111,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24114,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24117,1
    - Dst: JSON_HEDLEY_LIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24118,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24118,1
    - Dst: erase
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24120,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24124,1
    - Dst: out_of_range::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24124,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24124,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24127,1
    - Dst: erase
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24130,1
    - Dst: json_pointer::template array_index<basic_json_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24130,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24135,1
    - Dst: is_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24135,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24137,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24137,1
    - Dst: m_data::m_value::object::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24149,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24152,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24155,1
    - Dst: m_data::m_value::object::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24155,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24158,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24158,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24158,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24162,1
    - Dst: auto::second::is_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24162,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24165,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24165,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24165,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24173,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24173,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24175,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24175,1
    - Dst: get_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24179,1
    - Dst: get_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24180,1
    - Dst: get_op
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24183,1
    - Dst: operation_add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24187,1
    - Dst: get_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24187,1
    - Dst: operation_remove
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24193,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24200,1
    - Dst: get_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24200,1
    - Dst: get_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24206,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24210,1
    - Dst: operation_remove
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24216,1
    - Dst: operation_add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24217,1
    - Dst: get_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24223,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24227,1
    - Dst: operation_add
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24232,1
    - Dst: at
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24243,1
    - Dst: get_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24243,1
    - Dst: JSON_HEDLEY_UNLIKELY
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24251,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24253,1
    - Dst: other_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24253,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24253,1
    - Dst: dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24253,1
    - Dst: JSON_THROW
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24264,1
    - Dst: parse_error::create
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24264,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24264,1
    CyclomaticComplexity: 29
    EdgeCount: 29
    ICount: 118
    argCount: 1
    argNames:
    - ' json_patch'
    argTypes:
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24267
      start: 24001
    functionDepth: 6
    functionLinenumber: 24001
    functionLinenumberEnd: 24267
    functionName: patch_inplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - begin
    - find
    - operation_remove
    - size
    - erase
    - m_data::m_value::object::end
    - top
    - JSON_THROW
    - empty
    - dump
    - json_pointer::template array_index<basic_json_t>
    - JSON_HEDLEY_UNLIKELY
    - pop_back
    - static_cast<difference_type>
    - back
    - parse_error::create
    - operation_add
    - JSON_ASSERT
    - is_array
    - out_of_range::create
    - concat
    - push_back
    - to_string
    - m_data::m_value::object::find
    - auto::second::is_string
    - end
    - at
    - other_error::create
    - get_value
    - get_op
    - JSON_HEDLEY_LIKELY
    - is_object
    - insert
    linkageType: ''
    returnType: void
    signature: void patch_inplace(const basic_json& json_patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: basic_json::patch_inplace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24275,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' json_patch'
    argTypes:
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24277
      start: 24272
    functionDepth: 7
    functionLinenumber: 24272
    functionLinenumberEnd: 24277
    functionName: patch
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - basic_json::patch_inplace
    linkageType: ''
    returnType: basic_json
    signature: basic_json patch(const basic_json& json_patch) const
  - BBCount: 16
    BranchProfiles: []
    Callsites:
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24294,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24294,1
    - Dst: basic_json::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24297,1
    - Dst: type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24304,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24310,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24310,1
    - Dst: diff
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24313,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24313,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24313,1
    - Dst: basic_json::insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24314,1
    - Dst: basic_json::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24314,1
    - Dst: auto::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24314,1
    - Dst: auto::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24314,1
    - Dst: static_cast<difference_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24322,1
    - Dst: basic_json::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24322,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24323,1
    - Dst: basic_json::insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24327,1
    - Dst: basic_json::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24327,1
    - Dst: object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24327,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24330,1
    - Dst: to_string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24330,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24336,1
    - Dst: basic_json::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24338,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24341,1
    - Dst: cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24353,1
    - Dst: cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24353,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24356,1
    - Dst: escape
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24356,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24356,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24358,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24358,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24358,1
    - Dst: diff
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24361,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24361,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24361,1
    - Dst: basic_json::insert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24362,1
    - Dst: basic_json::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24362,1
    - Dst: auto::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24362,1
    - Dst: auto::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24362,1
    - Dst: basic_json::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24367,1
    - Dst: object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24367,1
    - Dst: cbegin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24375,1
    - Dst: cend
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24375,1
    - Dst: find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24377,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24377,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24377,1
    - Dst: concat
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24380,1
    - Dst: escape
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24380,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24380,1
    - Dst: basic_json::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24381,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24384,1
    - Dst: basic_json::push_back
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24403,1
    CyclomaticComplexity: 14
    EdgeCount: 14
    ICount: 53
    argCount: 2
    argNames:
    - ' source'
    - ' target'
    argTypes:
    - basic_json
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24412
      start: 24281
    functionDepth: 4
    functionLinenumber: 24281
    functionLinenumberEnd: 24412
    functionName: diff
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - find
    - basic_json::push_back
    - basic_json::size
    - object
    - diff
    - size
    - cend
    - auto::key
    - basic_json::end
    - auto::end
    - cbegin
    - static_cast<difference_type>
    - type
    - concat
    - to_string
    - basic_json::begin
    - end
    - escape
    - auto::begin
    - auto::value
    - basic_json::insert
    linkageType: ''
    returnType: JSON_HEDLEY_WARN_UNUSED_RESULT
    signature: "JSON_HEDLEY_WARN_UNUSED_RESULT diff(const basic_json& source, const
      basic_json& target,\n                           const std::string& path = \"\")"
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24426,1
    - Dst: is_object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24428,1
    - Dst: object
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24430,1
    - Dst: begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24432,1
    - Dst: end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24432,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24434,1
    - Dst: erase
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24436,1
    - Dst: auto::key
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24436,1
    - Dst: merge_patch
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24440,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24440,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - ' apply_patch'
    argTypes:
    - basic_json
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24448
      start: 24424
    functionDepth: 6
    functionLinenumber: 24424
    functionLinenumberEnd: 24448
    functionName: merge_patch
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 1
    functionsReached:
    - begin
    - auto::value
    - merge_patch
    - object
    - is_object
    - erase
    - end
    - auto::key
    linkageType: ''
    returnType: void
    signature: void merge_patch(const basic_json& apply_patch)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: dump
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24458,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - NLOHMANN_BASIC_JSON_TPL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24459
      start: 24455
    functionDepth: 0
    functionLinenumber: 24455
    functionLinenumberEnd: 24459
    functionName: std::string to_string(const NLOHMANN_BASIC_JSON_TPL& j)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - dump
    linkageType: ''
    returnType: NLOHMANN_BASIC_JSON_TPL_DECLARATION
    signature: NLOHMANN_BASIC_JSON_TPL_DECLARATION std::string to_string(const NLOHMANN_BASIC_JSON_TPL&
      j)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: parser::parse
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24475,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - n
    argTypes:
    - char*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24476
      start: 24472
    functionDepth: 5
    functionLinenumber: 24472
    functionLinenumberEnd: 24476
    functionName: operator "" _json(const char* s, std::size_t n)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - parser::parse
    linkageType: ''
    returnType: nlohmann::json
    signature: nlohmann::json operator "" _json(const char* s, std::size_t n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: json_pointer
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24487,1
    - Dst: string
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24487,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - n
    argTypes:
    - char*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24488
      start: 24484
    functionDepth: 2
    functionLinenumber: 24484
    functionLinenumberEnd: 24488
    functionName: operator "" _json_pointer(const char* s, std::size_t n)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - json_pointer
    - string
    linkageType: ''
    returnType: nlohmann::json::json_pointer
    signature: nlohmann::json::json_pointer operator "" _json_pointer(const char*
      s, std::size_t n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hash
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24508,1
    - Dst: std::is_lt
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24524,1
    - Dst: ::nlohmann::detail::operator<
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24526,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24541,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24546
      start: 24492
    functionDepth: 2
    functionLinenumber: 24492
    functionLinenumberEnd: 24546
    functionName: namespace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - ::nlohmann::detail::operator<
    - std::is_lt
    - swap
    - hash
    linkageType: ''
    returnType: NLOHMANN_JSON_NAMESPACE_END
    signature: NLOHMANN_JSON_NAMESPACE_END namespace
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hash
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24508,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24510
      start: 24503
    functionDepth: 2
    functionLinenumber: 24503
    functionLinenumberEnd: 24510
    functionName: struct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 36
    functionsReached:
    - hash
    linkageType: ''
    returnType: NLOHMANN_BASIC_JSON_TPL_DECLARATION
    signature: NLOHMANN_BASIC_JSON_TPL_DECLARATION struct hash<nlohmann::NLOHMANN_BASIC_JSON_TPL>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hash
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24508,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' j'
    argTypes:
    - nlohmann::NLOHMANN_BASIC_JSON_TPL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24509
      start: 24506
    functionDepth: 2
    functionLinenumber: 24506
    functionLinenumberEnd: 24509
    functionName: operator()(const nlohmann::NLOHMANN_BASIC_JSON_TPL& j) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - hash
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t operator()(const nlohmann::NLOHMANN_BASIC_JSON_TPL& j)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::is_lt
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24524,1
    - Dst: ::nlohmann::detail::operator<
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24526,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - ::nlohmann::detail::value_t
    - ::nlohmann::detail::value_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24528
      start: 24520
    functionDepth: 0
    functionLinenumber: 24520
    functionLinenumberEnd: 24528
    functionName: "operator()(::nlohmann::detail::value_t lhs,\n                    ::nlohmann::detail::value_t
      rhs) const noexcept"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 0
    functionsReached:
    - ::nlohmann::detail::operator<
    - std::is_lt
    linkageType: ''
    returnType: bool
    signature: "bool operator()(::nlohmann::detail::value_t lhs,\n                    ::nlohmann::detail::value_t
      rhs) const noexcept"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp:24541,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' j1'
    - ' j2'
    argTypes:
    - nlohmann::NLOHMANN_BASIC_JSON_TPL
    - nlohmann::NLOHMANN_BASIC_JSON_TPL
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24542
      start: 24536
    functionDepth: 0
    functionLinenumber: 24536
    functionLinenumberEnd: 24542
    functionName: swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    functionUses: 24
    functionsReached:
    - swap
    linkageType: ''
    returnType: NLOHMANN_BASIC_JSON_TPL_DECLARATION
    signature: "NLOHMANN_BASIC_JSON_TPL_DECLARATION swap(nlohmann::NLOHMANN_BASIC_JSON_TPL&
      j1, nlohmann::NLOHMANN_BASIC_JSON_TPL& j2) noexcept(  // NOLINT(readability-inconsistent-declaration-parameter-name,
      cert-dcl58-cpp)\n    is_nothrow_move_constructible<nlohmann::NLOHMANN_BASIC_JSON_TPL>::value&&
      \                         // NOLINT(misc-redundant-expression,cppcoreguidelines-noexcept-swap,performance-noexcept-swap)\n
      \   is_nothrow_move_assignable<nlohmann::NLOHMANN_BASIC_JSON_TPL>::value)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 50
    functionName: in_place_type_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void in_place_type_t() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 61
    functionDepth: 0
    functionLinenumber: 61
    functionLinenumberEnd: 64
    functionName: bad_any_cast::what
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * what() const noexcept override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 74
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 74
    functionName: any::any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void any() noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:80,1
    - Dst: vtable::copy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:82,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' rhs'
    argTypes:
    - any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 77
    functionDepth: 0
    functionLinenumber: 77
    functionLinenumberEnd: 84
    functionName: any::any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - any::empty
    - vtable::copy
    linkageType: ''
    returnType: void
    signature: void any(const any& rhs)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:91,1
    - Dst: vtable::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:93,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - ' rhs'
    argTypes:
    - any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 96
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 96
    functionName: any::any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - any::empty
    - vtable::move
    linkageType: ''
    returnType: void
    signature: void any(any&& rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:101,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 102
      start: 99
    functionDepth: 2
    functionLinenumber: 99
    functionLinenumberEnd: 102
    functionName: ~any()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - clear
    linkageType: ''
    returnType: void
    signature: void ~any()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: any::construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:113,1
    - Dst: std::forward<ValueType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:113,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - ValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 109
    functionDepth: 0
    functionLinenumber: 109
    functionLinenumberEnd: 114
    functionName: any::any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - std::forward<ValueType>
    - any::construct
    linkageType: ''
    returnType: void
    signature: void any(ValueType&& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: any::emplace_construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:119,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:119,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 117
    functionDepth: 1
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionName: any::any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - any::emplace_construct
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void any(in_place_type_t<ValueType>, Args&&... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: any::emplace_construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:125,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:125,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 126
      start: 123
    functionDepth: 1
    functionLinenumber: 123
    functionLinenumberEnd: 126
    functionName: any::any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - any::emplace_construct
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void any(in_place_type_t<ValueType>, std::initializer_list<U> il, Args&&...
      args)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' rhs'
    argTypes:
    - any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 132
    functionName: '& operator=(const any& rhs)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - any
    linkageType: ''
    returnType: any
    signature: any & operator=(const any& rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:140,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' rhs'
    argTypes:
    - any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 138
    functionDepth: 0
    functionLinenumber: 138
    functionLinenumberEnd: 142
    functionName: '& operator=(any&& rhs) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: any
    signature: any & operator=(any&& rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:153,1
    - Dst: std::forward<ValueType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:153,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - ValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 155
    functionName: '& operator=(ValueType&& value)'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - std::forward<ValueType>
    - any
    linkageType: ''
    returnType: any
    signature: any & operator=(ValueType&& value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: any::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:160,1
    - Dst: any::vtable::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:162,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 158
    functionDepth: 6
    functionLinenumber: 158
    functionLinenumberEnd: 165
    functionName: any::clear
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - any::empty
    - any::vtable::destroy
    linkageType: ''
    returnType: void
    signature: void clear() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 171
      start: 168
    functionDepth: 0
    functionLinenumber: 168
    functionLinenumberEnd: 171
    functionName: any::empty
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool empty() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:177,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:177,1
    - Dst: vtable::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:177,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 178
      start: 175
    functionDepth: 2
    functionLinenumber: 175
    functionLinenumberEnd: 178
    functionName: '& type() const noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - empty
    - typeid
    - vtable::type
    linkageType: ''
    returnType: std::type_info
    signature: std::type_info & type() const noexcept
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: any::vtable::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:192,1
    - Dst: any::vtable::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:200,1
    - Dst: any::vtable::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:207,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 15
    argCount: 1
    argNames:
    - ' rhs'
    argTypes:
    - any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 182
    functionDepth: 0
    functionLinenumber: 182
    functionLinenumberEnd: 209
    functionName: any::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - any::vtable::move
    - any::vtable::swap
    linkageType: ''
    returnType: void
    signature: void swap(any& rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 253
    functionDepth: 0
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionName: '& type() noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - typeid
    linkageType: ''
    returnType: std::type_info
    signature: std::type_info & type() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<T*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' storage'
    argTypes:
    - storage_union
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 259
    functionDepth: 0
    functionLinenumber: 259
    functionLinenumberEnd: 263
    functionName: any::destroy
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - reinterpret_cast<T*>
    linkageType: ''
    returnType: void
    signature: void destroy(storage_union& storage) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<const T*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:267,1
    - Dst: T::T
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' src'
    - ' dest'
    argTypes:
    - storage_union
    - storage_union
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 268
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 268
    functionName: any::copy
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - T::T
    - reinterpret_cast<const T*>
    linkageType: ''
    returnType: void
    signature: void copy(const storage_union& src, storage_union& dest)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' src'
    - ' dest'
    argTypes:
    - storage_union
    - storage_union
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 270
    functionDepth: 0
    functionLinenumber: 270
    functionLinenumberEnd: 274
    functionName: any::move
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void move(storage_union& src, storage_union& dest) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: any::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:279,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - storage_union
    - storage_union
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 280
      start: 276
    functionDepth: 0
    functionLinenumber: 276
    functionLinenumberEnd: 280
    functionName: any::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 1
    functionsReached:
    - any::swap
    linkageType: ''
    returnType: void
    signature: void swap(storage_union& lhs, storage_union& rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 291
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 291
    functionName: '& type() noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - typeid
    linkageType: ''
    returnType: std::type_info
    signature: std::type_info & type() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<T*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:296,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' storage'
    argTypes:
    - storage_union
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 297
    functionName: any::destroy
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - reinterpret_cast<T*>
    linkageType: ''
    returnType: void
    signature: void destroy(storage_union& storage) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<const T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:301,1
    - Dst: T::T
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:301,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' src'
    - ' dest'
    argTypes:
    - storage_union
    - storage_union
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 302
      start: 299
    functionDepth: 0
    functionLinenumber: 299
    functionLinenumberEnd: 302
    functionName: any::copy
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - T::T
    - reinterpret_cast<const T&>
    linkageType: ''
    returnType: void
    signature: void copy(const storage_union& src, storage_union& dest)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: any::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:308,1
    - Dst: reinterpret_cast<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:308,1
    - Dst: T::T
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:308,1
    - Dst: any::destroy
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:309,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' src'
    - ' dest'
    argTypes:
    - storage_union
    - storage_union
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 310
      start: 304
    functionDepth: 1
    functionLinenumber: 304
    functionLinenumberEnd: 310
    functionName: any::move
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 1
    functionsReached:
    - T::T
    - any::destroy
    - reinterpret_cast<T&>
    - any::move
    linkageType: ''
    returnType: void
    signature: void move(storage_union& src, storage_union& dest) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: any::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:315,1
    - Dst: any::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:316,1
    - Dst: any::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - storage_union
    - storage_union
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 318
      start: 312
    functionDepth: 1
    functionLinenumber: 312
    functionLinenumberEnd: 318
    functionName: any::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 1
    functionsReached:
    - any::move
    linkageType: ''
    returnType: void
    signature: void swap(storage_union& lhs, storage_union& rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 344
      start: 332
    functionDepth: 0
    functionLinenumber: 332
    functionLinenumberEnd: 344
    functionName: any::vtable_for_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: vtable_type
    signature: vtable_type * vtable_for_type()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: any::is_same
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:356,1
    - Dst: any::type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:356,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' t'
    argTypes:
    - std::type_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 357
      start: 354
    functionDepth: 1
    functionLinenumber: 354
    functionLinenumberEnd: 357
    functionName: any::is_typed
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - any::is_same
    - any::type
    linkageType: ''
    returnType: bool
    signature: bool is_typed(const std::type_info& t) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ' a'
    - ' b'
    argTypes:
    - std::type_info
    - std::type_info
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 374
      start: 367
    functionDepth: 0
    functionLinenumber: 367
    functionLinenumberEnd: 374
    functionName: any::is_same
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_same(const std::type_info& a, const std::type_info& b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<const T*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:382,1
    - Dst: reinterpret_cast<const T*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 379
    functionDepth: 0
    functionLinenumber: 379
    functionLinenumberEnd: 384
    functionName: any::cast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - reinterpret_cast<const T*>
    linkageType: ''
    returnType: T
    signature: T * cast() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<T*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:391,1
    - Dst: reinterpret_cast<T*>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 393
      start: 388
    functionDepth: 0
    functionLinenumber: 388
    functionLinenumberEnd: 393
    functionName: any::cast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - reinterpret_cast<T*>
    linkageType: ''
    returnType: T
    signature: T * cast() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:402,1
    - Dst: T::T
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:402,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 400
    functionDepth: 0
    functionLinenumber: 400
    functionLinenumberEnd: 403
    functionName: any::do_emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - T::T
    - std::forward<Args>
    linkageType: ''
    returnType: typename std::enable_if<requires_allocation<T>::value>::type
    signature: typename std::enable_if<requires_allocation<T>::value>::type do_emplace(Args&&...
      args)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:408,1
    - Dst: T::T
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:408,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 406
    functionDepth: 0
    functionLinenumber: 406
    functionLinenumberEnd: 409
    functionName: any::do_emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - T::T
    - std::forward<Args>
    linkageType: ''
    returnType: typename std::enable_if<!requires_allocation<T>::value>::type
    signature: typename std::enable_if<!requires_allocation<T>::value>::type do_emplace(Args&&...
      args)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: any::vtable_for_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:416,1
    - Dst: any::do_emplace
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:418,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:418,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 419
      start: 412
    functionDepth: 1
    functionLinenumber: 412
    functionLinenumberEnd: 419
    functionName: any::emplace_construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 2
    functionsReached:
    - std::forward<Args>
    - any::vtable_for_type
    - any::do_emplace
    linkageType: ''
    returnType: void
    signature: void emplace_construct(Args&&... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<ValueType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:425,1
    - Dst: T::T
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:425,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - ValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 422
    functionDepth: 0
    functionLinenumber: 422
    functionLinenumberEnd: 426
    functionName: any::do_construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - std::forward<ValueType>
    - T::T
    linkageType: ''
    returnType: typename std::enable_if<requires_allocation<T>::value>::type
    signature: typename std::enable_if<requires_allocation<T>::value>::type do_construct(ValueType&&
      value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<ValueType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:432,1
    - Dst: T::T
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:432,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - ValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 433
      start: 429
    functionDepth: 0
    functionLinenumber: 429
    functionLinenumberEnd: 433
    functionName: any::do_construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - std::forward<ValueType>
    - T::T
    linkageType: ''
    returnType: typename std::enable_if<!requires_allocation<T>::value>::type
    signature: typename std::enable_if<!requires_allocation<T>::value>::type do_construct(ValueType&&
      value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: any::vtable_for_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:442,1
    - Dst: any::do_construct
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:444,1
    - Dst: std::forward<ValueType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:444,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - ValueType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 438
    functionDepth: 1
    functionLinenumber: 438
    functionLinenumberEnd: 445
    functionName: any::construct
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 1
    functionsReached:
    - std::forward<ValueType>
    - any::do_construct
    - any::vtable_for_type
    linkageType: ''
    returnType: void
    signature: void construct(ValueType&& value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:455,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - typename std::remove_reference<ValueType>::type*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 453
    functionDepth: 0
    functionLinenumber: 453
    functionLinenumberEnd: 456
    functionName: detail::any_cast_move_if_true
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: ValueType
    signature: ValueType any_cast_move_if_true(typename std::remove_reference<ValueType>::type*
      p, std::true_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - typename std::remove_reference<ValueType>::type*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 459
    functionDepth: 0
    functionLinenumber: 459
    functionLinenumberEnd: 462
    functionName: detail::any_cast_move_if_true
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ValueType
    signature: ValueType any_cast_move_if_true(typename std::remove_reference<ValueType>::type*
      p, std::false_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:455,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - typename std::remove_reference<ValueType>::type*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 456
      start: 453
    functionDepth: 0
    functionLinenumber: 453
    functionLinenumberEnd: 456
    functionName: detail::any_cast_move_if_true
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: ValueType
    signature: ValueType any_cast_move_if_true(typename std::remove_reference<ValueType>::type*
      p, std::true_type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - typename std::remove_reference<ValueType>::type*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 462
      start: 459
    functionDepth: 0
    functionLinenumber: 459
    functionLinenumberEnd: 462
    functionName: detail::any_cast_move_if_true
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ValueType
    signature: ValueType any_cast_move_if_true(typename std::remove_reference<ValueType>::type*
      p, std::false_type)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: any_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:469,1
    - Dst: bad_any_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:471,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' operand'
    argTypes:
    - any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 474
      start: 467
    functionDepth: 1
    functionLinenumber: 467
    functionLinenumberEnd: 474
    functionName: any_cast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 1
    functionsReached:
    - bad_any_cast
    - any_cast
    linkageType: ''
    returnType: ValueType
    signature: ValueType any_cast(const any& operand)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: any_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:480,1
    - Dst: bad_any_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:482,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' operand'
    argTypes:
    - any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 478
    functionDepth: 1
    functionLinenumber: 478
    functionLinenumberEnd: 485
    functionName: any_cast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 2
    functionsReached:
    - bad_any_cast
    - any_cast
    linkageType: ''
    returnType: ValueType
    signature: ValueType any_cast(any& operand)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: any_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:499,1
    - Dst: bad_any_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:501,1
    - Dst: detail::any_cast_move_if_true<ValueType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:503,1
    - Dst: can_move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:503,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 4
    argCount: 1
    argNames:
    - ' operand'
    argTypes:
    - any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 493
    functionDepth: 1
    functionLinenumber: 493
    functionLinenumberEnd: 504
    functionName: any_cast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 3
    functionsReached:
    - bad_any_cast
    - any_cast
    - detail::any_cast_move_if_true<ValueType>
    - can_move
    linkageType: ''
    returnType: ValueType
    signature: ValueType any_cast(any&& operand)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: any*::is_typed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:514,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:514,1
    - Dst: any::vtable_for_type<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:516,1
    - Dst: any*::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:518,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    argCount: 1
    argNames:
    - operand
    argTypes:
    - any*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 521
      start: 509
    functionDepth: 0
    functionLinenumber: 509
    functionLinenumberEnd: 521
    functionName: any_cast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 3
    functionsReached:
    - any*::cast
    - any::vtable_for_type<T>
    - any*::is_typed
    - typeid
    linkageType: ''
    returnType: ValueType
    signature: ValueType * any_cast(const any* operand) noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: any*::is_typed
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:531,1
    - Dst: typeid
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:531,1
    - Dst: any::vtable_for_type<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:533,1
    - Dst: any*::cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:535,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:542,1
    - Dst: any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:548,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:548,1
    - Dst: any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:554,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:554,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 11
    argCount: 1
    argNames:
    - operand
    argTypes:
    - any*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 526
    functionDepth: 0
    functionLinenumber: 526
    functionLinenumberEnd: 556
    functionName: any_cast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 3
    functionsReached:
    - any*::is_typed
    - typeid
    - std::forward<Args>
    - any*::cast
    - any
    - swap
    - any::vtable_for_type<T>
    linkageType: ''
    returnType: ValueType
    signature: ValueType * any_cast(any* operand) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:542,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - ' rhs'
    argTypes:
    - any
    - any
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 543
      start: 540
    functionDepth: 0
    functionLinenumber: 540
    functionLinenumberEnd: 543
    functionName: swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 28
    functionsReached:
    - swap
    linkageType: ''
    returnType: void
    signature: void swap(any& lhs, any& rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:548,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 546
    functionDepth: 0
    functionLinenumber: 546
    functionLinenumberEnd: 549
    functionName: make_any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - any
    - std::forward<Args>
    linkageType: ''
    returnType: any
    signature: any make_any(Args&&... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: any
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:554,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp:554,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 555
    functionName: make_any
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    functionUses: 0
    functionsReached:
    - any
    - std::forward<Args>
    linkageType: ''
    returnType: any
    signature: any make_any(std::initializer_list<U> il, Args&&... args)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 63
    functionName: MAGIC_ENUM_ASSERT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_ASSERT(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: MAGIC_ENUM_ASSERT
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_ASSERT(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - V
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 114
    functionDepth: 0
    functionLinenumber: 114
    functionLinenumberEnd: 115
    functionName: MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_GET_ENUM_NAME_BUILTIN(V)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 116
    functionName: MAGIC_ENUM_GET_TYPE_NAME_BUILTIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_GET_TYPE_NAME_BUILTIN(T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - V
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 118
    functionName: MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_GET_ENUM_NAME_BUILTIN(V)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 119
      start: 118
    functionDepth: 0
    functionLinenumber: 118
    functionLinenumberEnd: 119
    functionName: MAGIC_ENUM_GET_TYPE_NAME_BUILTIN
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_GET_TYPE_NAME_BUILTIN(T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - srt
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 187
    functionName: magic_enum::customize::customize_t::customize_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void customize_t(string_view srt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - srt
    argTypes:
    - char_type*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 188
    functionName: magic_enum::customize::customize_t::customize_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void customize_t(const char_type* srt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tag
    argTypes:
    - detail::customize_tag
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: magic_enum::customize::customize_t::customize_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - MAGIC_ENUM_ASSERT
    linkageType: ''
    returnType: void
    signature: void customize_t(detail::customize_tag tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: magic_enum::customize::enum_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: customize_t
    signature: customize_t enum_name(E) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionName: magic_enum::customize::enum_type_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: customize_t
    signature: customize_t enum_type_name() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - srt
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 187
    functionName: magic_enum::customize::customize_t::customize_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void customize_t(string_view srt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - srt
    argTypes:
    - char_type*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 188
    functionName: magic_enum::customize::customize_t::customize_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void customize_t(const char_type* srt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tag
    argTypes:
    - detail::customize_tag
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: magic_enum::customize::customize_t::customize_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - MAGIC_ENUM_ASSERT
    linkageType: ''
    returnType: void
    signature: void customize_t(detail::customize_tag tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: magic_enum::customize::enum_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: customize_t
    signature: customize_t enum_name(E) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionName: magic_enum::customize::enum_type_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: customize_t
    signature: customize_t enum_type_name() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - str_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionName: magic_enum::detail::static_str::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - MAGIC_ENUM_ASSERT
    linkageType: ''
    returnType: void
    signature: void static_str(str_view str) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string_view::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:259,1
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:260,1
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 261
    functionName: magic_enum::detail::static_str::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - MAGIC_ENUM_ASSERT
    - string_view::data
    - string_view::size
    linkageType: ''
    returnType: void
    signature: void static_str(string_view str) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 263
    functionName: magic_enum::detail::static_str::data
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char_type
    signature: char_type * data() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 265
    functionName: magic_enum::detail::static_str::size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::uint16_t
    signature: std::uint16_t size() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:267,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 267
    functionName: operator string_view() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - data
    - size
    linkageType: ''
    returnType: void
    signature: void operator string_view() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:271,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 271
    functionName: magic_enum::detail::static_str::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char_type>
    linkageType: ''
    returnType: void
    signature: void static_str(const char* str, std::integer_sequence<std::uint16_t,
      I...>) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - str
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 274
    functionName: magic_enum::detail::static_str::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char_type>
    linkageType: ''
    returnType: void
    signature: void static_str(string_view str, std::integer_sequence<std::uint16_t,
      I...>) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 282
    functionName: magic_enum::detail::static_str<0>::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void static_str()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 284
    functionName: magic_enum::detail::static_str<0>::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void static_str(str_view) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 286
    functionName: magic_enum::detail::static_str<0>::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void static_str(string_view) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 288
    functionName: magic_enum::detail::static_str<0>::data
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char_type
    signature: char_type * data() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 290
    functionName: magic_enum::detail::static_str<0>::size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::uint16_t
    signature: std::uint16_t size() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 292
    functionName: operator string_view() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator string_view() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 299
    functionName: magic_enum::detail::case_insensitive::to_lower
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char_type>
    linkageType: ''
    returnType: char_type
    signature: char_type to_lower(char_type c) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: to_lower
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:304,1
    - Dst: to_lower
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - L
    - R
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 305
    functionName: operator()(L lhs, R rhs) const noexcept -> std::enable_if_t<std::is_same_v<std::decay_t<L>,
      char_type> && std::is_same_v<std::decay_t<R>, char_type>, bool>
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - to_lower
    linkageType: ''
    returnType: auto
    signature: auto operator()(L lhs, R rhs) const noexcept -> std::enable_if_t<std::is_same_v<std::decay_t<L>,
      char_type> && std::is_same_v<std::decay_t<R>, char_type>, bool>
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:318,1
    - Dst: string_view::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:326,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 11
    argCount: 2
    argNames:
    - str
    - c
    argTypes:
    - string_view
    - char_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 308
    functionDepth: 3
    functionLinenumber: 308
    functionLinenumberEnd: 328
    functionName: magic_enum::detail::find
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - string_view::size
    - string_view::find
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t find(string_view str, char_type c) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 331
    functionDepth: 0
    functionLinenumber: 331
    functionLinenumberEnd: 334
    functionName: magic_enum::detail::is_default_predicate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_default_predicate() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::is_default_predicate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:338,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 337
    functionDepth: 1
    functionLinenumber: 337
    functionLinenumberEnd: 340
    functionName: magic_enum::detail::is_nothrow_invocable
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::detail::is_default_predicate
    linkageType: ''
    returnType: bool
    signature: bool is_nothrow_invocable()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::is_nothrow_invocable
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:343,1
    - Dst: magic_enum::detail::is_default_predicate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:352,1
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:353,1
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:353,1
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:357,1
    - Dst: p
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:359,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 3
    argNames:
    - lhs
    - rhs
    - ' p'
    argTypes:
    - string_view
    - string_view
    - BinaryPredicate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 343
    functionDepth: 2
    functionLinenumber: 343
    functionLinenumberEnd: 368
    functionName: magic_enum::detail::cmp_equal
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - p
    - magic_enum::detail::is_default_predicate
    - string_view::size
    - magic_enum::detail::is_nothrow_invocable
    linkageType: ''
    returnType: bool
    signature: bool cmp_equal(string_view lhs, string_view rhs, [[maybe_unused]] BinaryPredicate&&
      p) noexcept(is_nothrow_invocable<BinaryPredicate>())
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<R>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:378,1
    - Dst: static_cast<L>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:380,1
    - Dst: lhs < static_cast<std::make_unsigned_t<R>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:383,1
    - Dst: lhs < 0 || static_cast<std::make_unsigned_t<L>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:386,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - L
    - R
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 388
    functionName: magic_enum::detail::cmp_less
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<R>
    - lhs < static_cast<std::make_unsigned_t<R>>
    - static_cast<L>
    - lhs < 0 || static_cast<std::make_unsigned_t<L>>
    linkageType: ''
    returnType: bool
    signature: bool cmp_less(L lhs, R rhs) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:395,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - value
    argTypes:
    - I
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 391
    functionDepth: 1
    functionLinenumber: 391
    functionLinenumberEnd: 402
    functionName: magic_enum::detail::log2
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - MAGIC_ENUM_ASSERT
    linkageType: ''
    returnType: I
    signature: I log2(I value) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - (a)
    argTypes:
    - T[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 408
    functionDepth: 0
    functionLinenumber: 408
    functionLinenumberEnd: 410
    functionName: magic_enum::detail::to_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::array<std::remove_cv_t<T>, N>
    signature: std::array<std::remove_cv_t<T>, N> to_array(T (&a)[N], std::index_sequence<I...>)
      noexcept
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_GET_TYPE_NAME_BUILTIN
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:422,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:423,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 469
    functionName: magic_enum::detail::n
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - MAGIC_ENUM_GET_TYPE_NAME_BUILTIN
    - concat_length
    linkageType: ''
    returnType: auto
    signature: auto n() noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: customize::enum_type_name<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:473,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:477,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:478,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:482,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 472
    functionDepth: 2
    functionLinenumber: 472
    functionLinenumberEnd: 487
    functionName: magic_enum::detail::type_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - auto::empty
    - magic_enum::detail::n
    - customize::enum_type_name<E>
    - auto::size
    linkageType: ''
    returnType: auto
    signature: auto type_name() noexcept
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:498,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:499,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 493
    functionDepth: 1
    functionLinenumber: 493
    functionLinenumberEnd: 557
    functionName: magic_enum::detail::n
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
    - concat_length
    linkageType: ''
    returnType: auto
    signature: auto n() noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:569,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:570,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 565
    functionDepth: 1
    functionLinenumber: 565
    functionLinenumberEnd: 592
    functionName: magic_enum::detail::n
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
    - concat_length
    linkageType: ''
    returnType: auto
    signature: auto n() noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: customize::enum_name<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:597,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:601,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:602,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:607,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:609,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 596
    functionDepth: 2
    functionLinenumber: 596
    functionLinenumberEnd: 615
    functionName: magic_enum::detail::enum_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - customize::enum_name<E>
    - magic_enum::detail::n
    - auto::empty
    - auto::size
    linkageType: ''
    returnType: auto
    signature: auto enum_name() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_bit_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:624,1
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:626,1
    - Dst: customize::enum_name<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:628,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:632,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:633,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:636,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:638,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 621
    functionDepth: 2
    functionLinenumber: 621
    functionLinenumberEnd: 643
    functionName: magic_enum::detail::is_valid
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<E>
    - __builtin_bit_cast
    - auto::empty
    - magic_enum::detail::n
    - customize::enum_name<E>
    - auto::size
    linkageType: ''
    returnType: bool
    signature: bool is_valid() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:655,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:657,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:657,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:657,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:659,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:659,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 651
    functionDepth: 0
    functionLinenumber: 651
    functionLinenumberEnd: 661
    functionName: magic_enum::detail::ualue
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<U>
    - static_cast<int>
    linkageType: ''
    returnType: U
    signature: U ualue(std::size_t i) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:665,1
    - Dst: magic_enum::detail::ualue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:665,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 664
    functionDepth: 1
    functionLinenumber: 664
    functionLinenumberEnd: 666
    functionName: magic_enum::detail::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::detail::ualue
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E value(std::size_t i) noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::cmp_less
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:676,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 682
      start: 669
    functionDepth: 1
    functionLinenumber: 669
    functionLinenumberEnd: 682
    functionName: magic_enum::detail::reflected_min
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 11
    functionsReached:
    - magic_enum::detail::cmp_less
    linkageType: ''
    returnType: int
    signature: int reflected_min() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::cmp_less
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:692,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 685
    functionDepth: 1
    functionLinenumber: 685
    functionLinenumberEnd: 698
    functionName: magic_enum::detail::reflected_max
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 18
    functionsReached:
    - magic_enum::detail::cmp_less
    linkageType: ''
    returnType: int
    signature: int reflected_max() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 700
    functionDepth: 0
    functionLinenumber: 700
    functionLinenumberEnd: 709
    functionName: MAGIC_ENUM_FOR_EACH_256
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_FOR_EACH_256(T)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_FOR_EACH_256
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:720,1
    - Dst: magic_enum::detail::valid_count
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:723,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - valid
    - ' count'
    argTypes:
    - bool*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 711
    functionDepth: 1
    functionLinenumber: 711
    functionLinenumberEnd: 726
    functionName: magic_enum::detail::valid_count
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - MAGIC_ENUM_FOR_EACH_256
    - magic_enum::detail::valid_count
    linkageType: ''
    returnType: void
    signature: void valid_count(bool* valid, std::size_t& count) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - O
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 712
    functionDepth: 0
    functionLinenumber: 712
    functionLinenumberEnd: 719
    functionName: MAGIC_ENUM_V
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_V(O)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::valid_count
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:737,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 739
      start: 735
    functionDepth: 1
    functionLinenumber: 735
    functionLinenumberEnd: 739
    functionName: magic_enum::detail::valid_count
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 2
    functionsReached:
    - magic_enum::detail::valid_count
    linkageType: ''
    returnType: auto
    signature: auto valid_count() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::valid_count
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:743,1
    - Dst: magic_enum::detail::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:753,1
    - Dst: magic_enum::detail::to_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:759,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 764
      start: 742
    functionDepth: 2
    functionLinenumber: 742
    functionLinenumberEnd: 764
    functionName: magic_enum::detail::values
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::detail::value
    - magic_enum::detail::valid_count
    - magic_enum::detail::to_array
    linkageType: ''
    returnType: auto
    signature: auto values() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::reflected_min
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:768,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:769,1
    - Dst: magic_enum::detail::values
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:773,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 767
    functionDepth: 2
    functionLinenumber: 767
    functionLinenumberEnd: 774
    functionName: magic_enum::detail::values
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - magic_enum::detail::reflected_max
    - magic_enum::detail::values
    - magic_enum::detail::reflected_min
    linkageType: ''
    returnType: auto
    signature: auto values() noexcept
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::values
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:784,1
    - Dst: magic_enum::detail::values
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:785,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:786,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:786,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:786,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:789,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:790,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 777
    functionDepth: 3
    functionLinenumber: 777
    functionLinenumberEnd: 800
    functionName: magic_enum::detail::subtype
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::detail::values
    - static_cast<U>
    - auto::size
    linkageType: ''
    returnType: enum_subtype
    signature: enum_subtype subtype(std::true_type) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 803
    functionDepth: 0
    functionLinenumber: 803
    functionLinenumberEnd: 806
    functionName: magic_enum::detail::subtype
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: enum_subtype
    signature: enum_subtype subtype(std::false_type) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 827
    functionDepth: 0
    functionLinenumber: 827
    functionLinenumberEnd: 830
    functionName: magic_enum::detail::names
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto names(std::index_sequence<I...>) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 842
      start: 839
    functionDepth: 0
    functionLinenumber: 839
    functionLinenumberEnd: 842
    functionName: magic_enum::detail::entries
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto entries(std::index_sequence<I...>) noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::log2
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:857,1
    - Dst: magic_enum::detail::log2
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:858,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 863
      start: 851
    functionDepth: 2
    functionLinenumber: 851
    functionLinenumberEnd: 863
    functionName: magic_enum::detail::is_sparse
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::detail::log2
    linkageType: ''
    returnType: bool
    signature: bool is_sparse() noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:922,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:924,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - value
    argTypes:
    - Value
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 926
      start: 919
    functionDepth: 0
    functionLinenumber: 919
    functionLinenumberEnd: 926
    functionName: operator()(Value value) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<U>
    - static_cast<std::size_t>
    linkageType: ''
    returnType: auto
    signature: auto operator()(Value value) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:967,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:969,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - value
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 966
    functionDepth: 0
    functionLinenumber: 966
    functionLinenumberEnd: 972
    functionName: operator()(string_view value) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<std::uint32_t>
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t operator()(string_view value) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:976,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:978,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:978,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:980,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - value
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 975
    functionDepth: 0
    functionLinenumber: 975
    functionLinenumberEnd: 981
    functionName: operator()(string_view value) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<std::uint64_t>
    - static_cast<std::uint32_t>
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t operator()(string_view value) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:991,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:995,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:998,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1000,1
    - Dst: static_cast<std::ptrdiff_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1000,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1001,1
    - Dst: static_cast<std::ptrdiff_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1001,1
    - Dst: hash_v<Hash>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1003,1
    - Dst: std::array::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1008,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1012,1
    - Dst: std::array::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1014,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - Page
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1022
      start: 989
    functionDepth: 3
    functionLinenumber: 989
    functionLinenumberEnd: 1022
    functionName: magic_enum::detail::calculate_cases
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<std::ptrdiff_t>
    - std::array::end
    - hash_v<Hash>
    - std::array::begin
    - std::array::size
    - static_cast<std::size_t>
    linkageType: ''
    returnType: auto
    signature: auto calculate_cases(std::size_t Page) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<F>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1027,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1027,1
    - Dst: static_cast<R>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1029,1
    - Dst: std::forward<F>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1029,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1029,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1031
      start: 1025
    functionDepth: 0
    functionLinenumber: 1025
    functionLinenumberEnd: 1031
    functionName: magic_enum::detail::invoke_r
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<R>
    - std::forward<F>
    - std::forward<Args>
    linkageType: ''
    returnType: R
    signature: R invoke_r(F&& f, Args&&... args) noexcept(std::is_nothrow_invocable_r_v<R,
      F, Args...>)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1048,1
    - Dst: hash_v<Hash>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1051,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1065
      start: 1045
    functionDepth: 1
    functionLinenumber: 1045
    functionLinenumberEnd: 1065
    functionName: magic_enum::detail::has_duplicate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - hash_v<Hash>
    - size
    linkageType: ''
    returnType: bool
    signature: bool has_duplicate() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1088
      start: 1067
    functionDepth: 0
    functionLinenumber: 1067
    functionLinenumberEnd: 1088
    functionName: MAGIC_ENUM_CASE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_CASE(val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::has_duplicate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1103,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1105,1
    - Dst: magic_enum::detail::calculate_cases
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1106,1
    - Dst: hash_v<hash_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1108,1
    - Dst: MAGIC_ENUM_FOR_EACH_256
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1109,1
    - Dst: magic_enum::detail::constexpr_switch
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1112,1
    - Dst: std::forward<Lambda>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1112,1
    - Dst: std::forward<ResultGetterType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1112,1
    - Dst: def
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1116,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 3
    argNames:
    - ' lambda'
    - searched
    - ' def'
    argTypes:
    - Lambda
    - typename std::decay_t<decltype(*GlobValues)>::value_type
    - ResultGetterType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1117
      start: 1096
    functionDepth: 4
    functionLinenumber: 1096
    functionLinenumberEnd: 1117
    functionName: magic_enum::detail::constexpr_switch
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - MAGIC_ENUM_FOR_EACH_256
    - std::forward<ResultGetterType>
    - hash_v<hash_t>
    - def
    - std::forward<Lambda>
    - std::array::size
    - magic_enum::detail::constexpr_switch
    - magic_enum::detail::calculate_cases
    - magic_enum::detail::has_duplicate
    linkageType: ''
    returnType: decltype(auto)
    signature: "decltype(auto) constexpr_switch(\n    Lambda&& lambda,\n    typename
      std::decay_t<decltype(*GlobValues)>::value_type searched,\n    ResultGetterType&&
      def,\n    BinaryPredicate&& pred = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - str_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionName: magic_enum::detail::static_str::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - MAGIC_ENUM_ASSERT
    linkageType: ''
    returnType: void
    signature: void static_str(str_view str) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string_view::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:259,1
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:260,1
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 261
    functionName: magic_enum::detail::static_str::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - MAGIC_ENUM_ASSERT
    - string_view::data
    - string_view::size
    linkageType: ''
    returnType: void
    signature: void static_str(string_view str) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 263
    functionName: magic_enum::detail::static_str::data
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char_type
    signature: char_type * data() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 265
    functionName: magic_enum::detail::static_str::size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::uint16_t
    signature: std::uint16_t size() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:267,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 267
    functionName: operator string_view() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - data
    - size
    linkageType: ''
    returnType: void
    signature: void operator string_view() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:271,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 271
    functionName: magic_enum::detail::static_str::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char_type>
    linkageType: ''
    returnType: void
    signature: void static_str(const char* str, std::integer_sequence<std::uint16_t,
      I...>) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - str
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 274
    functionName: magic_enum::detail::static_str::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char_type>
    linkageType: ''
    returnType: void
    signature: void static_str(string_view str, std::integer_sequence<std::uint16_t,
      I...>) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 282
    functionName: magic_enum::detail::static_str<0>::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void static_str()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 284
    functionName: magic_enum::detail::static_str<0>::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void static_str(str_view) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 286
    functionName: magic_enum::detail::static_str<0>::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void static_str(string_view) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 288
    functionName: magic_enum::detail::static_str<0>::data
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char_type
    signature: char_type * data() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 290
    functionName: magic_enum::detail::static_str<0>::size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::uint16_t
    signature: std::uint16_t size() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 292
    functionName: operator string_view() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator string_view() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 299
    functionName: magic_enum::detail::case_insensitive::to_lower
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char_type>
    linkageType: ''
    returnType: char_type
    signature: char_type to_lower(char_type c) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: to_lower
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:304,1
    - Dst: to_lower
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - L
    - R
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 305
    functionName: operator()(L lhs, R rhs) const noexcept -> std::enable_if_t<std::is_same_v<std::decay_t<L>,
      char_type> && std::is_same_v<std::decay_t<R>, char_type>, bool>
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - to_lower
    linkageType: ''
    returnType: auto
    signature: auto operator()(L lhs, R rhs) const noexcept -> std::enable_if_t<std::is_same_v<std::decay_t<L>,
      char_type> && std::is_same_v<std::decay_t<R>, char_type>, bool>
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:318,1
    - Dst: string_view::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:326,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 11
    argCount: 2
    argNames:
    - str
    - c
    argTypes:
    - string_view
    - char_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 308
    functionDepth: 3
    functionLinenumber: 308
    functionLinenumberEnd: 328
    functionName: magic_enum::detail::find
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - string_view::size
    - string_view::find
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t find(string_view str, char_type c) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 331
    functionDepth: 0
    functionLinenumber: 331
    functionLinenumberEnd: 334
    functionName: magic_enum::detail::is_default_predicate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_default_predicate() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::is_default_predicate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:338,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 337
    functionDepth: 1
    functionLinenumber: 337
    functionLinenumberEnd: 340
    functionName: magic_enum::detail::is_nothrow_invocable
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - magic_enum::detail::is_default_predicate
    linkageType: ''
    returnType: bool
    signature: bool is_nothrow_invocable()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::is_nothrow_invocable
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:343,1
    - Dst: magic_enum::detail::is_default_predicate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:352,1
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:353,1
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:353,1
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:357,1
    - Dst: p
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:359,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 3
    argNames:
    - lhs
    - rhs
    - ' p'
    argTypes:
    - string_view
    - string_view
    - BinaryPredicate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 343
    functionDepth: 2
    functionLinenumber: 343
    functionLinenumberEnd: 368
    functionName: magic_enum::detail::cmp_equal
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - p
    - magic_enum::detail::is_default_predicate
    - string_view::size
    - magic_enum::detail::is_nothrow_invocable
    linkageType: ''
    returnType: bool
    signature: bool cmp_equal(string_view lhs, string_view rhs, [[maybe_unused]] BinaryPredicate&&
      p) noexcept(is_nothrow_invocable<BinaryPredicate>())
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<R>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:378,1
    - Dst: static_cast<L>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:380,1
    - Dst: lhs < static_cast<std::make_unsigned_t<R>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:383,1
    - Dst: lhs < 0 || static_cast<std::make_unsigned_t<L>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:386,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - L
    - R
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 388
    functionName: magic_enum::detail::cmp_less
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 2
    functionsReached:
    - static_cast<R>
    - lhs < static_cast<std::make_unsigned_t<R>>
    - static_cast<L>
    - lhs < 0 || static_cast<std::make_unsigned_t<L>>
    linkageType: ''
    returnType: bool
    signature: bool cmp_less(L lhs, R rhs) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:395,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - value
    argTypes:
    - I
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 391
    functionDepth: 1
    functionLinenumber: 391
    functionLinenumberEnd: 402
    functionName: magic_enum::detail::log2
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - MAGIC_ENUM_ASSERT
    linkageType: ''
    returnType: I
    signature: I log2(I value) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - (a)
    argTypes:
    - T[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 408
    functionDepth: 0
    functionLinenumber: 408
    functionLinenumberEnd: 410
    functionName: magic_enum::detail::to_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: std::array<std::remove_cv_t<T>, N>
    signature: std::array<std::remove_cv_t<T>, N> to_array(T (&a)[N], std::index_sequence<I...>)
      noexcept
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_GET_TYPE_NAME_BUILTIN
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:422,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:423,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 469
    functionName: magic_enum::detail::n
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 3
    functionsReached:
    - MAGIC_ENUM_GET_TYPE_NAME_BUILTIN
    - concat_length
    linkageType: ''
    returnType: auto
    signature: auto n() noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: customize::enum_type_name<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:473,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:477,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:478,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:482,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 472
    functionDepth: 2
    functionLinenumber: 472
    functionLinenumberEnd: 487
    functionName: magic_enum::detail::type_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - auto::empty
    - magic_enum::detail::n
    - customize::enum_type_name<E>
    - auto::size
    linkageType: ''
    returnType: auto
    signature: auto type_name() noexcept
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:498,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:499,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 493
    functionDepth: 1
    functionLinenumber: 493
    functionLinenumberEnd: 557
    functionName: magic_enum::detail::n
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 4
    functionsReached:
    - MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
    - concat_length
    linkageType: ''
    returnType: auto
    signature: auto n() noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:569,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:570,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 565
    functionDepth: 1
    functionLinenumber: 565
    functionLinenumberEnd: 592
    functionName: magic_enum::detail::n
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 4
    functionsReached:
    - MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
    - concat_length
    linkageType: ''
    returnType: auto
    signature: auto n() noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: customize::enum_name<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:597,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:601,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:602,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:607,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:609,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 596
    functionDepth: 2
    functionLinenumber: 596
    functionLinenumberEnd: 615
    functionName: magic_enum::detail::enum_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - customize::enum_name<E>
    - magic_enum::detail::n
    - auto::empty
    - auto::size
    linkageType: ''
    returnType: auto
    signature: auto enum_name() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_bit_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:624,1
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:626,1
    - Dst: customize::enum_name<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:628,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:632,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:633,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:636,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:638,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 621
    functionDepth: 2
    functionLinenumber: 621
    functionLinenumberEnd: 643
    functionName: magic_enum::detail::is_valid
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<E>
    - __builtin_bit_cast
    - auto::empty
    - magic_enum::detail::n
    - customize::enum_name<E>
    - auto::size
    linkageType: ''
    returnType: bool
    signature: bool is_valid() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:655,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:657,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:657,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:657,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:659,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:659,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 651
    functionDepth: 0
    functionLinenumber: 651
    functionLinenumberEnd: 661
    functionName: magic_enum::detail::ualue
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - static_cast<U>
    - static_cast<int>
    linkageType: ''
    returnType: U
    signature: U ualue(std::size_t i) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:665,1
    - Dst: magic_enum::detail::ualue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:665,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 664
    functionDepth: 1
    functionLinenumber: 664
    functionLinenumberEnd: 666
    functionName: magic_enum::detail::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - magic_enum::detail::ualue
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E value(std::size_t i) noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::cmp_less
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:676,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 682
      start: 669
    functionDepth: 1
    functionLinenumber: 669
    functionLinenumberEnd: 682
    functionName: magic_enum::detail::reflected_min
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 12
    functionsReached:
    - magic_enum::detail::cmp_less
    linkageType: ''
    returnType: int
    signature: int reflected_min() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::cmp_less
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:692,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 685
    functionDepth: 1
    functionLinenumber: 685
    functionLinenumberEnd: 698
    functionName: magic_enum::detail::reflected_max
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 19
    functionsReached:
    - magic_enum::detail::cmp_less
    linkageType: ''
    returnType: int
    signature: int reflected_max() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 700
    functionDepth: 0
    functionLinenumber: 700
    functionLinenumberEnd: 709
    functionName: MAGIC_ENUM_FOR_EACH_256
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_FOR_EACH_256(T)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_FOR_EACH_256
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:720,1
    - Dst: magic_enum::detail::valid_count
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:723,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - valid
    - ' count'
    argTypes:
    - bool*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 711
    functionDepth: 1
    functionLinenumber: 711
    functionLinenumberEnd: 726
    functionName: magic_enum::detail::valid_count
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 4
    functionsReached:
    - MAGIC_ENUM_FOR_EACH_256
    - magic_enum::detail::valid_count
    linkageType: ''
    returnType: void
    signature: void valid_count(bool* valid, std::size_t& count) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - O
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 712
    functionDepth: 0
    functionLinenumber: 712
    functionLinenumberEnd: 719
    functionName: MAGIC_ENUM_V
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_V(O)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::valid_count
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:737,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 739
      start: 735
    functionDepth: 1
    functionLinenumber: 735
    functionLinenumberEnd: 739
    functionName: magic_enum::detail::valid_count
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 5
    functionsReached:
    - magic_enum::detail::valid_count
    linkageType: ''
    returnType: auto
    signature: auto valid_count() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::valid_count
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:743,1
    - Dst: magic_enum::detail::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:753,1
    - Dst: magic_enum::detail::to_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:759,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 764
      start: 742
    functionDepth: 2
    functionLinenumber: 742
    functionLinenumberEnd: 764
    functionName: magic_enum::detail::values
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 2
    functionsReached:
    - magic_enum::detail::value
    - magic_enum::detail::valid_count
    - magic_enum::detail::to_array
    linkageType: ''
    returnType: auto
    signature: auto values() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::reflected_min
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:768,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:769,1
    - Dst: magic_enum::detail::values
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:773,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 767
    functionDepth: 2
    functionLinenumber: 767
    functionLinenumberEnd: 774
    functionName: magic_enum::detail::values
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 3
    functionsReached:
    - magic_enum::detail::reflected_max
    - magic_enum::detail::values
    - magic_enum::detail::reflected_min
    linkageType: ''
    returnType: auto
    signature: auto values() noexcept
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::values
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:784,1
    - Dst: magic_enum::detail::values
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:785,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:786,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:786,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:786,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:789,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:790,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 777
    functionDepth: 3
    functionLinenumber: 777
    functionLinenumberEnd: 800
    functionName: magic_enum::detail::subtype
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::detail::values
    - static_cast<U>
    - auto::size
    linkageType: ''
    returnType: enum_subtype
    signature: enum_subtype subtype(std::true_type) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 803
    functionDepth: 0
    functionLinenumber: 803
    functionLinenumberEnd: 806
    functionName: magic_enum::detail::subtype
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: enum_subtype
    signature: enum_subtype subtype(std::false_type) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 827
    functionDepth: 0
    functionLinenumber: 827
    functionLinenumberEnd: 830
    functionName: magic_enum::detail::names
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto names(std::index_sequence<I...>) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 842
      start: 839
    functionDepth: 0
    functionLinenumber: 839
    functionLinenumberEnd: 842
    functionName: magic_enum::detail::entries
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto entries(std::index_sequence<I...>) noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::log2
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:857,1
    - Dst: magic_enum::detail::log2
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:858,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 863
      start: 851
    functionDepth: 2
    functionLinenumber: 851
    functionLinenumberEnd: 863
    functionName: magic_enum::detail::is_sparse
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::detail::log2
    linkageType: ''
    returnType: bool
    signature: bool is_sparse() noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:922,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:924,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - value
    argTypes:
    - Value
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 926
      start: 919
    functionDepth: 0
    functionLinenumber: 919
    functionLinenumberEnd: 926
    functionName: operator()(Value value) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<U>
    - static_cast<std::size_t>
    linkageType: ''
    returnType: auto
    signature: auto operator()(Value value) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:967,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:969,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - value
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 966
    functionDepth: 0
    functionLinenumber: 966
    functionLinenumberEnd: 972
    functionName: operator()(string_view value) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<std::uint32_t>
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t operator()(string_view value) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:976,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:978,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:978,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:980,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - value
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 975
    functionDepth: 0
    functionLinenumber: 975
    functionLinenumberEnd: 981
    functionName: operator()(string_view value) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<std::uint64_t>
    - static_cast<std::uint32_t>
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t operator()(string_view value) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:991,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:995,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:998,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1000,1
    - Dst: static_cast<std::ptrdiff_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1000,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1001,1
    - Dst: static_cast<std::ptrdiff_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1001,1
    - Dst: hash_v<Hash>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1003,1
    - Dst: std::array::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1008,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1012,1
    - Dst: std::array::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1014,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - Page
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1022
      start: 989
    functionDepth: 3
    functionLinenumber: 989
    functionLinenumberEnd: 1022
    functionName: magic_enum::detail::calculate_cases
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - static_cast<std::ptrdiff_t>
    - std::array::end
    - hash_v<Hash>
    - std::array::begin
    - std::array::size
    - static_cast<std::size_t>
    linkageType: ''
    returnType: auto
    signature: auto calculate_cases(std::size_t Page) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<F>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1027,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1027,1
    - Dst: static_cast<R>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1029,1
    - Dst: std::forward<F>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1029,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1029,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1031
      start: 1025
    functionDepth: 0
    functionLinenumber: 1025
    functionLinenumberEnd: 1031
    functionName: magic_enum::detail::invoke_r
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<R>
    - std::forward<F>
    - std::forward<Args>
    linkageType: ''
    returnType: R
    signature: R invoke_r(F&& f, Args&&... args) noexcept(std::is_nothrow_invocable_r_v<R,
      F, Args...>)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1048,1
    - Dst: hash_v<Hash>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1051,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1065
      start: 1045
    functionDepth: 1
    functionLinenumber: 1045
    functionLinenumberEnd: 1065
    functionName: magic_enum::detail::has_duplicate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - hash_v<Hash>
    - size
    linkageType: ''
    returnType: bool
    signature: bool has_duplicate() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1088
      start: 1067
    functionDepth: 0
    functionLinenumber: 1067
    functionLinenumberEnd: 1088
    functionName: MAGIC_ENUM_CASE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_CASE(val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::has_duplicate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1103,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1105,1
    - Dst: magic_enum::detail::calculate_cases
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1106,1
    - Dst: hash_v<hash_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1108,1
    - Dst: MAGIC_ENUM_FOR_EACH_256
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1109,1
    - Dst: magic_enum::detail::constexpr_switch
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1112,1
    - Dst: std::forward<Lambda>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1112,1
    - Dst: std::forward<ResultGetterType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1112,1
    - Dst: def
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1116,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 3
    argNames:
    - ' lambda'
    - searched
    - ' def'
    argTypes:
    - Lambda
    - typename std::decay_t<decltype(*GlobValues)>::value_type
    - ResultGetterType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1117
      start: 1096
    functionDepth: 4
    functionLinenumber: 1096
    functionLinenumberEnd: 1117
    functionName: magic_enum::detail::constexpr_switch
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 2
    functionsReached:
    - MAGIC_ENUM_FOR_EACH_256
    - std::forward<ResultGetterType>
    - hash_v<hash_t>
    - def
    - std::forward<Lambda>
    - std::array::size
    - magic_enum::detail::constexpr_switch
    - magic_enum::detail::calculate_cases
    - magic_enum::detail::has_duplicate
    linkageType: ''
    returnType: decltype(auto)
    signature: "decltype(auto) constexpr_switch(\n    Lambda&& lambda,\n    typename
      std::decay_t<decltype(*GlobValues)>::value_type searched,\n    ResultGetterType&&
      def,\n    BinaryPredicate&& pred = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string_view::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1165
      start: 1160
    functionDepth: 2
    functionLinenumber: 1160
    functionLinenumberEnd: 1165
    functionName: magic_enum::enum_type_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - string_view::empty
    linkageType: ''
    returnType: auto
    signature: auto enum_type_name() noexcept -> detail::enable_if_t<E, string_view>
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1171
      start: 1169
    functionDepth: 0
    functionLinenumber: 1169
    functionLinenumberEnd: 1171
    functionName: magic_enum::enum_count
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto enum_count() noexcept -> detail::enable_if_t<E, std::size_t>
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1181,1
    - Dst: magic_enum::detail::log2
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1183,1
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1185,1
    - Dst: detail::value<D, min, S>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - index
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1187
      start: 1176
    functionDepth: 2
    functionLinenumber: 1176
    functionLinenumberEnd: 1187
    functionName: magic_enum::enum_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - MAGIC_ENUM_ASSERT
    - detail::value<D, min, S>
    - magic_enum::detail::log2
    linkageType: ''
    returnType: auto
    signature: auto enum_value(std::size_t index) noexcept -> detail::enable_if_t<E,
      std::decay_t<E>>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::enum_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1197
      start: 1191
    functionDepth: 1
    functionLinenumber: 1191
    functionLinenumberEnd: 1197
    functionName: magic_enum::enum_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - magic_enum::enum_value
    linkageType: ''
    returnType: auto
    signature: auto enum_value() noexcept -> detail::enable_if_t<E, std::decay_t<E>>
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1206
      start: 1201
    functionDepth: 0
    functionLinenumber: 1201
    functionLinenumberEnd: 1206
    functionName: magic_enum::enum_values
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto enum_values() noexcept -> detail::enable_if_t<E, detail::values_t<E,
      S>>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1212
      start: 1210
    functionDepth: 0
    functionLinenumber: 1210
    functionLinenumberEnd: 1212
    functionName: magic_enum::enum_integer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    linkageType: ''
    returnType: auto
    signature: auto enum_integer(E value) noexcept -> detail::enable_if_t<E, underlying_type_t<E>>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1218
      start: 1216
    functionDepth: 0
    functionLinenumber: 1216
    functionLinenumberEnd: 1218
    functionName: magic_enum::enum_underlying
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    linkageType: ''
    returnType: auto
    signature: auto enum_underlying(E value) noexcept -> detail::enable_if_t<E, underlying_type_t<E>>
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: detail::constexpr_switch<&detail::values_v<D, S>, detail::case_call_t::index>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1230,1
    - Dst: magic_enum::enum_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1236,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1243,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1245,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - value
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1249
      start: 1223
    functionDepth: 3
    functionLinenumber: 1223
    functionLinenumberEnd: 1249
    functionName: magic_enum::enum_index
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<std::size_t>
    - magic_enum::enum_value
    - static_cast<U>
    - detail::constexpr_switch<&detail::values_v<D, S>, detail::case_call_t::index>
    linkageType: ''
    returnType: auto
    signature: auto enum_index(E value) noexcept -> detail::enable_if_t<E, optional<std::size_t>>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::enum_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1259
      start: 1254
    functionDepth: 1
    functionLinenumber: 1254
    functionLinenumberEnd: 1259
    functionName: magic_enum::enum_index
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - magic_enum::enum_index
    linkageType: ''
    returnType: auto
    signature: auto enum_index(E value) noexcept -> detail::enable_if_t<E, optional<std::size_t>>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::enum_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1270
      start: 1263
    functionDepth: 1
    functionLinenumber: 1263
    functionLinenumberEnd: 1270
    functionName: magic_enum::enum_index
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 2
    functionsReached:
    - magic_enum::enum_index
    linkageType: ''
    returnType: auto
    signature: auto enum_index() noexcept -> detail::enable_if_t<decltype(V), std::size_t>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string_view::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1280
      start: 1275
    functionDepth: 2
    functionLinenumber: 1275
    functionLinenumberEnd: 1280
    functionName: magic_enum::enum_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - string_view::empty
    linkageType: ''
    returnType: auto
    signature: auto enum_name() noexcept -> detail::enable_if_t<decltype(V), string_view>
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::enum_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1289,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1293
      start: 1285
    functionDepth: 4
    functionLinenumber: 1285
    functionLinenumberEnd: 1293
    functionName: magic_enum::enum_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::enum_index
    linkageType: ''
    returnType: auto
    signature: auto enum_name(E value) noexcept -> detail::enable_if_t<E, string_view>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::enum_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1302,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1303
      start: 1298
    functionDepth: 1
    functionLinenumber: 1298
    functionLinenumberEnd: 1303
    functionName: magic_enum::enum_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - magic_enum::enum_name
    linkageType: ''
    returnType: auto
    signature: auto enum_name(E value) -> detail::enable_if_t<E, string_view>
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1312
      start: 1307
    functionDepth: 0
    functionLinenumber: 1307
    functionLinenumberEnd: 1312
    functionName: magic_enum::enum_names
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto enum_names() noexcept -> detail::enable_if_t<E, detail::names_t<E,
      S>>
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1321
      start: 1316
    functionDepth: 0
    functionLinenumber: 1316
    functionLinenumberEnd: 1321
    functionName: magic_enum::enum_entries
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto enum_entries() noexcept -> detail::enable_if_t<E, detail::entries_t<E,
      S>>
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: detail::constexpr_switch<&detail::values_v<D, S>, detail::case_call_t::value>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1335,1
    - Dst: static_cast<D>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1337,1
    - Dst: static_cast<underlying_type_t<D>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1341,1
    - Dst: magic_enum::enum_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1341,1
    - Dst: static_cast<D>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1342,1
    - Dst: static_cast<D>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1349,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - value
    argTypes:
    - underlying_type_t<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1353
      start: 1329
    functionDepth: 3
    functionLinenumber: 1329
    functionLinenumberEnd: 1353
    functionName: magic_enum::enum_cast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<D>
    - magic_enum::enum_value
    - detail::constexpr_switch<&detail::values_v<D, S>, detail::case_call_t::value>
    - static_cast<underlying_type_t<D>>
    linkageType: ''
    returnType: auto
    signature: auto enum_cast(underlying_type_t<E> value) noexcept -> detail::enable_if_t<E,
      optional<std::decay_t<E>>>
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: detail::is_nothrow_invocable<BinaryPredicate>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1358,1
    - Dst: detail::is_default_predicate<BinaryPredicate>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1363,1
    - Dst: detail::constexpr_switch<&detail::names_v<D, S>, detail::case_call_t::index>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1364,1
    - Dst: magic_enum::detail::cmp_equal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1368,1
    - Dst: magic_enum::detail::cmp_equal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1372,1
    - Dst: magic_enum::enum_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1373,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - value
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1377
      start: 1358
    functionDepth: 3
    functionLinenumber: 1358
    functionLinenumberEnd: 1377
    functionName: magic_enum::enum_cast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::detail::cmp_equal
    - detail::is_nothrow_invocable<BinaryPredicate>
    - magic_enum::enum_value
    - detail::constexpr_switch<&detail::names_v<D, S>, detail::case_call_t::index>
    - detail::is_default_predicate<BinaryPredicate>
    linkageType: ''
    returnType: auto
    signature: auto enum_cast(string_view value, [[maybe_unused]] BinaryPredicate
      p = {}) noexcept(detail::is_nothrow_invocable<BinaryPredicate>()) -> detail::enable_if_t<E,
      optional<std::decay_t<E>>, BinaryPredicate>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1385,1
    - Dst: magic_enum::enum_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1385,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1385,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1386
      start: 1381
    functionDepth: 4
    functionLinenumber: 1381
    functionLinenumberEnd: 1386
    functionName: magic_enum::enum_contains
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::enum_cast
    - static_cast<U>
    - static_cast<bool>
    linkageType: ''
    returnType: auto
    signature: auto enum_contains(E value) noexcept -> detail::enable_if_t<E, bool>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1394,1
    - Dst: magic_enum::enum_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1394,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1394,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1395
      start: 1390
    functionDepth: 4
    functionLinenumber: 1390
    functionLinenumberEnd: 1395
    functionName: magic_enum::enum_contains
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::enum_cast
    - static_cast<U>
    - static_cast<bool>
    linkageType: ''
    returnType: auto
    signature: auto enum_contains(E value) noexcept -> detail::enable_if_t<E, bool>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1402,1
    - Dst: magic_enum::enum_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - underlying_type_t<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1403
      start: 1399
    functionDepth: 4
    functionLinenumber: 1399
    functionLinenumberEnd: 1403
    functionName: magic_enum::enum_contains
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::enum_cast
    - static_cast<bool>
    linkageType: ''
    returnType: auto
    signature: auto enum_contains(underlying_type_t<E> value) noexcept -> detail::enable_if_t<E,
      bool>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::is_nothrow_invocable<BinaryPredicate>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1407,1
    - Dst: static_cast<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1410,1
    - Dst: magic_enum::enum_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1410,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1410,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1411
      start: 1407
    functionDepth: 4
    functionLinenumber: 1407
    functionLinenumberEnd: 1411
    functionName: magic_enum::enum_contains
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::enum_cast
    - detail::is_nothrow_invocable<BinaryPredicate>
    - std::move
    - static_cast<bool>
    linkageType: ''
    returnType: auto
    signature: auto enum_contains(string_view value, BinaryPredicate p = {}) noexcept(detail::is_nothrow_invocable<BinaryPredicate>())
      -> detail::enable_if_t<E, bool, BinaryPredicate>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1423,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1423,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1424
      start: 1422
    functionDepth: 0
    functionLinenumber: 1422
    functionLinenumberEnd: 1424
    functionName: operator~(E rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E operator~(E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1428,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1428,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1429
      start: 1427
    functionDepth: 0
    functionLinenumber: 1427
    functionLinenumberEnd: 1429
    functionName: operator|(E lhs, E rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E operator|(E lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1433,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1433,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1433,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1434
      start: 1432
    functionDepth: 0
    functionLinenumber: 1432
    functionLinenumberEnd: 1434
    functionName: operator&(E lhs, E rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E operator&(E lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1438,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1438,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1439
      start: 1437
    functionDepth: 0
    functionLinenumber: 1437
    functionLinenumberEnd: 1439
    functionName: operator^(E lhs, E rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E operator^(E lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1444
      start: 1442
    functionDepth: 0
    functionLinenumber: 1442
    functionLinenumberEnd: 1444
    functionName: '& operator|=(E& lhs, E rhs) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & operator|=(E& lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1449
      start: 1447
    functionDepth: 0
    functionLinenumber: 1447
    functionLinenumberEnd: 1449
    functionName: '& operator&=(E& lhs, E rhs) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & operator&=(E& lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1454
      start: 1452
    functionDepth: 0
    functionLinenumber: 1452
    functionLinenumberEnd: 1454
    functionName: '& operator^=(E& lhs, E rhs) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & operator^=(E& lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1423,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1423,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1424
      start: 1422
    functionDepth: 0
    functionLinenumber: 1422
    functionLinenumberEnd: 1424
    functionName: operator~(E rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E operator~(E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1428,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1428,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1429
      start: 1427
    functionDepth: 0
    functionLinenumber: 1427
    functionLinenumberEnd: 1429
    functionName: operator|(E lhs, E rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E operator|(E lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1433,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1433,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1433,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1434
      start: 1432
    functionDepth: 0
    functionLinenumber: 1432
    functionLinenumberEnd: 1434
    functionName: operator&(E lhs, E rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E operator&(E lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1438,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1438,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1439
      start: 1437
    functionDepth: 0
    functionLinenumber: 1437
    functionLinenumberEnd: 1439
    functionName: operator^(E lhs, E rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E operator^(E lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1444
      start: 1442
    functionDepth: 0
    functionLinenumber: 1442
    functionLinenumberEnd: 1444
    functionName: '& operator|=(E& lhs, E rhs) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & operator|=(E& lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1449
      start: 1447
    functionDepth: 0
    functionLinenumber: 1447
    functionLinenumberEnd: 1449
    functionName: '& operator&=(E& lhs, E rhs) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & operator&=(E& lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1454
      start: 1452
    functionDepth: 0
    functionLinenumber: 1452
    functionLinenumberEnd: 1454
    functionName: '& operator^=(E& lhs, E rhs) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & operator^=(E& lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - srt
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 187
    functionName: magic_enum::customize::customize_t::customize_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void customize_t(string_view srt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - srt
    argTypes:
    - char_type*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 188
    functionName: magic_enum::customize::customize_t::customize_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void customize_t(const char_type* srt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tag
    argTypes:
    - detail::customize_tag
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: magic_enum::customize::customize_t::customize_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - MAGIC_ENUM_ASSERT
    linkageType: ''
    returnType: void
    signature: void customize_t(detail::customize_tag tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: magic_enum::customize::enum_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: customize_t
    signature: customize_t enum_name(E) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionName: magic_enum::customize::enum_type_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: customize_t
    signature: customize_t enum_type_name() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - srt
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 187
      start: 187
    functionDepth: 0
    functionLinenumber: 187
    functionLinenumberEnd: 187
    functionName: magic_enum::customize::customize_t::customize_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void customize_t(string_view srt)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - srt
    argTypes:
    - char_type*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 188
    functionDepth: 0
    functionLinenumber: 188
    functionLinenumberEnd: 188
    functionName: magic_enum::customize::customize_t::customize_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void customize_t(const char_type* srt)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - tag
    argTypes:
    - detail::customize_tag
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 189
    functionDepth: 1
    functionLinenumber: 189
    functionLinenumberEnd: 191
    functionName: magic_enum::customize::customize_t::customize_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - MAGIC_ENUM_ASSERT
    linkageType: ''
    returnType: void
    signature: void customize_t(detail::customize_tag tag)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 203
      start: 201
    functionDepth: 0
    functionLinenumber: 201
    functionLinenumberEnd: 203
    functionName: magic_enum::customize::enum_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: customize_t
    signature: customize_t enum_name(E) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 209
    functionName: magic_enum::customize::enum_type_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: customize_t
    signature: customize_t enum_type_name() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - str_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionName: magic_enum::detail::static_str::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - MAGIC_ENUM_ASSERT
    linkageType: ''
    returnType: void
    signature: void static_str(str_view str) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string_view::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:259,1
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:260,1
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 261
    functionName: magic_enum::detail::static_str::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - MAGIC_ENUM_ASSERT
    - string_view::data
    - string_view::size
    linkageType: ''
    returnType: void
    signature: void static_str(string_view str) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 263
    functionName: magic_enum::detail::static_str::data
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char_type
    signature: char_type * data() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 265
    functionName: magic_enum::detail::static_str::size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::uint16_t
    signature: std::uint16_t size() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:267,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 267
    functionName: operator string_view() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - data
    - size
    linkageType: ''
    returnType: void
    signature: void operator string_view() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:271,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 271
    functionName: magic_enum::detail::static_str::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char_type>
    linkageType: ''
    returnType: void
    signature: void static_str(const char* str, std::integer_sequence<std::uint16_t,
      I...>) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - str
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 274
    functionName: magic_enum::detail::static_str::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char_type>
    linkageType: ''
    returnType: void
    signature: void static_str(string_view str, std::integer_sequence<std::uint16_t,
      I...>) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 282
    functionName: magic_enum::detail::static_str<0>::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void static_str()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 284
    functionName: magic_enum::detail::static_str<0>::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void static_str(str_view) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 286
    functionName: magic_enum::detail::static_str<0>::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void static_str(string_view) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 288
    functionName: magic_enum::detail::static_str<0>::data
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char_type
    signature: char_type * data() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 290
    functionName: magic_enum::detail::static_str<0>::size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::uint16_t
    signature: std::uint16_t size() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 292
    functionName: operator string_view() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator string_view() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 299
    functionName: magic_enum::detail::case_insensitive::to_lower
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char_type>
    linkageType: ''
    returnType: char_type
    signature: char_type to_lower(char_type c) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: to_lower
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:304,1
    - Dst: to_lower
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - L
    - R
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 305
    functionName: operator()(L lhs, R rhs) const noexcept -> std::enable_if_t<std::is_same_v<std::decay_t<L>,
      char_type> && std::is_same_v<std::decay_t<R>, char_type>, bool>
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - to_lower
    linkageType: ''
    returnType: auto
    signature: auto operator()(L lhs, R rhs) const noexcept -> std::enable_if_t<std::is_same_v<std::decay_t<L>,
      char_type> && std::is_same_v<std::decay_t<R>, char_type>, bool>
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:318,1
    - Dst: string_view::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:326,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 11
    argCount: 2
    argNames:
    - str
    - c
    argTypes:
    - string_view
    - char_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 308
    functionDepth: 3
    functionLinenumber: 308
    functionLinenumberEnd: 328
    functionName: magic_enum::detail::find
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - string_view::size
    - string_view::find
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t find(string_view str, char_type c) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 331
    functionDepth: 0
    functionLinenumber: 331
    functionLinenumberEnd: 334
    functionName: magic_enum::detail::is_default_predicate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_default_predicate() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::is_default_predicate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:338,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 337
    functionDepth: 1
    functionLinenumber: 337
    functionLinenumberEnd: 340
    functionName: magic_enum::detail::is_nothrow_invocable
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 2
    functionsReached:
    - magic_enum::detail::is_default_predicate
    linkageType: ''
    returnType: bool
    signature: bool is_nothrow_invocable()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::is_nothrow_invocable
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:343,1
    - Dst: magic_enum::detail::is_default_predicate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:352,1
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:353,1
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:353,1
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:357,1
    - Dst: p
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:359,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 3
    argNames:
    - lhs
    - rhs
    - ' p'
    argTypes:
    - string_view
    - string_view
    - BinaryPredicate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 343
    functionDepth: 2
    functionLinenumber: 343
    functionLinenumberEnd: 368
    functionName: magic_enum::detail::cmp_equal
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - p
    - magic_enum::detail::is_default_predicate
    - string_view::size
    - magic_enum::detail::is_nothrow_invocable
    linkageType: ''
    returnType: bool
    signature: bool cmp_equal(string_view lhs, string_view rhs, [[maybe_unused]] BinaryPredicate&&
      p) noexcept(is_nothrow_invocable<BinaryPredicate>())
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<R>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:378,1
    - Dst: static_cast<L>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:380,1
    - Dst: lhs < static_cast<std::make_unsigned_t<R>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:383,1
    - Dst: lhs < 0 || static_cast<std::make_unsigned_t<L>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:386,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - L
    - R
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 388
    functionName: magic_enum::detail::cmp_less
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 4
    functionsReached:
    - static_cast<R>
    - lhs < static_cast<std::make_unsigned_t<R>>
    - static_cast<L>
    - lhs < 0 || static_cast<std::make_unsigned_t<L>>
    linkageType: ''
    returnType: bool
    signature: bool cmp_less(L lhs, R rhs) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:395,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - value
    argTypes:
    - I
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 391
    functionDepth: 1
    functionLinenumber: 391
    functionLinenumberEnd: 402
    functionName: magic_enum::detail::log2
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 3
    functionsReached:
    - MAGIC_ENUM_ASSERT
    linkageType: ''
    returnType: I
    signature: I log2(I value) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - (a)
    argTypes:
    - T[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 408
    functionDepth: 0
    functionLinenumber: 408
    functionLinenumberEnd: 410
    functionName: magic_enum::detail::to_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: std::array<std::remove_cv_t<T>, N>
    signature: std::array<std::remove_cv_t<T>, N> to_array(T (&a)[N], std::index_sequence<I...>)
      noexcept
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_GET_TYPE_NAME_BUILTIN
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:422,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:423,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 469
    functionName: magic_enum::detail::n
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 6
    functionsReached:
    - MAGIC_ENUM_GET_TYPE_NAME_BUILTIN
    - concat_length
    linkageType: ''
    returnType: auto
    signature: auto n() noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: customize::enum_type_name<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:473,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:477,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:478,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:482,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 472
    functionDepth: 2
    functionLinenumber: 472
    functionLinenumberEnd: 487
    functionName: magic_enum::detail::type_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - auto::empty
    - magic_enum::detail::n
    - customize::enum_type_name<E>
    - auto::size
    linkageType: ''
    returnType: auto
    signature: auto type_name() noexcept
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:498,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:499,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 493
    functionDepth: 1
    functionLinenumber: 493
    functionLinenumberEnd: 557
    functionName: magic_enum::detail::n
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 7
    functionsReached:
    - MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
    - concat_length
    linkageType: ''
    returnType: auto
    signature: auto n() noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:569,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:570,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 565
    functionDepth: 1
    functionLinenumber: 565
    functionLinenumberEnd: 592
    functionName: magic_enum::detail::n
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 7
    functionsReached:
    - MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
    - concat_length
    linkageType: ''
    returnType: auto
    signature: auto n() noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: customize::enum_name<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:597,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:601,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:602,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:607,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:609,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 596
    functionDepth: 2
    functionLinenumber: 596
    functionLinenumberEnd: 615
    functionName: magic_enum::detail::enum_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - customize::enum_name<E>
    - magic_enum::detail::n
    - auto::empty
    - auto::size
    linkageType: ''
    returnType: auto
    signature: auto enum_name() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_bit_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:624,1
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:626,1
    - Dst: customize::enum_name<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:628,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:632,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:633,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:636,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:638,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 621
    functionDepth: 2
    functionLinenumber: 621
    functionLinenumberEnd: 643
    functionName: magic_enum::detail::is_valid
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<E>
    - __builtin_bit_cast
    - auto::empty
    - magic_enum::detail::n
    - customize::enum_name<E>
    - auto::size
    linkageType: ''
    returnType: bool
    signature: bool is_valid() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:655,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:657,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:657,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:657,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:659,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:659,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 651
    functionDepth: 0
    functionLinenumber: 651
    functionLinenumberEnd: 661
    functionName: magic_enum::detail::ualue
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 2
    functionsReached:
    - static_cast<U>
    - static_cast<int>
    linkageType: ''
    returnType: U
    signature: U ualue(std::size_t i) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:665,1
    - Dst: magic_enum::detail::ualue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:665,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 664
    functionDepth: 1
    functionLinenumber: 664
    functionLinenumberEnd: 666
    functionName: magic_enum::detail::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 2
    functionsReached:
    - magic_enum::detail::ualue
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E value(std::size_t i) noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::cmp_less
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:676,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 682
      start: 669
    functionDepth: 1
    functionLinenumber: 669
    functionLinenumberEnd: 682
    functionName: magic_enum::detail::reflected_min
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 13
    functionsReached:
    - magic_enum::detail::cmp_less
    linkageType: ''
    returnType: int
    signature: int reflected_min() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::cmp_less
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:692,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 685
    functionDepth: 1
    functionLinenumber: 685
    functionLinenumberEnd: 698
    functionName: magic_enum::detail::reflected_max
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 20
    functionsReached:
    - magic_enum::detail::cmp_less
    linkageType: ''
    returnType: int
    signature: int reflected_max() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 700
    functionDepth: 0
    functionLinenumber: 700
    functionLinenumberEnd: 709
    functionName: MAGIC_ENUM_FOR_EACH_256
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_FOR_EACH_256(T)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_FOR_EACH_256
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:720,1
    - Dst: magic_enum::detail::valid_count
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:723,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - valid
    - ' count'
    argTypes:
    - bool*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 711
    functionDepth: 1
    functionLinenumber: 711
    functionLinenumberEnd: 726
    functionName: magic_enum::detail::valid_count
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 7
    functionsReached:
    - MAGIC_ENUM_FOR_EACH_256
    - magic_enum::detail::valid_count
    linkageType: ''
    returnType: void
    signature: void valid_count(bool* valid, std::size_t& count) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - O
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 712
    functionDepth: 0
    functionLinenumber: 712
    functionLinenumberEnd: 719
    functionName: MAGIC_ENUM_V
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_V(O)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::valid_count
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:737,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 739
      start: 735
    functionDepth: 1
    functionLinenumber: 735
    functionLinenumberEnd: 739
    functionName: magic_enum::detail::valid_count
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 8
    functionsReached:
    - magic_enum::detail::valid_count
    linkageType: ''
    returnType: auto
    signature: auto valid_count() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::valid_count
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:743,1
    - Dst: magic_enum::detail::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:753,1
    - Dst: magic_enum::detail::to_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:759,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 764
      start: 742
    functionDepth: 2
    functionLinenumber: 742
    functionLinenumberEnd: 764
    functionName: magic_enum::detail::values
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 4
    functionsReached:
    - magic_enum::detail::value
    - magic_enum::detail::valid_count
    - magic_enum::detail::to_array
    linkageType: ''
    returnType: auto
    signature: auto values() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::reflected_min
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:768,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:769,1
    - Dst: magic_enum::detail::values
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:773,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 767
    functionDepth: 2
    functionLinenumber: 767
    functionLinenumberEnd: 774
    functionName: magic_enum::detail::values
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 5
    functionsReached:
    - magic_enum::detail::reflected_max
    - magic_enum::detail::values
    - magic_enum::detail::reflected_min
    linkageType: ''
    returnType: auto
    signature: auto values() noexcept
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::values
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:784,1
    - Dst: magic_enum::detail::values
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:785,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:786,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:786,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:786,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:789,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:790,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 777
    functionDepth: 3
    functionLinenumber: 777
    functionLinenumberEnd: 800
    functionName: magic_enum::detail::subtype
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::detail::values
    - static_cast<U>
    - auto::size
    linkageType: ''
    returnType: enum_subtype
    signature: enum_subtype subtype(std::true_type) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 803
    functionDepth: 0
    functionLinenumber: 803
    functionLinenumberEnd: 806
    functionName: magic_enum::detail::subtype
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: enum_subtype
    signature: enum_subtype subtype(std::false_type) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 827
    functionDepth: 0
    functionLinenumber: 827
    functionLinenumberEnd: 830
    functionName: magic_enum::detail::names
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto names(std::index_sequence<I...>) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 842
      start: 839
    functionDepth: 0
    functionLinenumber: 839
    functionLinenumberEnd: 842
    functionName: magic_enum::detail::entries
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto entries(std::index_sequence<I...>) noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::log2
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:857,1
    - Dst: magic_enum::detail::log2
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:858,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 863
      start: 851
    functionDepth: 2
    functionLinenumber: 851
    functionLinenumberEnd: 863
    functionName: magic_enum::detail::is_sparse
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::detail::log2
    linkageType: ''
    returnType: bool
    signature: bool is_sparse() noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:922,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:924,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - value
    argTypes:
    - Value
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 926
      start: 919
    functionDepth: 0
    functionLinenumber: 919
    functionLinenumberEnd: 926
    functionName: operator()(Value value) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<U>
    - static_cast<std::size_t>
    linkageType: ''
    returnType: auto
    signature: auto operator()(Value value) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:967,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:969,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - value
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 966
    functionDepth: 0
    functionLinenumber: 966
    functionLinenumberEnd: 972
    functionName: operator()(string_view value) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<std::uint32_t>
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t operator()(string_view value) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:976,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:978,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:978,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:980,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - value
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 975
    functionDepth: 0
    functionLinenumber: 975
    functionLinenumberEnd: 981
    functionName: operator()(string_view value) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<std::uint64_t>
    - static_cast<std::uint32_t>
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t operator()(string_view value) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:991,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:995,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:998,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1000,1
    - Dst: static_cast<std::ptrdiff_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1000,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1001,1
    - Dst: static_cast<std::ptrdiff_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1001,1
    - Dst: hash_v<Hash>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1003,1
    - Dst: std::array::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1008,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1012,1
    - Dst: std::array::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1014,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - Page
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1022
      start: 989
    functionDepth: 3
    functionLinenumber: 989
    functionLinenumberEnd: 1022
    functionName: magic_enum::detail::calculate_cases
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 2
    functionsReached:
    - static_cast<std::ptrdiff_t>
    - std::array::end
    - hash_v<Hash>
    - std::array::begin
    - std::array::size
    - static_cast<std::size_t>
    linkageType: ''
    returnType: auto
    signature: auto calculate_cases(std::size_t Page) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<F>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1027,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1027,1
    - Dst: static_cast<R>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1029,1
    - Dst: std::forward<F>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1029,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1029,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1031
      start: 1025
    functionDepth: 0
    functionLinenumber: 1025
    functionLinenumberEnd: 1031
    functionName: magic_enum::detail::invoke_r
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<R>
    - std::forward<F>
    - std::forward<Args>
    linkageType: ''
    returnType: R
    signature: R invoke_r(F&& f, Args&&... args) noexcept(std::is_nothrow_invocable_r_v<R,
      F, Args...>)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1048,1
    - Dst: hash_v<Hash>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1051,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1065
      start: 1045
    functionDepth: 1
    functionLinenumber: 1045
    functionLinenumberEnd: 1065
    functionName: magic_enum::detail::has_duplicate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 2
    functionsReached:
    - hash_v<Hash>
    - size
    linkageType: ''
    returnType: bool
    signature: bool has_duplicate() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1088
      start: 1067
    functionDepth: 0
    functionLinenumber: 1067
    functionLinenumberEnd: 1088
    functionName: MAGIC_ENUM_CASE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_CASE(val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::has_duplicate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1103,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1105,1
    - Dst: magic_enum::detail::calculate_cases
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1106,1
    - Dst: hash_v<hash_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1108,1
    - Dst: MAGIC_ENUM_FOR_EACH_256
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1109,1
    - Dst: magic_enum::detail::constexpr_switch
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1112,1
    - Dst: std::forward<Lambda>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1112,1
    - Dst: std::forward<ResultGetterType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1112,1
    - Dst: def
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1116,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 3
    argNames:
    - ' lambda'
    - searched
    - ' def'
    argTypes:
    - Lambda
    - typename std::decay_t<decltype(*GlobValues)>::value_type
    - ResultGetterType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1117
      start: 1096
    functionDepth: 4
    functionLinenumber: 1096
    functionLinenumberEnd: 1117
    functionName: magic_enum::detail::constexpr_switch
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 3
    functionsReached:
    - MAGIC_ENUM_FOR_EACH_256
    - std::forward<ResultGetterType>
    - hash_v<hash_t>
    - def
    - std::forward<Lambda>
    - std::array::size
    - magic_enum::detail::constexpr_switch
    - magic_enum::detail::calculate_cases
    - magic_enum::detail::has_duplicate
    linkageType: ''
    returnType: decltype(auto)
    signature: "decltype(auto) constexpr_switch(\n    Lambda&& lambda,\n    typename
      std::decay_t<decltype(*GlobValues)>::value_type searched,\n    ResultGetterType&&
      def,\n    BinaryPredicate&& pred = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:256,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - str_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 257
      start: 255
    functionDepth: 1
    functionLinenumber: 255
    functionLinenumberEnd: 257
    functionName: magic_enum::detail::static_str::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - MAGIC_ENUM_ASSERT
    linkageType: ''
    returnType: void
    signature: void static_str(str_view str) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string_view::data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:259,1
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:260,1
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:260,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 259
    functionDepth: 1
    functionLinenumber: 259
    functionLinenumberEnd: 261
    functionName: magic_enum::detail::static_str::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - MAGIC_ENUM_ASSERT
    - string_view::data
    - string_view::size
    linkageType: ''
    returnType: void
    signature: void static_str(string_view str) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 263
    functionDepth: 0
    functionLinenumber: 263
    functionLinenumberEnd: 263
    functionName: magic_enum::detail::static_str::data
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char_type
    signature: char_type * data() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 265
      start: 265
    functionDepth: 0
    functionLinenumber: 265
    functionLinenumberEnd: 265
    functionName: magic_enum::detail::static_str::size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::uint16_t
    signature: std::uint16_t size() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:267,1
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 267
      start: 267
    functionDepth: 1
    functionLinenumber: 267
    functionLinenumberEnd: 267
    functionName: operator string_view() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - data
    - size
    linkageType: ''
    returnType: void
    signature: void operator string_view() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:271,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 271
    functionDepth: 0
    functionLinenumber: 271
    functionLinenumberEnd: 271
    functionName: magic_enum::detail::static_str::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char_type>
    linkageType: ''
    returnType: void
    signature: void static_str(const char* str, std::integer_sequence<std::uint16_t,
      I...>) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - str
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 274
      start: 274
    functionDepth: 0
    functionLinenumber: 274
    functionLinenumberEnd: 274
    functionName: magic_enum::detail::static_str::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char_type>
    linkageType: ''
    returnType: void
    signature: void static_str(string_view str, std::integer_sequence<std::uint16_t,
      I...>) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 282
      start: 282
    functionDepth: 0
    functionLinenumber: 282
    functionLinenumberEnd: 282
    functionName: magic_enum::detail::static_str<0>::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void static_str()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 284
      start: 284
    functionDepth: 0
    functionLinenumber: 284
    functionLinenumberEnd: 284
    functionName: magic_enum::detail::static_str<0>::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void static_str(str_view) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 286
    functionDepth: 0
    functionLinenumber: 286
    functionLinenumberEnd: 286
    functionName: magic_enum::detail::static_str<0>::static_str
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void static_str(string_view) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 288
    functionDepth: 0
    functionLinenumber: 288
    functionLinenumberEnd: 288
    functionName: magic_enum::detail::static_str<0>::data
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char_type
    signature: char_type * data() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 290
      start: 290
    functionDepth: 0
    functionLinenumber: 290
    functionLinenumberEnd: 290
    functionName: magic_enum::detail::static_str<0>::size
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::uint16_t
    signature: std::uint16_t size() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 292
      start: 292
    functionDepth: 0
    functionLinenumber: 292
    functionLinenumberEnd: 292
    functionName: operator string_view() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator string_view() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    - Dst: static_cast<char_type>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:298,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - char_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 297
    functionDepth: 0
    functionLinenumber: 297
    functionLinenumberEnd: 299
    functionName: magic_enum::detail::case_insensitive::to_lower
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char_type>
    linkageType: ''
    returnType: char_type
    signature: char_type to_lower(char_type c) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: to_lower
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:304,1
    - Dst: to_lower
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:304,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - L
    - R
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 303
    functionDepth: 0
    functionLinenumber: 303
    functionLinenumberEnd: 305
    functionName: operator()(L lhs, R rhs) const noexcept -> std::enable_if_t<std::is_same_v<std::decay_t<L>,
      char_type> && std::is_same_v<std::decay_t<R>, char_type>, bool>
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - to_lower
    linkageType: ''
    returnType: auto
    signature: auto operator()(L lhs, R rhs) const noexcept -> std::enable_if_t<std::is_same_v<std::decay_t<L>,
      char_type> && std::is_same_v<std::decay_t<R>, char_type>, bool>
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:318,1
    - Dst: string_view::find
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:326,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 11
    argCount: 2
    argNames:
    - str
    - c
    argTypes:
    - string_view
    - char_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 328
      start: 308
    functionDepth: 3
    functionLinenumber: 308
    functionLinenumberEnd: 328
    functionName: magic_enum::detail::find
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - string_view::size
    - string_view::find
    linkageType: ''
    returnType: std::size_t
    signature: std::size_t find(string_view str, char_type c) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 334
      start: 331
    functionDepth: 0
    functionLinenumber: 331
    functionLinenumberEnd: 334
    functionName: magic_enum::detail::is_default_predicate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool is_default_predicate() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::is_default_predicate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:338,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 337
    functionDepth: 1
    functionLinenumber: 337
    functionLinenumberEnd: 340
    functionName: magic_enum::detail::is_nothrow_invocable
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 3
    functionsReached:
    - magic_enum::detail::is_default_predicate
    linkageType: ''
    returnType: bool
    signature: bool is_nothrow_invocable()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::is_nothrow_invocable
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:343,1
    - Dst: magic_enum::detail::is_default_predicate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:352,1
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:353,1
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:353,1
    - Dst: string_view::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:357,1
    - Dst: p
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:359,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 14
    argCount: 3
    argNames:
    - lhs
    - rhs
    - ' p'
    argTypes:
    - string_view
    - string_view
    - BinaryPredicate
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 343
    functionDepth: 2
    functionLinenumber: 343
    functionLinenumberEnd: 368
    functionName: magic_enum::detail::cmp_equal
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - p
    - magic_enum::detail::is_default_predicate
    - string_view::size
    - magic_enum::detail::is_nothrow_invocable
    linkageType: ''
    returnType: bool
    signature: bool cmp_equal(string_view lhs, string_view rhs, [[maybe_unused]] BinaryPredicate&&
      p) noexcept(is_nothrow_invocable<BinaryPredicate>())
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<R>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:378,1
    - Dst: static_cast<L>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:380,1
    - Dst: lhs < static_cast<std::make_unsigned_t<R>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:383,1
    - Dst: lhs < 0 || static_cast<std::make_unsigned_t<L>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:386,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 15
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - L
    - R
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 388
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 388
    functionName: magic_enum::detail::cmp_less
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 6
    functionsReached:
    - static_cast<R>
    - lhs < static_cast<std::make_unsigned_t<R>>
    - static_cast<L>
    - lhs < 0 || static_cast<std::make_unsigned_t<L>>
    linkageType: ''
    returnType: bool
    signature: bool cmp_less(L lhs, R rhs) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:395,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - value
    argTypes:
    - I
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 402
      start: 391
    functionDepth: 1
    functionLinenumber: 391
    functionLinenumberEnd: 402
    functionName: magic_enum::detail::log2
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 4
    functionsReached:
    - MAGIC_ENUM_ASSERT
    linkageType: ''
    returnType: I
    signature: I log2(I value) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - (a)
    argTypes:
    - T[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 410
      start: 408
    functionDepth: 0
    functionLinenumber: 408
    functionLinenumberEnd: 410
    functionName: magic_enum::detail::to_array
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: std::array<std::remove_cv_t<T>, N>
    signature: std::array<std::remove_cv_t<T>, N> to_array(T (&a)[N], std::index_sequence<I...>)
      noexcept
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_GET_TYPE_NAME_BUILTIN
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:422,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:423,1
    CyclomaticComplexity: 8
    EdgeCount: 8
    ICount: 35
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 469
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 469
    functionName: magic_enum::detail::n
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 9
    functionsReached:
    - MAGIC_ENUM_GET_TYPE_NAME_BUILTIN
    - concat_length
    linkageType: ''
    returnType: auto
    signature: auto n() noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: customize::enum_type_name<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:473,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:477,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:478,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:482,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 472
    functionDepth: 2
    functionLinenumber: 472
    functionLinenumberEnd: 487
    functionName: magic_enum::detail::type_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - auto::empty
    - magic_enum::detail::n
    - customize::enum_type_name<E>
    - auto::size
    linkageType: ''
    returnType: auto
    signature: auto type_name() noexcept
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:498,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:499,1
    CyclomaticComplexity: 22
    EdgeCount: 22
    ICount: 47
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 557
      start: 493
    functionDepth: 1
    functionLinenumber: 493
    functionLinenumberEnd: 557
    functionName: magic_enum::detail::n
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 10
    functionsReached:
    - MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
    - concat_length
    linkageType: ''
    returnType: auto
    signature: auto n() noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:569,1
    - Dst: concat_length
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:570,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 17
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 565
    functionDepth: 1
    functionLinenumber: 565
    functionLinenumberEnd: 592
    functionName: magic_enum::detail::n
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 10
    functionsReached:
    - MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
    - concat_length
    linkageType: ''
    returnType: auto
    signature: auto n() noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: customize::enum_name<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:597,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:601,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:602,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:607,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:609,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 615
      start: 596
    functionDepth: 2
    functionLinenumber: 596
    functionLinenumberEnd: 615
    functionName: magic_enum::detail::enum_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - customize::enum_name<E>
    - magic_enum::detail::n
    - auto::empty
    - auto::size
    linkageType: ''
    returnType: auto
    signature: auto enum_name() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: __builtin_bit_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:624,1
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:626,1
    - Dst: customize::enum_name<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:628,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:632,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:633,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:636,1
    - Dst: magic_enum::detail::n
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:638,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 643
      start: 621
    functionDepth: 2
    functionLinenumber: 621
    functionLinenumberEnd: 643
    functionName: magic_enum::detail::is_valid
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<E>
    - __builtin_bit_cast
    - auto::empty
    - magic_enum::detail::n
    - customize::enum_name<E>
    - auto::size
    linkageType: ''
    returnType: bool
    signature: bool is_valid() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:655,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:657,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:657,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:657,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:659,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:659,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 661
      start: 651
    functionDepth: 0
    functionLinenumber: 651
    functionLinenumberEnd: 661
    functionName: magic_enum::detail::ualue
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 3
    functionsReached:
    - static_cast<U>
    - static_cast<int>
    linkageType: ''
    returnType: U
    signature: U ualue(std::size_t i) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:665,1
    - Dst: magic_enum::detail::ualue
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:665,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - i
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 666
      start: 664
    functionDepth: 1
    functionLinenumber: 664
    functionLinenumberEnd: 666
    functionName: magic_enum::detail::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 3
    functionsReached:
    - magic_enum::detail::ualue
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E value(std::size_t i) noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::cmp_less
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:676,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 682
      start: 669
    functionDepth: 1
    functionLinenumber: 669
    functionLinenumberEnd: 682
    functionName: magic_enum::detail::reflected_min
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 14
    functionsReached:
    - magic_enum::detail::cmp_less
    linkageType: ''
    returnType: int
    signature: int reflected_min() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::cmp_less
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:692,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 685
    functionDepth: 1
    functionLinenumber: 685
    functionLinenumberEnd: 698
    functionName: magic_enum::detail::reflected_max
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 21
    functionsReached:
    - magic_enum::detail::cmp_less
    linkageType: ''
    returnType: int
    signature: int reflected_max() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 709
      start: 700
    functionDepth: 0
    functionLinenumber: 700
    functionLinenumberEnd: 709
    functionName: MAGIC_ENUM_FOR_EACH_256
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_FOR_EACH_256(T)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_FOR_EACH_256
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:720,1
    - Dst: magic_enum::detail::valid_count
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:723,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - valid
    - ' count'
    argTypes:
    - bool*
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 711
    functionDepth: 1
    functionLinenumber: 711
    functionLinenumberEnd: 726
    functionName: magic_enum::detail::valid_count
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 10
    functionsReached:
    - MAGIC_ENUM_FOR_EACH_256
    - magic_enum::detail::valid_count
    linkageType: ''
    returnType: void
    signature: void valid_count(bool* valid, std::size_t& count) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - O
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 719
      start: 712
    functionDepth: 0
    functionLinenumber: 712
    functionLinenumberEnd: 719
    functionName: MAGIC_ENUM_V
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_V(O)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::valid_count
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:737,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 739
      start: 735
    functionDepth: 1
    functionLinenumber: 735
    functionLinenumberEnd: 739
    functionName: magic_enum::detail::valid_count
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 11
    functionsReached:
    - magic_enum::detail::valid_count
    linkageType: ''
    returnType: auto
    signature: auto valid_count() noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::valid_count
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:743,1
    - Dst: magic_enum::detail::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:753,1
    - Dst: magic_enum::detail::to_array
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:759,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 764
      start: 742
    functionDepth: 2
    functionLinenumber: 742
    functionLinenumberEnd: 764
    functionName: magic_enum::detail::values
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 6
    functionsReached:
    - magic_enum::detail::value
    - magic_enum::detail::valid_count
    - magic_enum::detail::to_array
    linkageType: ''
    returnType: auto
    signature: auto values() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::reflected_min
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:768,1
    - Dst: magic_enum::detail::reflected_max
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:769,1
    - Dst: magic_enum::detail::values
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:773,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 774
      start: 767
    functionDepth: 2
    functionLinenumber: 767
    functionLinenumberEnd: 774
    functionName: magic_enum::detail::values
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 7
    functionsReached:
    - magic_enum::detail::reflected_max
    - magic_enum::detail::values
    - magic_enum::detail::reflected_min
    linkageType: ''
    returnType: auto
    signature: auto values() noexcept
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::values
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:784,1
    - Dst: magic_enum::detail::values
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:785,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:786,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:786,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:786,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:789,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:790,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 800
      start: 777
    functionDepth: 3
    functionLinenumber: 777
    functionLinenumberEnd: 800
    functionName: magic_enum::detail::subtype
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::detail::values
    - static_cast<U>
    - auto::size
    linkageType: ''
    returnType: enum_subtype
    signature: enum_subtype subtype(std::true_type) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 803
    functionDepth: 0
    functionLinenumber: 803
    functionLinenumberEnd: 806
    functionName: magic_enum::detail::subtype
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: enum_subtype
    signature: enum_subtype subtype(std::false_type) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 830
      start: 827
    functionDepth: 0
    functionLinenumber: 827
    functionLinenumberEnd: 830
    functionName: magic_enum::detail::names
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto names(std::index_sequence<I...>) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 842
      start: 839
    functionDepth: 0
    functionLinenumber: 839
    functionLinenumberEnd: 842
    functionName: magic_enum::detail::entries
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto entries(std::index_sequence<I...>) noexcept
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::log2
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:857,1
    - Dst: magic_enum::detail::log2
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:858,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 863
      start: 851
    functionDepth: 2
    functionLinenumber: 851
    functionLinenumberEnd: 863
    functionName: magic_enum::detail::is_sparse
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::detail::log2
    linkageType: ''
    returnType: bool
    signature: bool is_sparse() noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:922,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:924,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - value
    argTypes:
    - Value
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 926
      start: 919
    functionDepth: 0
    functionLinenumber: 919
    functionLinenumberEnd: 926
    functionName: operator()(Value value) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<U>
    - static_cast<std::size_t>
    linkageType: ''
    returnType: auto
    signature: auto operator()(Value value) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:967,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:969,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - value
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 972
      start: 966
    functionDepth: 0
    functionLinenumber: 966
    functionLinenumberEnd: 972
    functionName: operator()(string_view value) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<std::uint32_t>
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t operator()(string_view value) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:976,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:978,1
    - Dst: static_cast<std::uint64_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:978,1
    - Dst: static_cast<std::uint32_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:980,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - value
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 975
    functionDepth: 0
    functionLinenumber: 975
    functionLinenumberEnd: 981
    functionName: operator()(string_view value) const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<std::uint64_t>
    - static_cast<std::uint32_t>
    linkageType: ''
    returnType: std::uint32_t
    signature: std::uint32_t operator()(string_view value) const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:991,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:995,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:998,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1000,1
    - Dst: static_cast<std::ptrdiff_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1000,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1001,1
    - Dst: static_cast<std::ptrdiff_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1001,1
    - Dst: hash_v<Hash>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1003,1
    - Dst: std::array::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1008,1
    - Dst: std::array::begin
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1012,1
    - Dst: std::array::end
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1014,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 14
    argCount: 1
    argNames:
    - Page
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1022
      start: 989
    functionDepth: 3
    functionLinenumber: 989
    functionLinenumberEnd: 1022
    functionName: magic_enum::detail::calculate_cases
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 3
    functionsReached:
    - static_cast<std::ptrdiff_t>
    - std::array::end
    - hash_v<Hash>
    - std::array::begin
    - std::array::size
    - static_cast<std::size_t>
    linkageType: ''
    returnType: auto
    signature: auto calculate_cases(std::size_t Page) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<F>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1027,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1027,1
    - Dst: static_cast<R>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1029,1
    - Dst: std::forward<F>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1029,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1029,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1031
      start: 1025
    functionDepth: 0
    functionLinenumber: 1025
    functionLinenumberEnd: 1031
    functionName: magic_enum::detail::invoke_r
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<R>
    - std::forward<F>
    - std::forward<Args>
    linkageType: ''
    returnType: R
    signature: R invoke_r(F&& f, Args&&... args) noexcept(std::is_nothrow_invocable_r_v<R,
      F, Args...>)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1048,1
    - Dst: hash_v<Hash>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1051,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 15
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1065
      start: 1045
    functionDepth: 1
    functionLinenumber: 1045
    functionLinenumberEnd: 1065
    functionName: magic_enum::detail::has_duplicate
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 3
    functionsReached:
    - hash_v<Hash>
    - size
    linkageType: ''
    returnType: bool
    signature: bool has_duplicate() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1088
      start: 1067
    functionDepth: 0
    functionLinenumber: 1067
    functionLinenumberEnd: 1088
    functionName: MAGIC_ENUM_CASE
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MAGIC_ENUM_CASE(val)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::detail::has_duplicate
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1103,1
    - Dst: std::array::size
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1105,1
    - Dst: magic_enum::detail::calculate_cases
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1106,1
    - Dst: hash_v<hash_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1108,1
    - Dst: MAGIC_ENUM_FOR_EACH_256
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1109,1
    - Dst: magic_enum::detail::constexpr_switch
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1112,1
    - Dst: std::forward<Lambda>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1112,1
    - Dst: std::forward<ResultGetterType>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1112,1
    - Dst: def
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1116,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 10
    argCount: 3
    argNames:
    - ' lambda'
    - searched
    - ' def'
    argTypes:
    - Lambda
    - typename std::decay_t<decltype(*GlobValues)>::value_type
    - ResultGetterType
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1117
      start: 1096
    functionDepth: 4
    functionLinenumber: 1096
    functionLinenumberEnd: 1117
    functionName: magic_enum::detail::constexpr_switch
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 4
    functionsReached:
    - MAGIC_ENUM_FOR_EACH_256
    - std::forward<ResultGetterType>
    - hash_v<hash_t>
    - def
    - std::forward<Lambda>
    - std::array::size
    - magic_enum::detail::constexpr_switch
    - magic_enum::detail::calculate_cases
    - magic_enum::detail::has_duplicate
    linkageType: ''
    returnType: decltype(auto)
    signature: "decltype(auto) constexpr_switch(\n    Lambda&& lambda,\n    typename
      std::decay_t<decltype(*GlobValues)>::value_type searched,\n    ResultGetterType&&
      def,\n    BinaryPredicate&& pred = {})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string_view::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1162,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1165
      start: 1160
    functionDepth: 2
    functionLinenumber: 1160
    functionLinenumberEnd: 1165
    functionName: magic_enum::enum_type_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - string_view::empty
    linkageType: ''
    returnType: auto
    signature: auto enum_type_name() noexcept -> detail::enable_if_t<E, string_view>
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1171
      start: 1169
    functionDepth: 0
    functionLinenumber: 1169
    functionLinenumberEnd: 1171
    functionName: magic_enum::enum_count
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto enum_count() noexcept -> detail::enable_if_t<E, std::size_t>
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1181,1
    - Dst: magic_enum::detail::log2
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1183,1
    - Dst: MAGIC_ENUM_ASSERT
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1185,1
    - Dst: detail::value<D, min, S>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1185,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - index
    argTypes:
    - std::size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1187
      start: 1176
    functionDepth: 2
    functionLinenumber: 1176
    functionLinenumberEnd: 1187
    functionName: magic_enum::enum_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 4
    functionsReached:
    - MAGIC_ENUM_ASSERT
    - detail::value<D, min, S>
    - magic_enum::detail::log2
    linkageType: ''
    returnType: auto
    signature: auto enum_value(std::size_t index) noexcept -> detail::enable_if_t<E,
      std::decay_t<E>>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::enum_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1196,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1197
      start: 1191
    functionDepth: 1
    functionLinenumber: 1191
    functionLinenumberEnd: 1197
    functionName: magic_enum::enum_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 5
    functionsReached:
    - magic_enum::enum_value
    linkageType: ''
    returnType: auto
    signature: auto enum_value() noexcept -> detail::enable_if_t<E, std::decay_t<E>>
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1206
      start: 1201
    functionDepth: 0
    functionLinenumber: 1201
    functionLinenumberEnd: 1206
    functionName: magic_enum::enum_values
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto enum_values() noexcept -> detail::enable_if_t<E, detail::values_t<E,
      S>>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1211,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1212
      start: 1210
    functionDepth: 0
    functionLinenumber: 1210
    functionLinenumberEnd: 1212
    functionName: magic_enum::enum_integer
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    linkageType: ''
    returnType: auto
    signature: auto enum_integer(E value) noexcept -> detail::enable_if_t<E, underlying_type_t<E>>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1217,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1218
      start: 1216
    functionDepth: 0
    functionLinenumber: 1216
    functionLinenumberEnd: 1218
    functionName: magic_enum::enum_underlying
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    linkageType: ''
    returnType: auto
    signature: auto enum_underlying(E value) noexcept -> detail::enable_if_t<E, underlying_type_t<E>>
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: detail::constexpr_switch<&detail::values_v<D, S>, detail::case_call_t::index>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1230,1
    - Dst: magic_enum::enum_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1236,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1243,1
    - Dst: static_cast<std::size_t>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1245,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - value
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1249
      start: 1223
    functionDepth: 3
    functionLinenumber: 1223
    functionLinenumberEnd: 1249
    functionName: magic_enum::enum_index
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 3
    functionsReached:
    - static_cast<std::size_t>
    - magic_enum::enum_value
    - static_cast<U>
    - detail::constexpr_switch<&detail::values_v<D, S>, detail::case_call_t::index>
    linkageType: ''
    returnType: auto
    signature: auto enum_index(E value) noexcept -> detail::enable_if_t<E, optional<std::size_t>>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::enum_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1258,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1259
      start: 1254
    functionDepth: 1
    functionLinenumber: 1254
    functionLinenumberEnd: 1259
    functionName: magic_enum::enum_index
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 4
    functionsReached:
    - magic_enum::enum_index
    linkageType: ''
    returnType: auto
    signature: auto enum_index(E value) noexcept -> detail::enable_if_t<E, optional<std::size_t>>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::enum_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1266,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1270
      start: 1263
    functionDepth: 1
    functionLinenumber: 1263
    functionLinenumberEnd: 1270
    functionName: magic_enum::enum_index
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 5
    functionsReached:
    - magic_enum::enum_index
    linkageType: ''
    returnType: auto
    signature: auto enum_index() noexcept -> detail::enable_if_t<decltype(V), std::size_t>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string_view::empty
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1280
      start: 1275
    functionDepth: 2
    functionLinenumber: 1275
    functionLinenumberEnd: 1280
    functionName: magic_enum::enum_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - string_view::empty
    linkageType: ''
    returnType: auto
    signature: auto enum_name() noexcept -> detail::enable_if_t<decltype(V), string_view>
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::enum_index
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1289,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1293
      start: 1285
    functionDepth: 4
    functionLinenumber: 1285
    functionLinenumberEnd: 1293
    functionName: magic_enum::enum_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 1
    functionsReached:
    - magic_enum::enum_index
    linkageType: ''
    returnType: auto
    signature: auto enum_name(E value) noexcept -> detail::enable_if_t<E, string_view>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: magic_enum::enum_name
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1302,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1303
      start: 1298
    functionDepth: 1
    functionLinenumber: 1298
    functionLinenumberEnd: 1303
    functionName: magic_enum::enum_name
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 2
    functionsReached:
    - magic_enum::enum_name
    linkageType: ''
    returnType: auto
    signature: auto enum_name(E value) -> detail::enable_if_t<E, string_view>
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1312
      start: 1307
    functionDepth: 0
    functionLinenumber: 1307
    functionLinenumberEnd: 1312
    functionName: magic_enum::enum_names
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto enum_names() noexcept -> detail::enable_if_t<E, detail::names_t<E,
      S>>
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1321
      start: 1316
    functionDepth: 0
    functionLinenumber: 1316
    functionLinenumberEnd: 1321
    functionName: magic_enum::enum_entries
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto enum_entries() noexcept -> detail::enable_if_t<E, detail::entries_t<E,
      S>>
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: detail::constexpr_switch<&detail::values_v<D, S>, detail::case_call_t::value>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1335,1
    - Dst: static_cast<D>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1337,1
    - Dst: static_cast<underlying_type_t<D>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1341,1
    - Dst: magic_enum::enum_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1341,1
    - Dst: static_cast<D>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1342,1
    - Dst: static_cast<D>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1349,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 17
    argCount: 1
    argNames:
    - value
    argTypes:
    - underlying_type_t<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1353
      start: 1329
    functionDepth: 3
    functionLinenumber: 1329
    functionLinenumberEnd: 1353
    functionName: magic_enum::enum_cast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 4
    functionsReached:
    - static_cast<D>
    - magic_enum::enum_value
    - detail::constexpr_switch<&detail::values_v<D, S>, detail::case_call_t::value>
    - static_cast<underlying_type_t<D>>
    linkageType: ''
    returnType: auto
    signature: auto enum_cast(underlying_type_t<E> value) noexcept -> detail::enable_if_t<E,
      optional<std::decay_t<E>>>
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: detail::is_nothrow_invocable<BinaryPredicate>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1358,1
    - Dst: detail::is_default_predicate<BinaryPredicate>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1363,1
    - Dst: detail::constexpr_switch<&detail::names_v<D, S>, detail::case_call_t::index>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1364,1
    - Dst: magic_enum::detail::cmp_equal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1368,1
    - Dst: magic_enum::detail::cmp_equal
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1372,1
    - Dst: magic_enum::enum_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1373,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 1
    argNames:
    - value
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1377
      start: 1358
    functionDepth: 3
    functionLinenumber: 1358
    functionLinenumberEnd: 1377
    functionName: magic_enum::enum_cast
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 4
    functionsReached:
    - magic_enum::detail::cmp_equal
    - detail::is_nothrow_invocable<BinaryPredicate>
    - magic_enum::enum_value
    - detail::constexpr_switch<&detail::names_v<D, S>, detail::case_call_t::index>
    - detail::is_default_predicate<BinaryPredicate>
    linkageType: ''
    returnType: auto
    signature: auto enum_cast(string_view value, [[maybe_unused]] BinaryPredicate
      p = {}) noexcept(detail::is_nothrow_invocable<BinaryPredicate>()) -> detail::enable_if_t<E,
      optional<std::decay_t<E>>, BinaryPredicate>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1385,1
    - Dst: magic_enum::enum_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1385,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1385,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1386
      start: 1381
    functionDepth: 4
    functionLinenumber: 1381
    functionLinenumberEnd: 1386
    functionName: magic_enum::enum_contains
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::enum_cast
    - static_cast<U>
    - static_cast<bool>
    linkageType: ''
    returnType: auto
    signature: auto enum_contains(E value) noexcept -> detail::enable_if_t<E, bool>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1394,1
    - Dst: magic_enum::enum_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1394,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1394,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1395
      start: 1390
    functionDepth: 4
    functionLinenumber: 1390
    functionLinenumberEnd: 1395
    functionName: magic_enum::enum_contains
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::enum_cast
    - static_cast<U>
    - static_cast<bool>
    linkageType: ''
    returnType: auto
    signature: auto enum_contains(E value) noexcept -> detail::enable_if_t<E, bool>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1402,1
    - Dst: magic_enum::enum_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - underlying_type_t<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1403
      start: 1399
    functionDepth: 4
    functionLinenumber: 1399
    functionLinenumberEnd: 1403
    functionName: magic_enum::enum_contains
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::enum_cast
    - static_cast<bool>
    linkageType: ''
    returnType: auto
    signature: auto enum_contains(underlying_type_t<E> value) noexcept -> detail::enable_if_t<E,
      bool>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::is_nothrow_invocable<BinaryPredicate>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1407,1
    - Dst: static_cast<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1410,1
    - Dst: magic_enum::enum_cast
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1410,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1410,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - value
    argTypes:
    - string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1411
      start: 1407
    functionDepth: 4
    functionLinenumber: 1407
    functionLinenumberEnd: 1411
    functionName: magic_enum::enum_contains
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - magic_enum::enum_cast
    - detail::is_nothrow_invocable<BinaryPredicate>
    - std::move
    - static_cast<bool>
    linkageType: ''
    returnType: auto
    signature: auto enum_contains(string_view value, BinaryPredicate p = {}) noexcept(detail::is_nothrow_invocable<BinaryPredicate>())
      -> detail::enable_if_t<E, bool, BinaryPredicate>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1423,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1423,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1424
      start: 1422
    functionDepth: 0
    functionLinenumber: 1422
    functionLinenumberEnd: 1424
    functionName: operator~(E rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E operator~(E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1428,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1428,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1429
      start: 1427
    functionDepth: 0
    functionLinenumber: 1427
    functionLinenumberEnd: 1429
    functionName: operator|(E lhs, E rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E operator|(E lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1433,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1433,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1433,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1434
      start: 1432
    functionDepth: 0
    functionLinenumber: 1432
    functionLinenumberEnd: 1434
    functionName: operator&(E lhs, E rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E operator&(E lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1438,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1438,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1439
      start: 1437
    functionDepth: 0
    functionLinenumber: 1437
    functionLinenumberEnd: 1439
    functionName: operator^(E lhs, E rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E operator^(E lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1444
      start: 1442
    functionDepth: 0
    functionLinenumber: 1442
    functionLinenumberEnd: 1444
    functionName: '& operator|=(E& lhs, E rhs) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & operator|=(E& lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1449
      start: 1447
    functionDepth: 0
    functionLinenumber: 1447
    functionLinenumberEnd: 1449
    functionName: '& operator&=(E& lhs, E rhs) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & operator&=(E& lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1454
      start: 1452
    functionDepth: 0
    functionLinenumber: 1452
    functionLinenumberEnd: 1454
    functionName: '& operator^=(E& lhs, E rhs) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & operator^=(E& lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1423,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1423,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1424
      start: 1422
    functionDepth: 0
    functionLinenumber: 1422
    functionLinenumberEnd: 1424
    functionName: operator~(E rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E operator~(E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1428,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1428,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1429
      start: 1427
    functionDepth: 0
    functionLinenumber: 1427
    functionLinenumberEnd: 1429
    functionName: operator|(E lhs, E rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E operator|(E lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1433,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1433,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1433,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1434
      start: 1432
    functionDepth: 0
    functionLinenumber: 1432
    functionLinenumberEnd: 1434
    functionName: operator&(E lhs, E rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E operator&(E lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1438,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1438,1
    - Dst: static_cast<underlying_type_t<E>>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp:1438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lhs
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1439
      start: 1437
    functionDepth: 0
    functionLinenumber: 1437
    functionLinenumberEnd: 1439
    functionName: operator^(E lhs, E rhs) noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached:
    - static_cast<underlying_type_t<E>>
    - static_cast<E>
    linkageType: ''
    returnType: E
    signature: E operator^(E lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1444
      start: 1442
    functionDepth: 0
    functionLinenumber: 1442
    functionLinenumberEnd: 1444
    functionName: '& operator|=(E& lhs, E rhs) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & operator|=(E& lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1449
      start: 1447
    functionDepth: 0
    functionLinenumber: 1447
    functionLinenumberEnd: 1449
    functionName: '& operator&=(E& lhs, E rhs) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & operator&=(E& lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' lhs'
    - rhs
    argTypes:
    - E
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1454
      start: 1452
    functionDepth: 0
    functionLinenumber: 1452
    functionLinenumberEnd: 1454
    functionName: '& operator^=(E& lhs, E rhs) noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & operator^=(E& lhs, E rhs) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 21
    functionDepth: 0
    functionLinenumber: 21
    functionLinenumberEnd: 22
    functionName: expected_STRINGIFY
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: expected_STRINGIFY(  x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 23
    functionName: expected_STRINGIFY_
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: expected_STRINGIFY_( x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 158
    functionName: nonstd_lite_in_place_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_t(      T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 159
    functionName: nonstd_lite_in_place_type_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_type_t( T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - K
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 160
    functionName: nonstd_lite_in_place_index_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_index_t(K)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 162
    functionName: nonstd_lite_in_place
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place(      T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 163
    functionName: nonstd_lite_in_place_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_type( T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - K
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 164
    functionName: nonstd_lite_in_place_index
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_index(K)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 158
      start: 157
    functionDepth: 0
    functionLinenumber: 157
    functionLinenumberEnd: 158
    functionName: nonstd_lite_in_place_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_t(      T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 158
    functionDepth: 0
    functionLinenumber: 158
    functionLinenumberEnd: 159
    functionName: nonstd_lite_in_place_type_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_type_t( T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - K
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 159
    functionDepth: 0
    functionLinenumber: 159
    functionLinenumberEnd: 160
    functionName: nonstd_lite_in_place_index_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_index_t(K)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 161
    functionDepth: 0
    functionLinenumber: 161
    functionLinenumberEnd: 162
    functionName: nonstd_lite_in_place
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place(      T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 162
    functionDepth: 0
    functionLinenumber: 162
    functionLinenumberEnd: 163
    functionName: nonstd_lite_in_place_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_type( T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - K
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 164
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 164
    functionName: nonstd_lite_in_place_index
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_index(K)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::in_place_type_tag<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:185,1
    - Dst: in_place_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionName: nonstd::in_place
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - detail::in_place_type_tag<T>
    - in_place_t
    linkageType: ''
    returnType: in_place_t
    signature: in_place_t in_place( detail::in_place_type_tag<T> = detail::in_place_type_tag<T>()
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::in_place_index_tag<K>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:191,1
    - Dst: in_place_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionName: nonstd::in_place
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - detail::in_place_index_tag<K>
    - in_place_t
    linkageType: ''
    returnType: in_place_t
    signature: in_place_t in_place( detail::in_place_index_tag<K> = detail::in_place_index_tag<K>()
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::in_place_type_tag<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:197,1
    - Dst: in_place_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionName: nonstd::in_place_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - detail::in_place_type_tag<T>
    - in_place_t
    linkageType: ''
    returnType: in_place_t
    signature: in_place_t in_place_type( detail::in_place_type_tag<T> = detail::in_place_type_tag<T>()
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::in_place_index_tag<K>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:203,1
    - Dst: in_place_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionName: nonstd::in_place_index
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - detail::in_place_index_tag<K>
    - in_place_t
    linkageType: ''
    returnType: in_place_t
    signature: in_place_t in_place_index( detail::in_place_index_tag<K> = detail::in_place_index_tag<K>()
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 211
    functionName: nonstd_lite_in_place_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_t(      T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 212
    functionName: nonstd_lite_in_place_type_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_type_t( T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - K
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 213
    functionName: nonstd_lite_in_place_index_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_index_t(K)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 215
    functionName: nonstd_lite_in_place
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place(      T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 216
    functionName: nonstd_lite_in_place_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_type( T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - K
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 217
    functionName: nonstd_lite_in_place_index
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_index(K)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::in_place_type_tag<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:185,1
    - Dst: in_place_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 188
      start: 185
    functionDepth: 0
    functionLinenumber: 185
    functionLinenumberEnd: 188
    functionName: nonstd::in_place
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - detail::in_place_type_tag<T>
    - in_place_t
    linkageType: ''
    returnType: in_place_t
    signature: in_place_t in_place( detail::in_place_type_tag<T> = detail::in_place_type_tag<T>()
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::in_place_index_tag<K>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:191,1
    - Dst: in_place_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 191
    functionDepth: 0
    functionLinenumber: 191
    functionLinenumberEnd: 194
    functionName: nonstd::in_place
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - detail::in_place_index_tag<K>
    - in_place_t
    linkageType: ''
    returnType: in_place_t
    signature: in_place_t in_place( detail::in_place_index_tag<K> = detail::in_place_index_tag<K>()
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::in_place_type_tag<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:197,1
    - Dst: in_place_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 200
    functionName: nonstd::in_place_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - detail::in_place_type_tag<T>
    - in_place_t
    linkageType: ''
    returnType: in_place_t
    signature: in_place_t in_place_type( detail::in_place_type_tag<T> = detail::in_place_type_tag<T>()
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::in_place_index_tag<K>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:203,1
    - Dst: in_place_t
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:205,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 206
    functionName: nonstd::in_place_index
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - detail::in_place_index_tag<K>
    - in_place_t
    linkageType: ''
    returnType: in_place_t
    signature: in_place_t in_place_index( detail::in_place_index_tag<K> = detail::in_place_index_tag<K>()
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 210
    functionDepth: 0
    functionLinenumber: 210
    functionLinenumberEnd: 211
    functionName: nonstd_lite_in_place_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_t(      T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 212
    functionName: nonstd_lite_in_place_type_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_type_t( T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - K
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 213
    functionName: nonstd_lite_in_place_index_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_index_t(K)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 215
      start: 214
    functionDepth: 0
    functionLinenumber: 214
    functionLinenumberEnd: 215
    functionName: nonstd_lite_in_place
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place(      T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 216
      start: 215
    functionDepth: 0
    functionLinenumber: 215
    functionLinenumberEnd: 216
    functionName: nonstd_lite_in_place_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_type( T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - K
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 216
    functionDepth: 0
    functionLinenumber: 216
    functionLinenumberEnd: 217
    functionName: nonstd_lite_in_place_index
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nonstd_lite_in_place_index(K)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unexpected< typename std::decay<E>::type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:249,1
    - Dst: std::forward<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:249,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 250
    functionName: nonstd::make_unexpected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 55
    functionsReached:
    - std::forward<E>
    - unexpected< typename std::decay<E>::type >
    linkageType: ''
    returnType: auto
    signature: auto make_unexpected( E && value ) -> unexpected< typename std::decay<E>::type
      >
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: unexpected< typename std::decay<E>::type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:249,1
    - Dst: std::forward<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:249,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 250
      start: 247
    functionDepth: 0
    functionLinenumber: 247
    functionLinenumberEnd: 250
    functionName: nonstd::make_unexpected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 55
    functionsReached:
    - std::forward<E>
    - unexpected< typename std::decay<E>::type >
    linkageType: ''
    returnType: auto
    signature: auto make_unexpected( E && value ) -> unexpected< typename std::decay<E>::type
      >
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - major
    - ','
    - minor
    - ','
    - patch
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 320
      start: 319
    functionDepth: 0
    functionLinenumber: 319
    functionLinenumberEnd: 320
    functionName: nsel_COMPILER_VERSION
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nsel_COMPILER_VERSION( major, minor, patch )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 340
      start: 338
    functionDepth: 0
    functionLinenumber: 338
    functionLinenumberEnd: 340
    functionName: nsel_REQUIRES_0
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nsel_REQUIRES_0(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 343
      start: 341
    functionDepth: 0
    functionLinenumber: 341
    functionLinenumberEnd: 343
    functionName: nsel_REQUIRES_T
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nsel_REQUIRES_T(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - R
    - ','
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 344
    functionDepth: 0
    functionLinenumber: 344
    functionLinenumberEnd: 346
    functionName: nsel_REQUIRES_R
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nsel_REQUIRES_R(R, ...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - '...'
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 347
    functionDepth: 0
    functionLinenumber: 347
    functionLinenumberEnd: 349
    functionName: nsel_REQUIRES_A
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nsel_REQUIRES_A(...)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - codes
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 360
      start: 359
    functionDepth: 0
    functionLinenumber: 359
    functionLinenumberEnd: 360
    functionName: nsel_DISABLE_MSVC_WARNINGS
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nsel_DISABLE_MSVC_WARNINGS(codes)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 365
    functionDepth: 0
    functionLinenumber: 365
    functionLinenumberEnd: 366
    functionName: nsel_RESTORE_WARNINGS
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nsel_RESTORE_WARNINGS()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 368
    functionDepth: 0
    functionLinenumber: 368
    functionLinenumberEnd: 369
    functionName: nsel_RESTORE_WARNINGS
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nsel_RESTORE_WARNINGS()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 372
      start: 371
    functionDepth: 0
    functionLinenumber: 371
    functionLinenumberEnd: 372
    functionName: nsel_RESTORE_WARNINGS
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nsel_RESTORE_WARNINGS()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 373
      start: 372
    functionDepth: 0
    functionLinenumber: 372
    functionLinenumberEnd: 373
    functionName: nsel_RESTORE_MSVC_WARNINGS
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nsel_RESTORE_MSVC_WARNINGS()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 403
      start: 402
    functionDepth: 0
    functionLinenumber: 402
    functionLinenumberEnd: 403
    functionName: nsel_deprecated
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: nsel_deprecated(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: nonstd::expected_lite::std17::detail::satisfies
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::declval<T&>
    - noexcept
    - swap
    linkageType: ''
    returnType: bool
    signature: bool satisfies()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 449
    functionName: nonstd::expected_lite::std17::detail::test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto test( int ) -> std::integral_constant<bool, satisfies<T>()>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: nonstd::expected_lite::std17::detail::satisfies
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::declval<T&>
    - noexcept
    - swap
    linkageType: ''
    returnType: bool
    signature: bool satisfies()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 449
    functionName: nonstd::expected_lite::std17::detail::test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto test( int ) -> std::integral_constant<bool, satisfies<T>()>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: nonstd::expected_lite::std17::detail::satisfies
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::declval<T&>
    - noexcept
    - swap
    linkageType: ''
    returnType: bool
    signature: bool satisfies()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 449
    functionName: nonstd::expected_lite::std17::detail::test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto test( int ) -> std::integral_constant<bool, satisfies<T>()>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: nonstd::expected_lite::std17::detail::satisfies
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::declval<T&>
    - noexcept
    - swap
    linkageType: ''
    returnType: bool
    signature: bool satisfies()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 449
    functionName: nonstd::expected_lite::std17::detail::test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto test( int ) -> std::integral_constant<bool, satisfies<T>()>
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 523
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_noncopy_nonmove_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 524
    functionDepth: 0
    functionLinenumber: 524
    functionLinenumberEnd: 524
    functionName: ~storage_t_noncopy_nonmove_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_noncopy_nonmove_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 526
    functionDepth: 0
    functionLinenumber: 526
    functionLinenumberEnd: 528
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_noncopy_nonmove_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:532,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 530
    functionDepth: 0
    functionLinenumber: 530
    functionLinenumberEnd: 533
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:548,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 546
    functionDepth: 0
    functionLinenumber: 546
    functionLinenumberEnd: 549
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:554,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:554,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 555
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 560
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~value_type
    linkageType: ''
    returnType: void
    signature: void destruct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:575,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:575,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 573
    functionDepth: 0
    functionLinenumber: 573
    functionLinenumberEnd: 576
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:581,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:581,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 582
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 584
    functionDepth: 0
    functionLinenumber: 584
    functionLinenumberEnd: 587
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 589
    functionDepth: 0
    functionLinenumber: 589
    functionLinenumberEnd: 592
    functionName: '& value() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 597
    functionName: '& value() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:601,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 599
    functionDepth: 0
    functionLinenumber: 599
    functionLinenumberEnd: 602
    functionName: '&& value() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:606,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 604
    functionDepth: 0
    functionLinenumber: 604
    functionLinenumberEnd: 607
    functionName: '&& value() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 609
    functionDepth: 0
    functionLinenumber: 609
    functionLinenumberEnd: 612
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 614
    functionDepth: 0
    functionLinenumber: 614
    functionLinenumberEnd: 617
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 619
    functionDepth: 0
    functionLinenumber: 619
    functionLinenumberEnd: 622
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 624
    functionDepth: 0
    functionLinenumber: 624
    functionLinenumberEnd: 627
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:631,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 629
    functionDepth: 0
    functionLinenumber: 629
    functionLinenumberEnd: 632
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:636,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 634
    functionDepth: 0
    functionLinenumber: 634
    functionLinenumberEnd: 637
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 639
    functionDepth: 0
    functionLinenumber: 639
    functionLinenumberEnd: 642
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 644
    functionDepth: 0
    functionLinenumber: 644
    functionLinenumberEnd: 647
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 669
    functionDepth: 0
    functionLinenumber: 669
    functionLinenumberEnd: 669
    functionName: nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 670
    functionDepth: 0
    functionLinenumber: 670
    functionLinenumberEnd: 670
    functionName: ~storage_t_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 674
    functionName: nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 676
    functionDepth: 0
    functionLinenumber: 676
    functionLinenumberEnd: 679
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:683,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 681
    functionDepth: 0
    functionLinenumber: 681
    functionLinenumberEnd: 684
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value( value_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:688,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:688,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 686
    functionDepth: 0
    functionLinenumber: 686
    functionLinenumberEnd: 689
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_value( value_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:694,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:694,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 692
    functionDepth: 0
    functionLinenumber: 692
    functionLinenumberEnd: 695
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:700,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:700,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 698
    functionDepth: 0
    functionLinenumber: 698
    functionLinenumberEnd: 701
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 703
    functionDepth: 0
    functionLinenumber: 703
    functionLinenumberEnd: 706
    functionName: nonstd::expected_lite::detail::storage_t_impl::destruct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~value_type
    linkageType: ''
    returnType: void
    signature: void destruct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:710,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 708
    functionDepth: 0
    functionLinenumber: 708
    functionLinenumberEnd: 711
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:715,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:715,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 713
    functionDepth: 0
    functionLinenumber: 713
    functionLinenumberEnd: 716
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:721,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:721,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 719
    functionDepth: 0
    functionLinenumber: 719
    functionLinenumberEnd: 722
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:727,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:727,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 725
    functionDepth: 0
    functionLinenumber: 725
    functionLinenumberEnd: 728
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:732,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 730
    functionDepth: 0
    functionLinenumber: 730
    functionLinenumberEnd: 733
    functionName: nonstd::expected_lite::detail::storage_t_impl::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 735
    functionDepth: 0
    functionLinenumber: 735
    functionLinenumberEnd: 738
    functionName: '& value() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 740
    functionDepth: 0
    functionLinenumber: 740
    functionLinenumberEnd: 743
    functionName: '& value() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:747,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 745
    functionDepth: 0
    functionLinenumber: 745
    functionLinenumberEnd: 748
    functionName: '&& value() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:752,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 753
    functionName: '&& value() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 755
    functionDepth: 0
    functionLinenumber: 755
    functionLinenumberEnd: 758
    functionName: nonstd::expected_lite::detail::storage_t_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 760
    functionDepth: 0
    functionLinenumber: 760
    functionLinenumberEnd: 763
    functionName: nonstd::expected_lite::detail::storage_t_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 765
    functionDepth: 0
    functionLinenumber: 765
    functionLinenumberEnd: 768
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 770
    functionDepth: 0
    functionLinenumber: 770
    functionLinenumberEnd: 773
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:777,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 775
    functionDepth: 0
    functionLinenumber: 775
    functionLinenumberEnd: 778
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:782,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 780
    functionDepth: 0
    functionLinenumber: 780
    functionLinenumberEnd: 783
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 785
    functionDepth: 0
    functionLinenumber: 785
    functionLinenumberEnd: 788
    functionName: nonstd::expected_lite::detail::storage_t_impl::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 790
    functionDepth: 0
    functionLinenumber: 790
    functionLinenumberEnd: 793
    functionName: nonstd::expected_lite::detail::storage_t_impl::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 817
    functionDepth: 0
    functionLinenumber: 817
    functionLinenumberEnd: 817
    functionName: nonstd::expected_lite::detail::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 818
    functionDepth: 0
    functionLinenumber: 818
    functionLinenumberEnd: 818
    functionName: ~storage_t_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 820
    functionDepth: 0
    functionLinenumber: 820
    functionLinenumberEnd: 822
    functionName: nonstd::expected_lite::detail::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:826,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 824
    functionDepth: 0
    functionLinenumber: 824
    functionLinenumberEnd: 827
    functionName: nonstd::expected_lite::detail::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:831,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:831,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 829
    functionDepth: 0
    functionLinenumber: 829
    functionLinenumberEnd: 832
    functionName: nonstd::expected_lite::detail::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:837,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:837,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 835
    functionDepth: 0
    functionLinenumber: 835
    functionLinenumberEnd: 838
    functionName: nonstd::expected_lite::detail::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:843,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:843,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 844
      start: 841
    functionDepth: 0
    functionLinenumber: 841
    functionLinenumberEnd: 844
    functionName: nonstd::expected_lite::detail::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 846
    functionDepth: 0
    functionLinenumber: 846
    functionLinenumberEnd: 849
    functionName: nonstd::expected_lite::detail::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 851
    functionDepth: 0
    functionLinenumber: 851
    functionLinenumberEnd: 854
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 856
    functionDepth: 0
    functionLinenumber: 856
    functionLinenumberEnd: 859
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:863,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 861
    functionDepth: 0
    functionLinenumber: 861
    functionLinenumberEnd: 864
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:868,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 869
      start: 866
    functionDepth: 0
    functionLinenumber: 866
    functionLinenumberEnd: 869
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 871
    functionDepth: 0
    functionLinenumber: 871
    functionLinenumberEnd: 874
    functionName: nonstd::expected_lite::detail::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 876
    functionDepth: 0
    functionLinenumber: 876
    functionLinenumberEnd: 879
    functionName: nonstd::expected_lite::detail::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 901
    functionDepth: 0
    functionLinenumber: 901
    functionLinenumberEnd: 901
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 902
    functionDepth: 0
    functionLinenumber: 902
    functionLinenumberEnd: 902
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 904
    functionDepth: 0
    functionLinenumber: 904
    functionLinenumberEnd: 906
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 908
    functionDepth: 0
    functionLinenumber: 908
    functionLinenumberEnd: 908
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - '      other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 909
    functionDepth: 0
    functionLinenumber: 909
    functionLinenumberEnd: 909
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t &&      other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 917
      start: 917
    functionDepth: 0
    functionLinenumber: 917
    functionLinenumberEnd: 917
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 918
      start: 918
    functionDepth: 0
    functionLinenumber: 918
    functionLinenumberEnd: 918
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 920
    functionDepth: 0
    functionLinenumber: 920
    functionLinenumberEnd: 922
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:925,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:928,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:928,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 924
    functionDepth: 1
    functionLinenumber: 924
    functionLinenumberEnd: 929
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:932,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 931
    functionDepth: 1
    functionLinenumber: 931
    functionLinenumberEnd: 936
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t(storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 943
    functionDepth: 0
    functionLinenumber: 943
    functionLinenumberEnd: 943
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 944
    functionDepth: 0
    functionLinenumber: 944
    functionLinenumberEnd: 944
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 946
    functionDepth: 0
    functionLinenumber: 946
    functionLinenumberEnd: 948
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:951,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:953,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:954,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:954,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 950
    functionDepth: 0
    functionLinenumber: 950
    functionLinenumberEnd: 955
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
    - has_value
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:958,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:960,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 957
    functionDepth: 0
    functionLinenumber: 957
    functionLinenumberEnd: 962
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t(storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 969
      start: 969
    functionDepth: 0
    functionLinenumber: 969
    functionLinenumberEnd: 969
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 970
      start: 970
    functionDepth: 0
    functionLinenumber: 970
    functionLinenumberEnd: 970
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 972
    functionDepth: 0
    functionLinenumber: 972
    functionLinenumberEnd: 974
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:977,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:980,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:980,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 976
    functionDepth: 1
    functionLinenumber: 976
    functionLinenumberEnd: 981
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::has_value
    - has_value
    - value
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_error
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 983
    functionDepth: 0
    functionLinenumber: 983
    functionLinenumberEnd: 983
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 990
      start: 990
    functionDepth: 0
    functionLinenumber: 990
    functionLinenumberEnd: 990
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 991
    functionDepth: 0
    functionLinenumber: 991
    functionLinenumberEnd: 991
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 995
      start: 993
    functionDepth: 0
    functionLinenumber: 993
    functionLinenumberEnd: 995
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:998,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, false>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1000,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, false>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1001,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1001,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1002
      start: 997
    functionDepth: 0
    functionLinenumber: 997
    functionLinenumberEnd: 1002
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - error
    - nonstd::expected_lite::detail::storage_t<void, E, true, false>::construct_error
    - nonstd::expected_lite::detail::storage_t<void, E, true, false>::has_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 1004
    functionDepth: 0
    functionLinenumber: 1004
    functionLinenumberEnd: 1004
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1011
      start: 1011
    functionDepth: 0
    functionLinenumber: 1011
    functionLinenumberEnd: 1011
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1012
      start: 1012
    functionDepth: 0
    functionLinenumber: 1012
    functionLinenumberEnd: 1012
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 1014
    functionDepth: 0
    functionLinenumber: 1014
    functionLinenumberEnd: 1016
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 1018
    functionDepth: 0
    functionLinenumber: 1018
    functionLinenumberEnd: 1018
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1021,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 1020
    functionDepth: 1
    functionLinenumber: 1020
    functionLinenumberEnd: 1025
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::has_value
    - has_value
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_value
    - value
    - std::move
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_error
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1032
      start: 1032
    functionDepth: 0
    functionLinenumber: 1032
    functionLinenumberEnd: 1032
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 1033
    functionDepth: 0
    functionLinenumber: 1033
    functionLinenumberEnd: 1033
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1037
      start: 1035
    functionDepth: 0
    functionLinenumber: 1035
    functionLinenumberEnd: 1037
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1039
      start: 1039
    functionDepth: 0
    functionLinenumber: 1039
    functionLinenumberEnd: 1039
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1042,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, false, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1044,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, false, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1041
    functionDepth: 0
    functionLinenumber: 1041
    functionLinenumberEnd: 1046
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - nonstd::expected_lite::detail::storage_t<void, E, false, true>::has_value
    - error
    - nonstd::expected_lite::detail::storage_t<void, E, false, true>::construct_error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1065,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1065,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1067,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1067,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1068
      start: 1063
    functionDepth: 1
    functionLinenumber: 1063
    functionLinenumberEnd: 1068
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( (std::forward<
      ObjectT >( obj ).*memfnptr)( std::forward< Args >( args )... ) ) )\n        ->
      decltype( (std::forward< ObjectT >( obj ).*memfnptr)( std::forward< Args >(
      args )...) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1078,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1078,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1080,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1080,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1081
      start: 1076
    functionDepth: 1
    functionLinenumber: 1076
    functionLinenumberEnd: 1081
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - get
    - noexcept
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( (obj.get().*memfnptr)(
      std::forward< Args >( args ) ... ) ) )\n        -> decltype( (obj.get().*memfnptr)(
      std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1093,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1093,1
    - Dst: std::forward<ObjectT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1095,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1095,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 1091
    functionDepth: 1
    functionLinenumber: 1091
    functionLinenumberEnd: 1096
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::forward<ObjectT>
    - std::forward< ObjectT >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( ((*std::forward<
      ObjectT >( obj )).*memfnptr)( std::forward< Args >( args ) ... ) ) )\n        ->
      decltype( ((*std::forward< ObjectT >( obj )).*memfnptr)( std::forward< Args
      >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1105,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1105,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1106,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1104
    functionDepth: 1
    functionLinenumber: 1104
    functionLinenumberEnd: 1109
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( std::forward< ObjectT >( obj ).*memobjptr
      ) )\n        -> decltype( std::forward< ObjectT >( obj ).*memobjptr )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1117,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1117,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1118,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1116
    functionDepth: 1
    functionLinenumber: 1116
    functionLinenumberEnd: 1121
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - get
    - noexcept
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( obj.get().*memobjptr ) )\n        ->
      decltype( obj.get().*memobjptr )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1131,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1131,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1132,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1130
    functionDepth: 1
    functionLinenumber: 1130
    functionLinenumberEnd: 1135
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( (*std::forward< ObjectT >( obj
      )).*memobjptr ) )\n        -> decltype( (*std::forward< ObjectT >( obj )).*memobjptr
      )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1147
      start: 1142
    functionDepth: 2
    functionLinenumber: 1142
    functionLinenumberEnd: 1147
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke_member_function_impl
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( invoke_member_function_impl( std::forward< F >( f ), std::forward<
      Args >( args ) ... ) ) )\n        -> decltype( invoke_member_function_impl(
      std::forward< F >( f ), std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1159
      start: 1154
    functionDepth: 2
    functionLinenumber: 1154
    functionLinenumberEnd: 1159
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - nonstd::expected_lite::detail::invoke_member_object_impl
    - std::forward< F >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( invoke_member_object_impl( std::forward< F >( f ), std::forward< Args
      >( args ) ... ) ) )\n        -> decltype( invoke_member_object_impl( std::forward<
      F >( f ), std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1169,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1169,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1171,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1171,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1172
      start: 1162
    functionDepth: 1
    functionLinenumber: 1162
    functionLinenumberEnd: 1172
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::forward< F >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_REQUIRES_T
    signature: "nsel_REQUIRES_T invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( std::forward< F >( f )( std::forward< Args >( args ) ... ) ) )\n        ->
      decltype( std::forward< F >( f )( std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 523
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_noncopy_nonmove_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 524
    functionDepth: 0
    functionLinenumber: 524
    functionLinenumberEnd: 524
    functionName: ~storage_t_noncopy_nonmove_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_noncopy_nonmove_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 526
    functionDepth: 0
    functionLinenumber: 526
    functionLinenumberEnd: 528
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_noncopy_nonmove_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:532,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 530
    functionDepth: 0
    functionLinenumber: 530
    functionLinenumberEnd: 533
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:548,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 546
    functionDepth: 0
    functionLinenumber: 546
    functionLinenumberEnd: 549
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:554,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:554,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 555
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 560
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~value_type
    linkageType: ''
    returnType: void
    signature: void destruct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:575,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:575,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 573
    functionDepth: 0
    functionLinenumber: 573
    functionLinenumberEnd: 576
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:581,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:581,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 582
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 584
    functionDepth: 0
    functionLinenumber: 584
    functionLinenumberEnd: 587
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 589
    functionDepth: 0
    functionLinenumber: 589
    functionLinenumberEnd: 592
    functionName: '& value() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 597
    functionName: '& value() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:601,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 599
    functionDepth: 0
    functionLinenumber: 599
    functionLinenumberEnd: 602
    functionName: '&& value() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:606,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 604
    functionDepth: 0
    functionLinenumber: 604
    functionLinenumberEnd: 607
    functionName: '&& value() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 609
    functionDepth: 0
    functionLinenumber: 609
    functionLinenumberEnd: 612
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 614
    functionDepth: 0
    functionLinenumber: 614
    functionLinenumberEnd: 617
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 619
    functionDepth: 0
    functionLinenumber: 619
    functionLinenumberEnd: 622
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 624
    functionDepth: 0
    functionLinenumber: 624
    functionLinenumberEnd: 627
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:631,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 629
    functionDepth: 0
    functionLinenumber: 629
    functionLinenumberEnd: 632
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:636,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 634
    functionDepth: 0
    functionLinenumber: 634
    functionLinenumberEnd: 637
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 639
    functionDepth: 0
    functionLinenumber: 639
    functionLinenumberEnd: 642
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 644
    functionDepth: 0
    functionLinenumber: 644
    functionLinenumberEnd: 647
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 669
    functionDepth: 0
    functionLinenumber: 669
    functionLinenumberEnd: 669
    functionName: nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 670
    functionDepth: 0
    functionLinenumber: 670
    functionLinenumberEnd: 670
    functionName: ~storage_t_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 674
    functionName: nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 676
    functionDepth: 0
    functionLinenumber: 676
    functionLinenumberEnd: 679
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:683,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 681
    functionDepth: 0
    functionLinenumber: 681
    functionLinenumberEnd: 684
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value( value_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:688,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:688,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 686
    functionDepth: 0
    functionLinenumber: 686
    functionLinenumberEnd: 689
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_value( value_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:694,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:694,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 692
    functionDepth: 0
    functionLinenumber: 692
    functionLinenumberEnd: 695
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:700,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:700,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 698
    functionDepth: 0
    functionLinenumber: 698
    functionLinenumberEnd: 701
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 703
    functionDepth: 0
    functionLinenumber: 703
    functionLinenumberEnd: 706
    functionName: nonstd::expected_lite::detail::storage_t_impl::destruct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~value_type
    linkageType: ''
    returnType: void
    signature: void destruct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:710,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 708
    functionDepth: 0
    functionLinenumber: 708
    functionLinenumberEnd: 711
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:715,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:715,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 713
    functionDepth: 0
    functionLinenumber: 713
    functionLinenumberEnd: 716
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:721,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:721,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 719
    functionDepth: 0
    functionLinenumber: 719
    functionLinenumberEnd: 722
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:727,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:727,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 725
    functionDepth: 0
    functionLinenumber: 725
    functionLinenumberEnd: 728
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:732,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 730
    functionDepth: 0
    functionLinenumber: 730
    functionLinenumberEnd: 733
    functionName: nonstd::expected_lite::detail::storage_t_impl::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 735
    functionDepth: 0
    functionLinenumber: 735
    functionLinenumberEnd: 738
    functionName: '& value() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 740
    functionDepth: 0
    functionLinenumber: 740
    functionLinenumberEnd: 743
    functionName: '& value() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:747,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 745
    functionDepth: 0
    functionLinenumber: 745
    functionLinenumberEnd: 748
    functionName: '&& value() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:752,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 753
    functionName: '&& value() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 755
    functionDepth: 0
    functionLinenumber: 755
    functionLinenumberEnd: 758
    functionName: nonstd::expected_lite::detail::storage_t_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 760
    functionDepth: 0
    functionLinenumber: 760
    functionLinenumberEnd: 763
    functionName: nonstd::expected_lite::detail::storage_t_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 765
    functionDepth: 0
    functionLinenumber: 765
    functionLinenumberEnd: 768
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 770
    functionDepth: 0
    functionLinenumber: 770
    functionLinenumberEnd: 773
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:777,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 775
    functionDepth: 0
    functionLinenumber: 775
    functionLinenumberEnd: 778
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:782,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 780
    functionDepth: 0
    functionLinenumber: 780
    functionLinenumberEnd: 783
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 785
    functionDepth: 0
    functionLinenumber: 785
    functionLinenumberEnd: 788
    functionName: nonstd::expected_lite::detail::storage_t_impl::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 790
    functionDepth: 0
    functionLinenumber: 790
    functionLinenumberEnd: 793
    functionName: nonstd::expected_lite::detail::storage_t_impl::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 817
    functionDepth: 0
    functionLinenumber: 817
    functionLinenumberEnd: 817
    functionName: nonstd::expected_lite::detail::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 818
    functionDepth: 0
    functionLinenumber: 818
    functionLinenumberEnd: 818
    functionName: ~storage_t_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 820
    functionDepth: 0
    functionLinenumber: 820
    functionLinenumberEnd: 822
    functionName: nonstd::expected_lite::detail::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:826,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 824
    functionDepth: 0
    functionLinenumber: 824
    functionLinenumberEnd: 827
    functionName: nonstd::expected_lite::detail::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:831,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:831,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 829
    functionDepth: 0
    functionLinenumber: 829
    functionLinenumberEnd: 832
    functionName: nonstd::expected_lite::detail::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:837,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:837,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 835
    functionDepth: 0
    functionLinenumber: 835
    functionLinenumberEnd: 838
    functionName: nonstd::expected_lite::detail::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:843,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:843,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 844
      start: 841
    functionDepth: 0
    functionLinenumber: 841
    functionLinenumberEnd: 844
    functionName: nonstd::expected_lite::detail::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 846
    functionDepth: 0
    functionLinenumber: 846
    functionLinenumberEnd: 849
    functionName: nonstd::expected_lite::detail::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 851
    functionDepth: 0
    functionLinenumber: 851
    functionLinenumberEnd: 854
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 856
    functionDepth: 0
    functionLinenumber: 856
    functionLinenumberEnd: 859
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:863,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 861
    functionDepth: 0
    functionLinenumber: 861
    functionLinenumberEnd: 864
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:868,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 869
      start: 866
    functionDepth: 0
    functionLinenumber: 866
    functionLinenumberEnd: 869
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 871
    functionDepth: 0
    functionLinenumber: 871
    functionLinenumberEnd: 874
    functionName: nonstd::expected_lite::detail::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 876
    functionDepth: 0
    functionLinenumber: 876
    functionLinenumberEnd: 879
    functionName: nonstd::expected_lite::detail::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 901
    functionDepth: 0
    functionLinenumber: 901
    functionLinenumberEnd: 901
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 902
    functionDepth: 0
    functionLinenumber: 902
    functionLinenumberEnd: 902
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 904
    functionDepth: 0
    functionLinenumber: 904
    functionLinenumberEnd: 906
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 908
    functionDepth: 0
    functionLinenumber: 908
    functionLinenumberEnd: 908
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - '      other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 909
    functionDepth: 0
    functionLinenumber: 909
    functionLinenumberEnd: 909
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t &&      other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 917
      start: 917
    functionDepth: 0
    functionLinenumber: 917
    functionLinenumberEnd: 917
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 918
      start: 918
    functionDepth: 0
    functionLinenumber: 918
    functionLinenumberEnd: 918
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 920
    functionDepth: 0
    functionLinenumber: 920
    functionLinenumberEnd: 922
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:925,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:928,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:928,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 924
    functionDepth: 1
    functionLinenumber: 924
    functionLinenumberEnd: 929
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:932,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 931
    functionDepth: 1
    functionLinenumber: 931
    functionLinenumberEnd: 936
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t(storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 943
    functionDepth: 0
    functionLinenumber: 943
    functionLinenumberEnd: 943
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 944
    functionDepth: 0
    functionLinenumber: 944
    functionLinenumberEnd: 944
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 946
    functionDepth: 0
    functionLinenumber: 946
    functionLinenumberEnd: 948
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:951,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:953,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:954,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:954,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 950
    functionDepth: 0
    functionLinenumber: 950
    functionLinenumberEnd: 955
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
    - has_value
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:958,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:960,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 957
    functionDepth: 0
    functionLinenumber: 957
    functionLinenumberEnd: 962
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t(storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 969
      start: 969
    functionDepth: 0
    functionLinenumber: 969
    functionLinenumberEnd: 969
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 970
      start: 970
    functionDepth: 0
    functionLinenumber: 970
    functionLinenumberEnd: 970
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 972
    functionDepth: 0
    functionLinenumber: 972
    functionLinenumberEnd: 974
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:977,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:980,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:980,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 976
    functionDepth: 1
    functionLinenumber: 976
    functionLinenumberEnd: 981
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::has_value
    - has_value
    - value
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_error
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 983
    functionDepth: 0
    functionLinenumber: 983
    functionLinenumberEnd: 983
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 990
      start: 990
    functionDepth: 0
    functionLinenumber: 990
    functionLinenumberEnd: 990
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 991
    functionDepth: 0
    functionLinenumber: 991
    functionLinenumberEnd: 991
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 995
      start: 993
    functionDepth: 0
    functionLinenumber: 993
    functionLinenumberEnd: 995
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:998,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, false>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1000,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, false>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1001,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1001,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1002
      start: 997
    functionDepth: 0
    functionLinenumber: 997
    functionLinenumberEnd: 1002
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - error
    - nonstd::expected_lite::detail::storage_t<void, E, true, false>::construct_error
    - nonstd::expected_lite::detail::storage_t<void, E, true, false>::has_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 1004
    functionDepth: 0
    functionLinenumber: 1004
    functionLinenumberEnd: 1004
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1011
      start: 1011
    functionDepth: 0
    functionLinenumber: 1011
    functionLinenumberEnd: 1011
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1012
      start: 1012
    functionDepth: 0
    functionLinenumber: 1012
    functionLinenumberEnd: 1012
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 1014
    functionDepth: 0
    functionLinenumber: 1014
    functionLinenumberEnd: 1016
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 1018
    functionDepth: 0
    functionLinenumber: 1018
    functionLinenumberEnd: 1018
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1021,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 1020
    functionDepth: 1
    functionLinenumber: 1020
    functionLinenumberEnd: 1025
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::has_value
    - has_value
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_value
    - value
    - std::move
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_error
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1032
      start: 1032
    functionDepth: 0
    functionLinenumber: 1032
    functionLinenumberEnd: 1032
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 1033
    functionDepth: 0
    functionLinenumber: 1033
    functionLinenumberEnd: 1033
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1037
      start: 1035
    functionDepth: 0
    functionLinenumber: 1035
    functionLinenumberEnd: 1037
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1039
      start: 1039
    functionDepth: 0
    functionLinenumber: 1039
    functionLinenumberEnd: 1039
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1042,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, false, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1044,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, false, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1041
    functionDepth: 0
    functionLinenumber: 1041
    functionLinenumberEnd: 1046
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - nonstd::expected_lite::detail::storage_t<void, E, false, true>::has_value
    - error
    - nonstd::expected_lite::detail::storage_t<void, E, false, true>::construct_error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1065,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1065,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1067,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1067,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1068
      start: 1063
    functionDepth: 1
    functionLinenumber: 1063
    functionLinenumberEnd: 1068
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 1
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( (std::forward<
      ObjectT >( obj ).*memfnptr)( std::forward< Args >( args )... ) ) )\n        ->
      decltype( (std::forward< ObjectT >( obj ).*memfnptr)( std::forward< Args >(
      args )...) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1078,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1078,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1080,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1080,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1081
      start: 1076
    functionDepth: 1
    functionLinenumber: 1076
    functionLinenumberEnd: 1081
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 1
    functionsReached:
    - get
    - noexcept
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( (obj.get().*memfnptr)(
      std::forward< Args >( args ) ... ) ) )\n        -> decltype( (obj.get().*memfnptr)(
      std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1093,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1093,1
    - Dst: std::forward<ObjectT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1095,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1095,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 1091
    functionDepth: 1
    functionLinenumber: 1091
    functionLinenumberEnd: 1096
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 1
    functionsReached:
    - noexcept
    - std::forward<ObjectT>
    - std::forward< ObjectT >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( ((*std::forward<
      ObjectT >( obj )).*memfnptr)( std::forward< Args >( args ) ... ) ) )\n        ->
      decltype( ((*std::forward< ObjectT >( obj )).*memfnptr)( std::forward< Args
      >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1105,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1105,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1106,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1104
    functionDepth: 1
    functionLinenumber: 1104
    functionLinenumberEnd: 1109
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 1
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( std::forward< ObjectT >( obj ).*memobjptr
      ) )\n        -> decltype( std::forward< ObjectT >( obj ).*memobjptr )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1117,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1117,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1118,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1116
    functionDepth: 1
    functionLinenumber: 1116
    functionLinenumberEnd: 1121
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 1
    functionsReached:
    - get
    - noexcept
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( obj.get().*memobjptr ) )\n        ->
      decltype( obj.get().*memobjptr )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1131,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1131,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1132,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1130
    functionDepth: 1
    functionLinenumber: 1130
    functionLinenumberEnd: 1135
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 1
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( (*std::forward< ObjectT >( obj
      )).*memobjptr ) )\n        -> decltype( (*std::forward< ObjectT >( obj )).*memobjptr
      )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1147
      start: 1142
    functionDepth: 2
    functionLinenumber: 1142
    functionLinenumberEnd: 1147
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke_member_function_impl
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( invoke_member_function_impl( std::forward< F >( f ), std::forward<
      Args >( args ) ... ) ) )\n        -> decltype( invoke_member_function_impl(
      std::forward< F >( f ), std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1159
      start: 1154
    functionDepth: 2
    functionLinenumber: 1154
    functionLinenumberEnd: 1159
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - nonstd::expected_lite::detail::invoke_member_object_impl
    - std::forward< F >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( invoke_member_object_impl( std::forward< F >( f ), std::forward< Args
      >( args ) ... ) ) )\n        -> decltype( invoke_member_object_impl( std::forward<
      F >( f ), std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1169,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1169,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1171,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1171,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1172
      start: 1162
    functionDepth: 1
    functionLinenumber: 1162
    functionLinenumberEnd: 1172
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::forward< F >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_REQUIRES_T
    signature: "nsel_REQUIRES_T invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( std::forward< F >( f )( std::forward< Args >( args ) ... ) ) )\n        ->
      decltype( std::forward< F >( f )( std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1208
      start: 1208
    functionDepth: 0
    functionLinenumber: 1208
    functionLinenumberEnd: 1208
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type const & )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1209
      start: 1209
    functionDepth: 0
    functionLinenumber: 1209
    functionLinenumberEnd: 1209
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type && )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1218
      start: 1216
    functionDepth: 0
    functionLinenumber: 1216
    functionLinenumberEnd: 1218
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void unexpected_type( nonstd_lite_in_place_t(E), Args &&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1226,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1225
    functionDepth: 0
    functionLinenumber: 1225
    functionLinenumberEnd: 1227
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void unexpected_type( nonstd_lite_in_place_t(E), std::initializer_list<U>
      il, Args &&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<E2>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1237,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - E2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1238
      start: 1236
    functionDepth: 0
    functionLinenumber: 1236
    functionLinenumberEnd: 1238
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<E2>
    linkageType: ''
    returnType: void
    signature: void unexpected_type( E2 && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1254
    functionDepth: 1
    functionLinenumber: 1254
    functionLinenumberEnd: 1256
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type<E2> const & error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1274
      start: 1272
    functionDepth: 1
    functionLinenumber: 1272
    functionLinenumberEnd: 1274
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type<E2> const & error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1291,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1292
      start: 1290
    functionDepth: 1
    functionLinenumber: 1290
    functionLinenumberEnd: 1292
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::error
    - std::move
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type<E2> && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1309,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1309,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1310
      start: 1308
    functionDepth: 1
    functionLinenumber: 1308
    functionLinenumberEnd: 1310
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::error
    - std::move
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type<E2> && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1314
      start: 1314
    functionDepth: 0
    functionLinenumber: 1314
    functionLinenumberEnd: 1314
    functionName: '& operator=( unexpected_type const & )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & operator=( unexpected_type const & )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1315
      start: 1315
    functionDepth: 0
    functionLinenumber: 1315
    functionLinenumberEnd: 1315
    functionName: '& operator=( unexpected_type && )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & operator=( unexpected_type && )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1320,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1322
      start: 1318
    functionDepth: 1
    functionLinenumber: 1318
    functionLinenumberEnd: 1322
    functionName: '& operator=( unexpected_type<E2> const & other )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::swap
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & operator=( unexpected_type<E2> const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1327,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1327,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1327,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1329
      start: 1325
    functionDepth: 1
    functionLinenumber: 1325
    functionLinenumberEnd: 1329
    functionName: '& operator=( unexpected_type<E2> && other )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::error
    - std::move
    - nonstd::expected_lite::swap
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & operator=( unexpected_type<E2> && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1336
      start: 1333
    functionDepth: 0
    functionLinenumber: 1333
    functionLinenumberEnd: 1336
    functionName: '& error() & noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & error() & noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1338
    functionDepth: 0
    functionLinenumber: 1338
    functionLinenumberEnd: 1341
    functionName: '& error() const & noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & error() const & noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1347,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1348
      start: 1345
    functionDepth: 0
    functionLinenumber: 1345
    functionLinenumberEnd: 1348
    functionName: '&& error() && noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() && noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1352,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1353
      start: 1350
    functionDepth: 0
    functionLinenumber: 1350
    functionLinenumberEnd: 1353
    functionName: '&& error() const && noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: E
    signature: E && error() const && noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1364
      start: 1361
    functionDepth: 0
    functionLinenumber: 1361
    functionLinenumberEnd: 1364
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & value() & noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1371
      start: 1368
    functionDepth: 0
    functionLinenumber: 1368
    functionLinenumberEnd: 1371
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & value() const & noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1379,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1380
      start: 1377
    functionDepth: 0
    functionLinenumber: 1377
    functionLinenumberEnd: 1380
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: E
    signature: E && value() && noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1386,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1384
    functionDepth: 0
    functionLinenumber: 1384
    functionLinenumberEnd: 1387
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: E
    signature: E && value() const && noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - unexpected_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1403
      start: 1397
    functionDepth: 0
    functionLinenumber: 1397
    functionLinenumberEnd: 1403
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 3
    functionsReached:
    - nonstd::expected_lite::swap
    linkageType: ''
    returnType: void
    signature: "void swap( unexpected_type & other ) noexcept (\n        std17::is_nothrow_swappable<U>::value\n
      \   )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1433
      start: 1433
    functionDepth: 0
    functionLinenumber: 1433
    functionLinenumberEnd: 1433
    functionName: nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void unexpected_type()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1435
      start: 1435
    functionDepth: 0
    functionLinenumber: 1435
    functionLinenumberEnd: 1435
    functionName: ~unexpected_type()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~unexpected_type()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - std::exception_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1439
      start: 1437
    functionDepth: 0
    functionLinenumber: 1437
    functionLinenumberEnd: 1439
    functionName: nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void unexpected_type( std::exception_ptr const & error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1442,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - std::exception_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1443
      start: 1441
    functionDepth: 0
    functionLinenumber: 1441
    functionLinenumberEnd: 1443
    functionName: nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void unexpected_type(std::exception_ptr && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_exception_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - error
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1448
      start: 1446
    functionDepth: 0
    functionLinenumber: 1446
    functionLinenumberEnd: 1448
    functionName: nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::make_exception_ptr
    linkageType: ''
    returnType: void
    signature: void unexpected_type( E error )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1453
      start: 1450
    functionDepth: 0
    functionLinenumber: 1450
    functionLinenumberEnd: 1453
    functionName: '& value() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::exception_ptr
    signature: std::exception_ptr & value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1458
      start: 1455
    functionDepth: 0
    functionLinenumber: 1455
    functionLinenumberEnd: 1458
    functionName: '& value()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::exception_ptr
    signature: std::exception_ptr & value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1472,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1472,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E1>
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1473
      start: 1470
    functionDepth: 1
    functionLinenumber: 1470
    functionLinenumberEnd: 1473
    functionName: operator==( unexpected_type<E1> const & x, unexpected_type<E2> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: bool
    signature: bool operator==( unexpected_type<E1> const & x, unexpected_type<E2>
      const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E1>
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1479
      start: 1476
    functionDepth: 0
    functionLinenumber: 1476
    functionLinenumberEnd: 1479
    functionName: operator!=( unexpected_type<E1> const & x, unexpected_type<E2> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( unexpected_type<E1> const & x, unexpected_type<E2>
      const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1486,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1487
      start: 1484
    functionDepth: 1
    functionLinenumber: 1484
    functionLinenumberEnd: 1487
    functionName: operator<( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: bool
    signature: bool operator<( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1493
      start: 1490
    functionDepth: 0
    functionLinenumber: 1490
    functionLinenumberEnd: 1493
    functionName: operator>( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1499
      start: 1496
    functionDepth: 0
    functionLinenumber: 1496
    functionLinenumberEnd: 1499
    functionName: operator<=( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1505
      start: 1502
    functionDepth: 0
    functionLinenumber: 1502
    functionLinenumberEnd: 1505
    functionName: operator>=( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1516,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1516,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1518,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1519
      start: 1516
    functionDepth: 1
    functionLinenumber: 1516
    functionLinenumberEnd: 1519
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 4
    functionsReached:
    - noexcept
    - nonstd::expected_lite::swap
    linkageType: ''
    returnType: void
    signature: void swap( unexpected_type<E> & x, unexpected_type<E> & y) noexcept
      ( noexcept ( x.swap(y) ) )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1528
      start: 1525
    functionDepth: 0
    functionLinenumber: 1525
    functionLinenumberEnd: 1528
    functionName: operator<( unexpected_type<std::exception_ptr> const & /*x*/, unexpected_type<std::exception_ptr>
      const & /*y*/ )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<( unexpected_type<std::exception_ptr> const & /*x*/,
      unexpected_type<std::exception_ptr> const & /*y*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1530
    functionDepth: 0
    functionLinenumber: 1530
    functionLinenumberEnd: 1533
    functionName: operator>( unexpected_type<std::exception_ptr> const & /*x*/, unexpected_type<std::exception_ptr>
      const & /*y*/ )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( unexpected_type<std::exception_ptr> const & /*x*/,
      unexpected_type<std::exception_ptr> const & /*y*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<std::exception_ptr>
    - unexpected_type<std::exception_ptr>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1538
      start: 1535
    functionDepth: 0
    functionLinenumber: 1535
    functionLinenumberEnd: 1538
    functionName: operator<=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
      const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
      const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<std::exception_ptr>
    - unexpected_type<std::exception_ptr>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1543
      start: 1540
    functionDepth: 0
    functionLinenumber: 1540
    functionLinenumberEnd: 1543
    functionName: operator>=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
      const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
      const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::unexpected_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1567,1
    - Dst: std::forward<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1567,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1568
      start: 1564
    functionDepth: 1
    functionLinenumber: 1564
    functionLinenumberEnd: 1568
    functionName: nonstd::expected_lite::make_unexpected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<E>
    - nonstd::expected_lite::unexpected_type
    linkageType: ''
    returnType: nsel_constexpr14 auto
    signature: nsel_constexpr14 auto make_unexpected( E && value ) -> unexpected_type<
      typename std::decay<E>::type >
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::unexpected_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1575,1
    - Dst: std::current_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1576
      start: 1572
    functionDepth: 1
    functionLinenumber: 1572
    functionLinenumberEnd: 1576
    functionName: nonstd::expected_lite::make_unexpected_from_current_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::current_exception
    - nonstd::expected_lite::unexpected_type
    linkageType: ''
    returnType: auto
    signature: auto make_unexpected_from_current_exception() -> unexpected_type< std::exception_ptr
      >
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1593
      start: 1591
    functionDepth: 0
    functionLinenumber: 1591
    functionLinenumberEnd: 1593
    functionName: nonstd::expected_lite::bad_expected_access< void >::bad_expected_access
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void bad_expected_access()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - error
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1608
      start: 1606
    functionDepth: 0
    functionLinenumber: 1606
    functionLinenumberEnd: 1608
    functionName: nonstd::expected_lite::bad_expected_access::bad_expected_access
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void bad_expected_access( error_type error )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1613
      start: 1610
    functionDepth: 0
    functionLinenumber: 1610
    functionLinenumberEnd: 1613
    functionName: nonstd::expected_lite::bad_expected_access::what
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * what() const noexcept override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1618
      start: 1615
    functionDepth: 0
    functionLinenumber: 1615
    functionLinenumberEnd: 1618
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1623
      start: 1620
    functionDepth: 0
    functionLinenumber: 1620
    functionLinenumberEnd: 1623
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1629,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1630
      start: 1627
    functionDepth: 0
    functionLinenumber: 1627
    functionLinenumberEnd: 1630
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1634,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1635
      start: 1632
    functionDepth: 0
    functionLinenumber: 1632
    functionLinenumberEnd: 1635
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1658
    functionDepth: 0
    functionLinenumber: 1658
    functionLinenumberEnd: 1658
    functionName: nonstd::expected_lite::detail::text
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool text( char const * /*text*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1658
    functionDepth: 0
    functionLinenumber: 1658
    functionLinenumberEnd: 1658
    functionName: nonstd::expected_lite::detail::text
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool text( char const * /*text*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RaiseException
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1667,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1669,1
    - Dst: nonstd::expected_lite::detail::text
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1669,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( false && detail::text("throw bad_expected_access<Error>{ e };")
        )
      pos:
        line_end: 1668
        line_start: 1668
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 1671
      start: 1664
    functionDepth: 1
    functionLinenumber: 1664
    functionLinenumberEnd: 1671
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - assert
    - RaiseException
    - nonstd::expected_lite::detail::text
    linkageType: ''
    returnType: void
    signature: void rethrow( Error const & /*e*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RaiseException
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1680,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1682,1
    - Dst: nonstd::expected_lite::detail::text
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1682,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( false && detail::text("throw bad_expected_access<std::exception_ptr>{
        e };") )
      pos:
        line_end: 1681
        line_start: 1681
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 1684
      start: 1677
    functionDepth: 1
    functionLinenumber: 1677
    functionLinenumberEnd: 1684
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - assert
    - RaiseException
    - nonstd::expected_lite::detail::text
    linkageType: ''
    returnType: void
    signature: void rethrow( std::exception_ptr const & /*e*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RaiseException
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1693,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1695,1
    - Dst: nonstd::expected_lite::detail::text
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1695,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( false && detail::text("throw std::system_error( e );") )
      pos:
        line_end: 1694
        line_start: 1694
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 1697
      start: 1690
    functionDepth: 1
    functionLinenumber: 1690
    functionLinenumberEnd: 1697
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - assert
    - RaiseException
    - nonstd::expected_lite::detail::text
    linkageType: ''
    returnType: void
    signature: void rethrow( std::error_code const & /*e*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - Error
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1708
      start: 1705
    functionDepth: 0
    functionLinenumber: 1705
    functionLinenumberEnd: 1708
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void rethrow( Error const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::rethrow_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1716,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - std::exception_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1717
      start: 1714
    functionDepth: 0
    functionLinenumber: 1714
    functionLinenumberEnd: 1717
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::rethrow_exception
    linkageType: ''
    returnType: void
    signature: void rethrow( std::exception_ptr const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::system_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1725,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - std::error_code
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1726
      start: 1723
    functionDepth: 0
    functionLinenumber: 1723
    functionLinenumberEnd: 1726
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::system_error
    linkageType: ''
    returnType: void
    signature: void rethrow( std::error_code const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: nonstd::expected_lite::std17::detail::satisfies
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::declval<T&>
    - noexcept
    - swap
    linkageType: ''
    returnType: bool
    signature: bool satisfies()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 449
    functionName: nonstd::expected_lite::std17::detail::test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto test( int ) -> std::integral_constant<bool, satisfies<T>()>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: nonstd::expected_lite::std17::detail::satisfies
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::declval<T&>
    - noexcept
    - swap
    linkageType: ''
    returnType: bool
    signature: bool satisfies()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 449
    functionName: nonstd::expected_lite::std17::detail::test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto test( int ) -> std::integral_constant<bool, satisfies<T>()>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: nonstd::expected_lite::std17::detail::satisfies
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::declval<T&>
    - noexcept
    - swap
    linkageType: ''
    returnType: bool
    signature: bool satisfies()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 449
    functionName: nonstd::expected_lite::std17::detail::test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto test( int ) -> std::integral_constant<bool, satisfies<T>()>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: nonstd::expected_lite::std17::detail::satisfies
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::declval<T&>
    - noexcept
    - swap
    linkageType: ''
    returnType: bool
    signature: bool satisfies()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 449
    functionName: nonstd::expected_lite::std17::detail::test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto test( int ) -> std::integral_constant<bool, satisfies<T>()>
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 523
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_noncopy_nonmove_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 524
    functionDepth: 0
    functionLinenumber: 524
    functionLinenumberEnd: 524
    functionName: ~storage_t_noncopy_nonmove_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_noncopy_nonmove_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 526
    functionDepth: 0
    functionLinenumber: 526
    functionLinenumberEnd: 528
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_noncopy_nonmove_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:532,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 530
    functionDepth: 0
    functionLinenumber: 530
    functionLinenumberEnd: 533
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:548,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 546
    functionDepth: 0
    functionLinenumber: 546
    functionLinenumberEnd: 549
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:554,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:554,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 555
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 560
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~value_type
    linkageType: ''
    returnType: void
    signature: void destruct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:575,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:575,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 573
    functionDepth: 0
    functionLinenumber: 573
    functionLinenumberEnd: 576
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:581,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:581,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 582
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 584
    functionDepth: 0
    functionLinenumber: 584
    functionLinenumberEnd: 587
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 589
    functionDepth: 0
    functionLinenumber: 589
    functionLinenumberEnd: 592
    functionName: '& value() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 597
    functionName: '& value() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:601,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 599
    functionDepth: 0
    functionLinenumber: 599
    functionLinenumberEnd: 602
    functionName: '&& value() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:606,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 604
    functionDepth: 0
    functionLinenumber: 604
    functionLinenumberEnd: 607
    functionName: '&& value() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 609
    functionDepth: 0
    functionLinenumber: 609
    functionLinenumberEnd: 612
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 614
    functionDepth: 0
    functionLinenumber: 614
    functionLinenumberEnd: 617
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 619
    functionDepth: 0
    functionLinenumber: 619
    functionLinenumberEnd: 622
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 624
    functionDepth: 0
    functionLinenumber: 624
    functionLinenumberEnd: 627
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:631,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 629
    functionDepth: 0
    functionLinenumber: 629
    functionLinenumberEnd: 632
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:636,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 634
    functionDepth: 0
    functionLinenumber: 634
    functionLinenumberEnd: 637
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 639
    functionDepth: 0
    functionLinenumber: 639
    functionLinenumberEnd: 642
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 644
    functionDepth: 0
    functionLinenumber: 644
    functionLinenumberEnd: 647
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 669
    functionDepth: 0
    functionLinenumber: 669
    functionLinenumberEnd: 669
    functionName: nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 670
    functionDepth: 0
    functionLinenumber: 670
    functionLinenumberEnd: 670
    functionName: ~storage_t_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 674
    functionName: nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 676
    functionDepth: 0
    functionLinenumber: 676
    functionLinenumberEnd: 679
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:683,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 681
    functionDepth: 0
    functionLinenumber: 681
    functionLinenumberEnd: 684
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value( value_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:688,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:688,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 686
    functionDepth: 0
    functionLinenumber: 686
    functionLinenumberEnd: 689
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_value( value_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:694,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:694,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 692
    functionDepth: 0
    functionLinenumber: 692
    functionLinenumberEnd: 695
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:700,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:700,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 698
    functionDepth: 0
    functionLinenumber: 698
    functionLinenumberEnd: 701
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 703
    functionDepth: 0
    functionLinenumber: 703
    functionLinenumberEnd: 706
    functionName: nonstd::expected_lite::detail::storage_t_impl::destruct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~value_type
    linkageType: ''
    returnType: void
    signature: void destruct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:710,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 708
    functionDepth: 0
    functionLinenumber: 708
    functionLinenumberEnd: 711
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:715,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:715,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 713
    functionDepth: 0
    functionLinenumber: 713
    functionLinenumberEnd: 716
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:721,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:721,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 719
    functionDepth: 0
    functionLinenumber: 719
    functionLinenumberEnd: 722
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:727,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:727,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 725
    functionDepth: 0
    functionLinenumber: 725
    functionLinenumberEnd: 728
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:732,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 730
    functionDepth: 0
    functionLinenumber: 730
    functionLinenumberEnd: 733
    functionName: nonstd::expected_lite::detail::storage_t_impl::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 735
    functionDepth: 0
    functionLinenumber: 735
    functionLinenumberEnd: 738
    functionName: '& value() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 740
    functionDepth: 0
    functionLinenumber: 740
    functionLinenumberEnd: 743
    functionName: '& value() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:747,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 745
    functionDepth: 0
    functionLinenumber: 745
    functionLinenumberEnd: 748
    functionName: '&& value() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:752,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 753
    functionName: '&& value() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 755
    functionDepth: 0
    functionLinenumber: 755
    functionLinenumberEnd: 758
    functionName: nonstd::expected_lite::detail::storage_t_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 760
    functionDepth: 0
    functionLinenumber: 760
    functionLinenumberEnd: 763
    functionName: nonstd::expected_lite::detail::storage_t_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 765
    functionDepth: 0
    functionLinenumber: 765
    functionLinenumberEnd: 768
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 770
    functionDepth: 0
    functionLinenumber: 770
    functionLinenumberEnd: 773
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:777,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 775
    functionDepth: 0
    functionLinenumber: 775
    functionLinenumberEnd: 778
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:782,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 780
    functionDepth: 0
    functionLinenumber: 780
    functionLinenumberEnd: 783
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 785
    functionDepth: 0
    functionLinenumber: 785
    functionLinenumberEnd: 788
    functionName: nonstd::expected_lite::detail::storage_t_impl::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 790
    functionDepth: 0
    functionLinenumber: 790
    functionLinenumberEnd: 793
    functionName: nonstd::expected_lite::detail::storage_t_impl::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 817
    functionDepth: 0
    functionLinenumber: 817
    functionLinenumberEnd: 817
    functionName: nonstd::expected_lite::detail::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 818
    functionDepth: 0
    functionLinenumber: 818
    functionLinenumberEnd: 818
    functionName: ~storage_t_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 820
    functionDepth: 0
    functionLinenumber: 820
    functionLinenumberEnd: 822
    functionName: nonstd::expected_lite::detail::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:826,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 824
    functionDepth: 0
    functionLinenumber: 824
    functionLinenumberEnd: 827
    functionName: nonstd::expected_lite::detail::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:831,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:831,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 829
    functionDepth: 0
    functionLinenumber: 829
    functionLinenumberEnd: 832
    functionName: nonstd::expected_lite::detail::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:837,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:837,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 835
    functionDepth: 0
    functionLinenumber: 835
    functionLinenumberEnd: 838
    functionName: nonstd::expected_lite::detail::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:843,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:843,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 844
      start: 841
    functionDepth: 0
    functionLinenumber: 841
    functionLinenumberEnd: 844
    functionName: nonstd::expected_lite::detail::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 846
    functionDepth: 0
    functionLinenumber: 846
    functionLinenumberEnd: 849
    functionName: nonstd::expected_lite::detail::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 851
    functionDepth: 0
    functionLinenumber: 851
    functionLinenumberEnd: 854
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 856
    functionDepth: 0
    functionLinenumber: 856
    functionLinenumberEnd: 859
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:863,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 861
    functionDepth: 0
    functionLinenumber: 861
    functionLinenumberEnd: 864
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:868,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 869
      start: 866
    functionDepth: 0
    functionLinenumber: 866
    functionLinenumberEnd: 869
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 871
    functionDepth: 0
    functionLinenumber: 871
    functionLinenumberEnd: 874
    functionName: nonstd::expected_lite::detail::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 876
    functionDepth: 0
    functionLinenumber: 876
    functionLinenumberEnd: 879
    functionName: nonstd::expected_lite::detail::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 901
    functionDepth: 0
    functionLinenumber: 901
    functionLinenumberEnd: 901
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 902
    functionDepth: 0
    functionLinenumber: 902
    functionLinenumberEnd: 902
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 904
    functionDepth: 0
    functionLinenumber: 904
    functionLinenumberEnd: 906
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 908
    functionDepth: 0
    functionLinenumber: 908
    functionLinenumberEnd: 908
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - '      other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 909
    functionDepth: 0
    functionLinenumber: 909
    functionLinenumberEnd: 909
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t &&      other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 917
      start: 917
    functionDepth: 0
    functionLinenumber: 917
    functionLinenumberEnd: 917
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 918
      start: 918
    functionDepth: 0
    functionLinenumber: 918
    functionLinenumberEnd: 918
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 920
    functionDepth: 0
    functionLinenumber: 920
    functionLinenumberEnd: 922
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:925,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:928,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:928,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 924
    functionDepth: 1
    functionLinenumber: 924
    functionLinenumberEnd: 929
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:932,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 931
    functionDepth: 1
    functionLinenumber: 931
    functionLinenumberEnd: 936
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t(storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 943
    functionDepth: 0
    functionLinenumber: 943
    functionLinenumberEnd: 943
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 944
    functionDepth: 0
    functionLinenumber: 944
    functionLinenumberEnd: 944
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 946
    functionDepth: 0
    functionLinenumber: 946
    functionLinenumberEnd: 948
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:951,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:953,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:954,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:954,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 950
    functionDepth: 0
    functionLinenumber: 950
    functionLinenumberEnd: 955
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
    - has_value
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:958,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:960,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 957
    functionDepth: 0
    functionLinenumber: 957
    functionLinenumberEnd: 962
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t(storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 969
      start: 969
    functionDepth: 0
    functionLinenumber: 969
    functionLinenumberEnd: 969
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 970
      start: 970
    functionDepth: 0
    functionLinenumber: 970
    functionLinenumberEnd: 970
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 972
    functionDepth: 0
    functionLinenumber: 972
    functionLinenumberEnd: 974
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:977,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:980,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:980,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 976
    functionDepth: 1
    functionLinenumber: 976
    functionLinenumberEnd: 981
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::has_value
    - has_value
    - value
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_error
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 983
    functionDepth: 0
    functionLinenumber: 983
    functionLinenumberEnd: 983
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 990
      start: 990
    functionDepth: 0
    functionLinenumber: 990
    functionLinenumberEnd: 990
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 991
    functionDepth: 0
    functionLinenumber: 991
    functionLinenumberEnd: 991
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 995
      start: 993
    functionDepth: 0
    functionLinenumber: 993
    functionLinenumberEnd: 995
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:998,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, false>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1000,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, false>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1001,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1001,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1002
      start: 997
    functionDepth: 0
    functionLinenumber: 997
    functionLinenumberEnd: 1002
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - error
    - nonstd::expected_lite::detail::storage_t<void, E, true, false>::construct_error
    - nonstd::expected_lite::detail::storage_t<void, E, true, false>::has_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 1004
    functionDepth: 0
    functionLinenumber: 1004
    functionLinenumberEnd: 1004
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1011
      start: 1011
    functionDepth: 0
    functionLinenumber: 1011
    functionLinenumberEnd: 1011
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1012
      start: 1012
    functionDepth: 0
    functionLinenumber: 1012
    functionLinenumberEnd: 1012
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 1014
    functionDepth: 0
    functionLinenumber: 1014
    functionLinenumberEnd: 1016
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 1018
    functionDepth: 0
    functionLinenumber: 1018
    functionLinenumberEnd: 1018
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1021,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 1020
    functionDepth: 1
    functionLinenumber: 1020
    functionLinenumberEnd: 1025
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::has_value
    - has_value
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_value
    - value
    - std::move
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_error
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1032
      start: 1032
    functionDepth: 0
    functionLinenumber: 1032
    functionLinenumberEnd: 1032
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 1033
    functionDepth: 0
    functionLinenumber: 1033
    functionLinenumberEnd: 1033
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1037
      start: 1035
    functionDepth: 0
    functionLinenumber: 1035
    functionLinenumberEnd: 1037
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1039
      start: 1039
    functionDepth: 0
    functionLinenumber: 1039
    functionLinenumberEnd: 1039
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1042,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, false, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1044,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, false, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1041
    functionDepth: 0
    functionLinenumber: 1041
    functionLinenumberEnd: 1046
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - nonstd::expected_lite::detail::storage_t<void, E, false, true>::has_value
    - error
    - nonstd::expected_lite::detail::storage_t<void, E, false, true>::construct_error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1065,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1065,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1067,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1067,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1068
      start: 1063
    functionDepth: 1
    functionLinenumber: 1063
    functionLinenumberEnd: 1068
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( (std::forward<
      ObjectT >( obj ).*memfnptr)( std::forward< Args >( args )... ) ) )\n        ->
      decltype( (std::forward< ObjectT >( obj ).*memfnptr)( std::forward< Args >(
      args )...) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1078,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1078,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1080,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1080,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1081
      start: 1076
    functionDepth: 1
    functionLinenumber: 1076
    functionLinenumberEnd: 1081
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached:
    - get
    - noexcept
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( (obj.get().*memfnptr)(
      std::forward< Args >( args ) ... ) ) )\n        -> decltype( (obj.get().*memfnptr)(
      std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1093,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1093,1
    - Dst: std::forward<ObjectT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1095,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1095,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 1091
    functionDepth: 1
    functionLinenumber: 1091
    functionLinenumberEnd: 1096
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached:
    - noexcept
    - std::forward<ObjectT>
    - std::forward< ObjectT >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( ((*std::forward<
      ObjectT >( obj )).*memfnptr)( std::forward< Args >( args ) ... ) ) )\n        ->
      decltype( ((*std::forward< ObjectT >( obj )).*memfnptr)( std::forward< Args
      >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1105,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1105,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1106,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1104
    functionDepth: 1
    functionLinenumber: 1104
    functionLinenumberEnd: 1109
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( std::forward< ObjectT >( obj ).*memobjptr
      ) )\n        -> decltype( std::forward< ObjectT >( obj ).*memobjptr )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1117,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1117,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1118,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1116
    functionDepth: 1
    functionLinenumber: 1116
    functionLinenumberEnd: 1121
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached:
    - get
    - noexcept
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( obj.get().*memobjptr ) )\n        ->
      decltype( obj.get().*memobjptr )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1131,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1131,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1132,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1130
    functionDepth: 1
    functionLinenumber: 1130
    functionLinenumberEnd: 1135
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( (*std::forward< ObjectT >( obj
      )).*memobjptr ) )\n        -> decltype( (*std::forward< ObjectT >( obj )).*memobjptr
      )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1147
      start: 1142
    functionDepth: 2
    functionLinenumber: 1142
    functionLinenumberEnd: 1147
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke_member_function_impl
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( invoke_member_function_impl( std::forward< F >( f ), std::forward<
      Args >( args ) ... ) ) )\n        -> decltype( invoke_member_function_impl(
      std::forward< F >( f ), std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1159
      start: 1154
    functionDepth: 2
    functionLinenumber: 1154
    functionLinenumberEnd: 1159
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - nonstd::expected_lite::detail::invoke_member_object_impl
    - std::forward< F >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( invoke_member_object_impl( std::forward< F >( f ), std::forward< Args
      >( args ) ... ) ) )\n        -> decltype( invoke_member_object_impl( std::forward<
      F >( f ), std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1169,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1169,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1171,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1171,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1172
      start: 1162
    functionDepth: 1
    functionLinenumber: 1162
    functionLinenumberEnd: 1172
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::forward< F >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_REQUIRES_T
    signature: "nsel_REQUIRES_T invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( std::forward< F >( f )( std::forward< Args >( args ) ... ) ) )\n        ->
      decltype( std::forward< F >( f )( std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 523
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_noncopy_nonmove_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 524
    functionDepth: 0
    functionLinenumber: 524
    functionLinenumberEnd: 524
    functionName: ~storage_t_noncopy_nonmove_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_noncopy_nonmove_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 526
    functionDepth: 0
    functionLinenumber: 526
    functionLinenumberEnd: 528
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_noncopy_nonmove_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:532,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 530
    functionDepth: 0
    functionLinenumber: 530
    functionLinenumberEnd: 533
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:548,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 546
    functionDepth: 0
    functionLinenumber: 546
    functionLinenumberEnd: 549
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:554,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:554,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 555
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 560
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~value_type
    linkageType: ''
    returnType: void
    signature: void destruct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:575,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:575,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 573
    functionDepth: 0
    functionLinenumber: 573
    functionLinenumberEnd: 576
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:581,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:581,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 582
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 584
    functionDepth: 0
    functionLinenumber: 584
    functionLinenumberEnd: 587
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 589
    functionDepth: 0
    functionLinenumber: 589
    functionLinenumberEnd: 592
    functionName: '& value() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 597
    functionName: '& value() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:601,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 599
    functionDepth: 0
    functionLinenumber: 599
    functionLinenumberEnd: 602
    functionName: '&& value() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:606,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 604
    functionDepth: 0
    functionLinenumber: 604
    functionLinenumberEnd: 607
    functionName: '&& value() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 609
    functionDepth: 0
    functionLinenumber: 609
    functionLinenumberEnd: 612
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 614
    functionDepth: 0
    functionLinenumber: 614
    functionLinenumberEnd: 617
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 619
    functionDepth: 0
    functionLinenumber: 619
    functionLinenumberEnd: 622
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 624
    functionDepth: 0
    functionLinenumber: 624
    functionLinenumberEnd: 627
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:631,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 629
    functionDepth: 0
    functionLinenumber: 629
    functionLinenumberEnd: 632
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:636,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 634
    functionDepth: 0
    functionLinenumber: 634
    functionLinenumberEnd: 637
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 639
    functionDepth: 0
    functionLinenumber: 639
    functionLinenumberEnd: 642
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 644
    functionDepth: 0
    functionLinenumber: 644
    functionLinenumberEnd: 647
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 669
    functionDepth: 0
    functionLinenumber: 669
    functionLinenumberEnd: 669
    functionName: nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 670
    functionDepth: 0
    functionLinenumber: 670
    functionLinenumberEnd: 670
    functionName: ~storage_t_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 674
    functionName: nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 676
    functionDepth: 0
    functionLinenumber: 676
    functionLinenumberEnd: 679
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:683,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 681
    functionDepth: 0
    functionLinenumber: 681
    functionLinenumberEnd: 684
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value( value_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:688,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:688,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 686
    functionDepth: 0
    functionLinenumber: 686
    functionLinenumberEnd: 689
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_value( value_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:694,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:694,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 692
    functionDepth: 0
    functionLinenumber: 692
    functionLinenumberEnd: 695
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:700,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:700,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 698
    functionDepth: 0
    functionLinenumber: 698
    functionLinenumberEnd: 701
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 703
    functionDepth: 0
    functionLinenumber: 703
    functionLinenumberEnd: 706
    functionName: nonstd::expected_lite::detail::storage_t_impl::destruct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~value_type
    linkageType: ''
    returnType: void
    signature: void destruct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:710,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 708
    functionDepth: 0
    functionLinenumber: 708
    functionLinenumberEnd: 711
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:715,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:715,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 713
    functionDepth: 0
    functionLinenumber: 713
    functionLinenumberEnd: 716
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:721,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:721,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 719
    functionDepth: 0
    functionLinenumber: 719
    functionLinenumberEnd: 722
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:727,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:727,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 725
    functionDepth: 0
    functionLinenumber: 725
    functionLinenumberEnd: 728
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:732,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 730
    functionDepth: 0
    functionLinenumber: 730
    functionLinenumberEnd: 733
    functionName: nonstd::expected_lite::detail::storage_t_impl::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 735
    functionDepth: 0
    functionLinenumber: 735
    functionLinenumberEnd: 738
    functionName: '& value() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 740
    functionDepth: 0
    functionLinenumber: 740
    functionLinenumberEnd: 743
    functionName: '& value() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:747,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 745
    functionDepth: 0
    functionLinenumber: 745
    functionLinenumberEnd: 748
    functionName: '&& value() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:752,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 753
    functionName: '&& value() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 755
    functionDepth: 0
    functionLinenumber: 755
    functionLinenumberEnd: 758
    functionName: nonstd::expected_lite::detail::storage_t_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 760
    functionDepth: 0
    functionLinenumber: 760
    functionLinenumberEnd: 763
    functionName: nonstd::expected_lite::detail::storage_t_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 765
    functionDepth: 0
    functionLinenumber: 765
    functionLinenumberEnd: 768
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 770
    functionDepth: 0
    functionLinenumber: 770
    functionLinenumberEnd: 773
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:777,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 775
    functionDepth: 0
    functionLinenumber: 775
    functionLinenumberEnd: 778
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:782,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 780
    functionDepth: 0
    functionLinenumber: 780
    functionLinenumberEnd: 783
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 785
    functionDepth: 0
    functionLinenumber: 785
    functionLinenumberEnd: 788
    functionName: nonstd::expected_lite::detail::storage_t_impl::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 790
    functionDepth: 0
    functionLinenumber: 790
    functionLinenumberEnd: 793
    functionName: nonstd::expected_lite::detail::storage_t_impl::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 817
    functionDepth: 0
    functionLinenumber: 817
    functionLinenumberEnd: 817
    functionName: nonstd::expected_lite::detail::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 818
    functionDepth: 0
    functionLinenumber: 818
    functionLinenumberEnd: 818
    functionName: ~storage_t_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 820
    functionDepth: 0
    functionLinenumber: 820
    functionLinenumberEnd: 822
    functionName: nonstd::expected_lite::detail::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:826,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 824
    functionDepth: 0
    functionLinenumber: 824
    functionLinenumberEnd: 827
    functionName: nonstd::expected_lite::detail::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:831,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:831,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 829
    functionDepth: 0
    functionLinenumber: 829
    functionLinenumberEnd: 832
    functionName: nonstd::expected_lite::detail::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:837,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:837,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 835
    functionDepth: 0
    functionLinenumber: 835
    functionLinenumberEnd: 838
    functionName: nonstd::expected_lite::detail::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:843,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:843,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 844
      start: 841
    functionDepth: 0
    functionLinenumber: 841
    functionLinenumberEnd: 844
    functionName: nonstd::expected_lite::detail::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 846
    functionDepth: 0
    functionLinenumber: 846
    functionLinenumberEnd: 849
    functionName: nonstd::expected_lite::detail::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 851
    functionDepth: 0
    functionLinenumber: 851
    functionLinenumberEnd: 854
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 856
    functionDepth: 0
    functionLinenumber: 856
    functionLinenumberEnd: 859
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:863,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 861
    functionDepth: 0
    functionLinenumber: 861
    functionLinenumberEnd: 864
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:868,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 869
      start: 866
    functionDepth: 0
    functionLinenumber: 866
    functionLinenumberEnd: 869
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 871
    functionDepth: 0
    functionLinenumber: 871
    functionLinenumberEnd: 874
    functionName: nonstd::expected_lite::detail::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 876
    functionDepth: 0
    functionLinenumber: 876
    functionLinenumberEnd: 879
    functionName: nonstd::expected_lite::detail::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 901
    functionDepth: 0
    functionLinenumber: 901
    functionLinenumberEnd: 901
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 902
    functionDepth: 0
    functionLinenumber: 902
    functionLinenumberEnd: 902
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 904
    functionDepth: 0
    functionLinenumber: 904
    functionLinenumberEnd: 906
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 908
    functionDepth: 0
    functionLinenumber: 908
    functionLinenumberEnd: 908
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - '      other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 909
    functionDepth: 0
    functionLinenumber: 909
    functionLinenumberEnd: 909
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t &&      other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 917
      start: 917
    functionDepth: 0
    functionLinenumber: 917
    functionLinenumberEnd: 917
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 918
      start: 918
    functionDepth: 0
    functionLinenumber: 918
    functionLinenumberEnd: 918
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 920
    functionDepth: 0
    functionLinenumber: 920
    functionLinenumberEnd: 922
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:925,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:928,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:928,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 924
    functionDepth: 1
    functionLinenumber: 924
    functionLinenumberEnd: 929
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:932,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 931
    functionDepth: 1
    functionLinenumber: 931
    functionLinenumberEnd: 936
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t(storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 943
    functionDepth: 0
    functionLinenumber: 943
    functionLinenumberEnd: 943
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 944
    functionDepth: 0
    functionLinenumber: 944
    functionLinenumberEnd: 944
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 946
    functionDepth: 0
    functionLinenumber: 946
    functionLinenumberEnd: 948
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:951,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:953,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:954,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:954,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 950
    functionDepth: 0
    functionLinenumber: 950
    functionLinenumberEnd: 955
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
    - has_value
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:958,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:960,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 957
    functionDepth: 0
    functionLinenumber: 957
    functionLinenumberEnd: 962
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t(storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 969
      start: 969
    functionDepth: 0
    functionLinenumber: 969
    functionLinenumberEnd: 969
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 970
      start: 970
    functionDepth: 0
    functionLinenumber: 970
    functionLinenumberEnd: 970
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 972
    functionDepth: 0
    functionLinenumber: 972
    functionLinenumberEnd: 974
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:977,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:980,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:980,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 976
    functionDepth: 1
    functionLinenumber: 976
    functionLinenumberEnd: 981
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::has_value
    - has_value
    - value
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_error
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 983
    functionDepth: 0
    functionLinenumber: 983
    functionLinenumberEnd: 983
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 990
      start: 990
    functionDepth: 0
    functionLinenumber: 990
    functionLinenumberEnd: 990
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 991
    functionDepth: 0
    functionLinenumber: 991
    functionLinenumberEnd: 991
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 995
      start: 993
    functionDepth: 0
    functionLinenumber: 993
    functionLinenumberEnd: 995
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:998,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, false>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1000,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, false>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1001,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1001,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1002
      start: 997
    functionDepth: 0
    functionLinenumber: 997
    functionLinenumberEnd: 1002
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - error
    - nonstd::expected_lite::detail::storage_t<void, E, true, false>::construct_error
    - nonstd::expected_lite::detail::storage_t<void, E, true, false>::has_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 1004
    functionDepth: 0
    functionLinenumber: 1004
    functionLinenumberEnd: 1004
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1011
      start: 1011
    functionDepth: 0
    functionLinenumber: 1011
    functionLinenumberEnd: 1011
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1012
      start: 1012
    functionDepth: 0
    functionLinenumber: 1012
    functionLinenumberEnd: 1012
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 1014
    functionDepth: 0
    functionLinenumber: 1014
    functionLinenumberEnd: 1016
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 1018
    functionDepth: 0
    functionLinenumber: 1018
    functionLinenumberEnd: 1018
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1021,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 1020
    functionDepth: 1
    functionLinenumber: 1020
    functionLinenumberEnd: 1025
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::has_value
    - has_value
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_value
    - value
    - std::move
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_error
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1032
      start: 1032
    functionDepth: 0
    functionLinenumber: 1032
    functionLinenumberEnd: 1032
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 1033
    functionDepth: 0
    functionLinenumber: 1033
    functionLinenumberEnd: 1033
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1037
      start: 1035
    functionDepth: 0
    functionLinenumber: 1035
    functionLinenumberEnd: 1037
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1039
      start: 1039
    functionDepth: 0
    functionLinenumber: 1039
    functionLinenumberEnd: 1039
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1042,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, false, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1044,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, false, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1041
    functionDepth: 0
    functionLinenumber: 1041
    functionLinenumberEnd: 1046
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - nonstd::expected_lite::detail::storage_t<void, E, false, true>::has_value
    - error
    - nonstd::expected_lite::detail::storage_t<void, E, false, true>::construct_error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1065,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1065,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1067,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1067,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1068
      start: 1063
    functionDepth: 1
    functionLinenumber: 1063
    functionLinenumberEnd: 1068
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 3
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( (std::forward<
      ObjectT >( obj ).*memfnptr)( std::forward< Args >( args )... ) ) )\n        ->
      decltype( (std::forward< ObjectT >( obj ).*memfnptr)( std::forward< Args >(
      args )...) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1078,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1078,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1080,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1080,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1081
      start: 1076
    functionDepth: 1
    functionLinenumber: 1076
    functionLinenumberEnd: 1081
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 3
    functionsReached:
    - get
    - noexcept
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( (obj.get().*memfnptr)(
      std::forward< Args >( args ) ... ) ) )\n        -> decltype( (obj.get().*memfnptr)(
      std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1093,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1093,1
    - Dst: std::forward<ObjectT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1095,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1095,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 1091
    functionDepth: 1
    functionLinenumber: 1091
    functionLinenumberEnd: 1096
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 3
    functionsReached:
    - noexcept
    - std::forward<ObjectT>
    - std::forward< ObjectT >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( ((*std::forward<
      ObjectT >( obj )).*memfnptr)( std::forward< Args >( args ) ... ) ) )\n        ->
      decltype( ((*std::forward< ObjectT >( obj )).*memfnptr)( std::forward< Args
      >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1105,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1105,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1106,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1104
    functionDepth: 1
    functionLinenumber: 1104
    functionLinenumberEnd: 1109
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 3
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( std::forward< ObjectT >( obj ).*memobjptr
      ) )\n        -> decltype( std::forward< ObjectT >( obj ).*memobjptr )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1117,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1117,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1118,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1116
    functionDepth: 1
    functionLinenumber: 1116
    functionLinenumberEnd: 1121
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 3
    functionsReached:
    - get
    - noexcept
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( obj.get().*memobjptr ) )\n        ->
      decltype( obj.get().*memobjptr )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1131,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1131,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1132,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1130
    functionDepth: 1
    functionLinenumber: 1130
    functionLinenumberEnd: 1135
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 3
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( (*std::forward< ObjectT >( obj
      )).*memobjptr ) )\n        -> decltype( (*std::forward< ObjectT >( obj )).*memobjptr
      )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1147
      start: 1142
    functionDepth: 2
    functionLinenumber: 1142
    functionLinenumberEnd: 1147
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke_member_function_impl
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( invoke_member_function_impl( std::forward< F >( f ), std::forward<
      Args >( args ) ... ) ) )\n        -> decltype( invoke_member_function_impl(
      std::forward< F >( f ), std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1159
      start: 1154
    functionDepth: 2
    functionLinenumber: 1154
    functionLinenumberEnd: 1159
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - nonstd::expected_lite::detail::invoke_member_object_impl
    - std::forward< F >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( invoke_member_object_impl( std::forward< F >( f ), std::forward< Args
      >( args ) ... ) ) )\n        -> decltype( invoke_member_object_impl( std::forward<
      F >( f ), std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1169,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1169,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1171,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1171,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1172
      start: 1162
    functionDepth: 1
    functionLinenumber: 1162
    functionLinenumberEnd: 1172
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - noexcept
    - std::forward< F >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_REQUIRES_T
    signature: "nsel_REQUIRES_T invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( std::forward< F >( f )( std::forward< Args >( args ) ... ) ) )\n        ->
      decltype( std::forward< F >( f )( std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1208
      start: 1208
    functionDepth: 0
    functionLinenumber: 1208
    functionLinenumberEnd: 1208
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type const & )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1209
      start: 1209
    functionDepth: 0
    functionLinenumber: 1209
    functionLinenumberEnd: 1209
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type && )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1218
      start: 1216
    functionDepth: 0
    functionLinenumber: 1216
    functionLinenumberEnd: 1218
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached:
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void unexpected_type( nonstd_lite_in_place_t(E), Args &&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1226,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1225
    functionDepth: 0
    functionLinenumber: 1225
    functionLinenumberEnd: 1227
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached:
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void unexpected_type( nonstd_lite_in_place_t(E), std::initializer_list<U>
      il, Args &&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<E2>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1237,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - E2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1238
      start: 1236
    functionDepth: 0
    functionLinenumber: 1236
    functionLinenumberEnd: 1238
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached:
    - std::forward<E2>
    linkageType: ''
    returnType: void
    signature: void unexpected_type( E2 && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1254
    functionDepth: 1
    functionLinenumber: 1254
    functionLinenumberEnd: 1256
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached:
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type<E2> const & error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1274
      start: 1272
    functionDepth: 1
    functionLinenumber: 1272
    functionLinenumberEnd: 1274
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached:
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type<E2> const & error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1291,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1292
      start: 1290
    functionDepth: 1
    functionLinenumber: 1290
    functionLinenumberEnd: 1292
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached:
    - nonstd::expected_lite::error
    - std::move
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type<E2> && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1309,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1309,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1310
      start: 1308
    functionDepth: 1
    functionLinenumber: 1308
    functionLinenumberEnd: 1310
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached:
    - nonstd::expected_lite::error
    - std::move
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type<E2> && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1314
      start: 1314
    functionDepth: 0
    functionLinenumber: 1314
    functionLinenumberEnd: 1314
    functionName: '& operator=( unexpected_type const & )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & operator=( unexpected_type const & )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1315
      start: 1315
    functionDepth: 0
    functionLinenumber: 1315
    functionLinenumberEnd: 1315
    functionName: '& operator=( unexpected_type && )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & operator=( unexpected_type && )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1320,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1322
      start: 1318
    functionDepth: 0
    functionLinenumber: 1318
    functionLinenumberEnd: 1322
    functionName: '& operator=( unexpected_type<E2> const & other )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - swap
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & operator=( unexpected_type<E2> const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1327,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1327,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1327,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1329
      start: 1325
    functionDepth: 0
    functionLinenumber: 1325
    functionLinenumberEnd: 1329
    functionName: '& operator=( unexpected_type<E2> && other )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - swap
    - std::move
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & operator=( unexpected_type<E2> && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1336
      start: 1333
    functionDepth: 0
    functionLinenumber: 1333
    functionLinenumberEnd: 1336
    functionName: '& error() & noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & error() & noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1338
    functionDepth: 0
    functionLinenumber: 1338
    functionLinenumberEnd: 1341
    functionName: '& error() const & noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & error() const & noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1347,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1348
      start: 1345
    functionDepth: 0
    functionLinenumber: 1345
    functionLinenumberEnd: 1348
    functionName: '&& error() && noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() && noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1352,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1353
      start: 1350
    functionDepth: 0
    functionLinenumber: 1350
    functionLinenumberEnd: 1353
    functionName: '&& error() const && noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: E
    signature: E && error() const && noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1364
      start: 1361
    functionDepth: 0
    functionLinenumber: 1361
    functionLinenumberEnd: 1364
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & value() & noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1371
      start: 1368
    functionDepth: 0
    functionLinenumber: 1368
    functionLinenumberEnd: 1371
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & value() const & noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1379,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1380
      start: 1377
    functionDepth: 0
    functionLinenumber: 1377
    functionLinenumberEnd: 1380
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: E
    signature: E && value() && noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1386,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1384
    functionDepth: 0
    functionLinenumber: 1384
    functionLinenumberEnd: 1387
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: E
    signature: E && value() const && noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - unexpected_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1403
      start: 1397
    functionDepth: 0
    functionLinenumber: 1397
    functionLinenumberEnd: 1403
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 5
    functionsReached:
    - nonstd::expected_lite::swap
    linkageType: ''
    returnType: void
    signature: "void swap( unexpected_type & other ) noexcept (\n        std17::is_nothrow_swappable<U>::value\n
      \   )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1433
      start: 1433
    functionDepth: 0
    functionLinenumber: 1433
    functionLinenumberEnd: 1433
    functionName: nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void unexpected_type()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1435
      start: 1435
    functionDepth: 0
    functionLinenumber: 1435
    functionLinenumberEnd: 1435
    functionName: ~unexpected_type()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~unexpected_type()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - std::exception_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1439
      start: 1437
    functionDepth: 0
    functionLinenumber: 1437
    functionLinenumberEnd: 1439
    functionName: nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void unexpected_type( std::exception_ptr const & error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1442,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - std::exception_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1443
      start: 1441
    functionDepth: 0
    functionLinenumber: 1441
    functionLinenumberEnd: 1443
    functionName: nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void unexpected_type(std::exception_ptr && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_exception_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - error
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1448
      start: 1446
    functionDepth: 0
    functionLinenumber: 1446
    functionLinenumberEnd: 1448
    functionName: nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::make_exception_ptr
    linkageType: ''
    returnType: void
    signature: void unexpected_type( E error )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1453
      start: 1450
    functionDepth: 0
    functionLinenumber: 1450
    functionLinenumberEnd: 1453
    functionName: '& value() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::exception_ptr
    signature: std::exception_ptr & value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1458
      start: 1455
    functionDepth: 0
    functionLinenumber: 1455
    functionLinenumberEnd: 1458
    functionName: '& value()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::exception_ptr
    signature: std::exception_ptr & value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1472,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1472,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E1>
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1473
      start: 1470
    functionDepth: 0
    functionLinenumber: 1470
    functionLinenumberEnd: 1473
    functionName: operator==( unexpected_type<E1> const & x, unexpected_type<E2> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error
    linkageType: ''
    returnType: bool
    signature: bool operator==( unexpected_type<E1> const & x, unexpected_type<E2>
      const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E1>
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1479
      start: 1476
    functionDepth: 0
    functionLinenumber: 1476
    functionLinenumberEnd: 1479
    functionName: operator!=( unexpected_type<E1> const & x, unexpected_type<E2> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( unexpected_type<E1> const & x, unexpected_type<E2>
      const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1486,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1487
      start: 1484
    functionDepth: 0
    functionLinenumber: 1484
    functionLinenumberEnd: 1487
    functionName: operator<( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error
    linkageType: ''
    returnType: bool
    signature: bool operator<( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1493
      start: 1490
    functionDepth: 0
    functionLinenumber: 1490
    functionLinenumberEnd: 1493
    functionName: operator>( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1499
      start: 1496
    functionDepth: 0
    functionLinenumber: 1496
    functionLinenumberEnd: 1499
    functionName: operator<=( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1505
      start: 1502
    functionDepth: 0
    functionLinenumber: 1502
    functionLinenumberEnd: 1505
    functionName: operator>=( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1516,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1516,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1518,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1519
      start: 1516
    functionDepth: 1
    functionLinenumber: 1516
    functionLinenumberEnd: 1519
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - noexcept
    - nonstd::expected_lite::swap
    linkageType: ''
    returnType: void
    signature: void swap( unexpected_type<E> & x, unexpected_type<E> & y) noexcept
      ( noexcept ( x.swap(y) ) )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1528
      start: 1525
    functionDepth: 0
    functionLinenumber: 1525
    functionLinenumberEnd: 1528
    functionName: operator<( unexpected_type<std::exception_ptr> const & /*x*/, unexpected_type<std::exception_ptr>
      const & /*y*/ )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<( unexpected_type<std::exception_ptr> const & /*x*/,
      unexpected_type<std::exception_ptr> const & /*y*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1530
    functionDepth: 0
    functionLinenumber: 1530
    functionLinenumberEnd: 1533
    functionName: operator>( unexpected_type<std::exception_ptr> const & /*x*/, unexpected_type<std::exception_ptr>
      const & /*y*/ )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( unexpected_type<std::exception_ptr> const & /*x*/,
      unexpected_type<std::exception_ptr> const & /*y*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<std::exception_ptr>
    - unexpected_type<std::exception_ptr>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1538
      start: 1535
    functionDepth: 0
    functionLinenumber: 1535
    functionLinenumberEnd: 1538
    functionName: operator<=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
      const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
      const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<std::exception_ptr>
    - unexpected_type<std::exception_ptr>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1543
      start: 1540
    functionDepth: 0
    functionLinenumber: 1540
    functionLinenumberEnd: 1543
    functionName: operator>=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
      const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
      const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::unexpected_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1567,1
    - Dst: std::forward<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1567,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1568
      start: 1564
    functionDepth: 1
    functionLinenumber: 1564
    functionLinenumberEnd: 1568
    functionName: nonstd::expected_lite::make_unexpected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<E>
    - nonstd::expected_lite::unexpected_type
    linkageType: ''
    returnType: nsel_constexpr14 auto
    signature: nsel_constexpr14 auto make_unexpected( E && value ) -> unexpected_type<
      typename std::decay<E>::type >
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::unexpected_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1575,1
    - Dst: std::current_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1576
      start: 1572
    functionDepth: 1
    functionLinenumber: 1572
    functionLinenumberEnd: 1576
    functionName: nonstd::expected_lite::make_unexpected_from_current_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::current_exception
    - nonstd::expected_lite::unexpected_type
    linkageType: ''
    returnType: auto
    signature: auto make_unexpected_from_current_exception() -> unexpected_type< std::exception_ptr
      >
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1593
      start: 1591
    functionDepth: 0
    functionLinenumber: 1591
    functionLinenumberEnd: 1593
    functionName: nonstd::expected_lite::bad_expected_access< void >::bad_expected_access
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void bad_expected_access()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - error
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1608
      start: 1606
    functionDepth: 0
    functionLinenumber: 1606
    functionLinenumberEnd: 1608
    functionName: nonstd::expected_lite::bad_expected_access::bad_expected_access
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void bad_expected_access( error_type error )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1613
      start: 1610
    functionDepth: 0
    functionLinenumber: 1610
    functionLinenumberEnd: 1613
    functionName: nonstd::expected_lite::bad_expected_access::what
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * what() const noexcept override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1618
      start: 1615
    functionDepth: 0
    functionLinenumber: 1615
    functionLinenumberEnd: 1618
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1623
      start: 1620
    functionDepth: 0
    functionLinenumber: 1620
    functionLinenumberEnd: 1623
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1629,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1630
      start: 1627
    functionDepth: 0
    functionLinenumber: 1627
    functionLinenumberEnd: 1630
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1634,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1635
      start: 1632
    functionDepth: 0
    functionLinenumber: 1632
    functionLinenumberEnd: 1635
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1658
    functionDepth: 0
    functionLinenumber: 1658
    functionLinenumberEnd: 1658
    functionName: nonstd::expected_lite::detail::text
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool text( char const * /*text*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1658
    functionDepth: 0
    functionLinenumber: 1658
    functionLinenumberEnd: 1658
    functionName: nonstd::expected_lite::detail::text
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 3
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool text( char const * /*text*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RaiseException
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1667,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1669,1
    - Dst: nonstd::expected_lite::detail::text
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1669,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( false && detail::text("throw bad_expected_access<Error>{ e };")
        )
      pos:
        line_end: 1668
        line_start: 1668
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 1671
      start: 1664
    functionDepth: 1
    functionLinenumber: 1664
    functionLinenumberEnd: 1671
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - assert
    - RaiseException
    - nonstd::expected_lite::detail::text
    linkageType: ''
    returnType: void
    signature: void rethrow( Error const & /*e*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RaiseException
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1680,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1682,1
    - Dst: nonstd::expected_lite::detail::text
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1682,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( false && detail::text("throw bad_expected_access<std::exception_ptr>{
        e };") )
      pos:
        line_end: 1681
        line_start: 1681
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 1684
      start: 1677
    functionDepth: 1
    functionLinenumber: 1677
    functionLinenumberEnd: 1684
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - assert
    - RaiseException
    - nonstd::expected_lite::detail::text
    linkageType: ''
    returnType: void
    signature: void rethrow( std::exception_ptr const & /*e*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RaiseException
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1693,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1695,1
    - Dst: nonstd::expected_lite::detail::text
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1695,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( false && detail::text("throw std::system_error( e );") )
      pos:
        line_end: 1694
        line_start: 1694
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 1697
      start: 1690
    functionDepth: 1
    functionLinenumber: 1690
    functionLinenumberEnd: 1697
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - assert
    - RaiseException
    - nonstd::expected_lite::detail::text
    linkageType: ''
    returnType: void
    signature: void rethrow( std::error_code const & /*e*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - Error
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1708
      start: 1705
    functionDepth: 0
    functionLinenumber: 1705
    functionLinenumberEnd: 1708
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void rethrow( Error const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::rethrow_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1716,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - std::exception_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1717
      start: 1714
    functionDepth: 0
    functionLinenumber: 1714
    functionLinenumberEnd: 1717
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::rethrow_exception
    linkageType: ''
    returnType: void
    signature: void rethrow( std::exception_ptr const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::system_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1725,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - std::error_code
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1726
      start: 1723
    functionDepth: 0
    functionLinenumber: 1723
    functionLinenumberEnd: 1726
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::system_error
    linkageType: ''
    returnType: void
    signature: void rethrow( std::error_code const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: contained
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1787,1
    - Dst: construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1789,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1790
      start: 1786
    functionDepth: 0
    functionLinenumber: 1786
    functionLinenumberEnd: 1790
    functionName: nonstd::expected_lite::expected::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - contained
    - construct_value
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1792
      start: 1792
    functionDepth: 0
    functionLinenumber: 1792
    functionLinenumberEnd: 1792
    functionName: nonstd::expected_lite::expected::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected( expected const & )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1793
      start: 1793
    functionDepth: 0
    functionLinenumber: 1793
    functionLinenumberEnd: 1793
    functionName: nonstd::expected_lite::expected::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected( expected &&      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1910,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1910,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1911
      start: 1898
    functionDepth: 0
    functionLinenumber: 1898
    functionLinenumberEnd: 1911
    functionName: nonstd::expected_lite::contained
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<U>
    - construct_value
    linkageType: ''
    returnType: ::value
    signature: "::value && !std::is_same<nonstd::unexpected_type<E>, typename std20::remove_cvref<U>::type>::value\n
      \           && !std::is_convertible<U&&,T>::value /*=> explicit */\n        )\n
      \   >\n    nsel_constexpr14 explicit expected( U && value ) noexcept\n    (\n
      \       std::is_nothrow_move_constructible<U>::value &&\n        std::is_nothrow_move_constructible<E>::value\n
      \   )\n    : contained( true )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1929,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1929,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1930
      start: 1917
    functionDepth: 0
    functionLinenumber: 1917
    functionLinenumberEnd: 1930
    functionName: nonstd::expected_lite::contained
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<U>
    - construct_value
    linkageType: ''
    returnType: ::value
    signature: "::value && !std::is_same<nonstd::unexpected_type<E>, typename std20::remove_cvref<U>::type>::value\n
      \           &&  std::is_convertible<U&&,T>::value /*=> non-explicit */\n        )\n
      \   >\n    nsel_constexpr14 /*non-explicit*/ expected( U && value ) noexcept\n
      \   (\n        std::is_nothrow_move_constructible<U>::value &&\n        std::is_nothrow_move_constructible<E>::value\n
      \   )\n    : contained( true )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2003,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2003,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2004
      start: 2000
    functionDepth: 0
    functionLinenumber: 2000
    functionLinenumberEnd: 2004
    functionName: nonstd::expected_lite::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - emplace_value
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void expected( nonstd_lite_in_place_t(T), std::initializer_list<U>
      il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2027,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2027,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2028
      start: 2024
    functionDepth: 0
    functionLinenumber: 2024
    functionLinenumberEnd: 2028
    functionName: nonstd::expected_lite::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - emplace_error
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void expected( unexpect_t, std::initializer_list<U> il, Args&&... args
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2038,1
    - Dst: destruct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2038,1
    - Dst: destruct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2039,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 2036
    functionDepth: 1
    functionLinenumber: 2036
    functionLinenumberEnd: 2040
    functionName: ~expected()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - destruct_error
    - nonstd::expected_lite::has_value
    - destruct_value
    linkageType: ''
    returnType: void
    signature: void ~expected()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2046,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2048
      start: 2044
    functionDepth: 1
    functionLinenumber: 2044
    functionLinenumberEnd: 2048
    functionName: '& operator=( expected const & other )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    linkageType: ''
    returnType: expected
    signature: expected & operator=( expected const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2057,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2057,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2059
      start: 2050
    functionDepth: 0
    functionLinenumber: 2050
    functionLinenumberEnd: 2059
    functionName: "& operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_constructible<
      \  T>::value\n        && std::is_nothrow_move_assignable<   T>::value\n        &&
      std::is_nothrow_move_constructible<E>::value     // added for missing\n        &&
      std::is_nothrow_move_assignable<   E>::value )"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    - std::move
    linkageType: ''
    returnType: expected
    signature: "expected & operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_constructible<
      \  T>::value\n        && std::is_nothrow_move_assignable<   T>::value\n        &&
      std::is_nothrow_move_constructible<E>::value     // added for missing\n        &&
      std::is_nothrow_move_assignable<   E>::value )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2071,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2071,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2073
      start: 2069
    functionDepth: 1
    functionLinenumber: 2069
    functionLinenumberEnd: 2073
    functionName: '& operator=( U && value )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<U>
    - nonstd::expected_lite::expected
    linkageType: ''
    returnType: expected
    signature: expected & operator=( U && value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2084,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2084,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - nonstd::unexpected_type<G>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2086
      start: 2082
    functionDepth: 0
    functionLinenumber: 2082
    functionLinenumberEnd: 2086
    functionName: '& operator=( nonstd::unexpected_type<G> const & error )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    - error
    linkageType: ''
    returnType: expected
    signature: expected & operator=( nonstd::unexpected_type<G> const & error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2097,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2097,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2097,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - nonstd::unexpected_type<G>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2099
      start: 2095
    functionDepth: 0
    functionLinenumber: 2095
    functionLinenumberEnd: 2099
    functionName: '& operator=( nonstd::unexpected_type<G> && error )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    - std::move
    - error
    linkageType: ''
    returnType: expected
    signature: expected & operator=( nonstd::unexpected_type<G> && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2108,1
    - Dst: nonstd_lite_in_place
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2108,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2108,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2110
      start: 2106
    functionDepth: 1
    functionLinenumber: 2106
    functionLinenumberEnd: 2110
    functionName: nonstd::expected_lite::emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd_lite_in_place
    - nonstd::expected_lite::value
    - nonstd::expected_lite::expected
    - std::forward<Args>
    linkageType: ''
    returnType: value_type
    signature: value_type & emplace( Args &&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2119,1
    - Dst: nonstd_lite_in_place
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2119,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2119,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2121
      start: 2117
    functionDepth: 1
    functionLinenumber: 2117
    functionLinenumberEnd: 2121
    functionName: nonstd::expected_lite::emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd_lite_in_place
    - nonstd::expected_lite::value
    - nonstd::expected_lite::expected
    - std::forward<Args>
    linkageType: ''
    returnType: value_type
    signature: value_type & emplace( std::initializer_list<U> il, Args &&... args
      )
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2139,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2139,1
    - Dst: contained::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2139,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2140,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2140,1
    - Dst: contained::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2140,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2141,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2141,1
    - Dst: contained::destruct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2142,1
    - Dst: contained::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2143,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2143,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2143,1
    - Dst: destruct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2144,1
    - Dst: construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2145,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2145,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2146,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2147,1
    - Dst: contained::set_has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2148,1
    - Dst: set_has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2149,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2151,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 18
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2152
      start: 2131
    functionDepth: 1
    functionLinenumber: 2131
    functionLinenumberEnd: 2152
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 7
    functionsReached:
    - contained::construct_value
    - std::move
    - nonstd::expected_lite::swap
    - set_has_value
    - nonstd::expected_lite::value
    - contained::value
    - contained::set_has_value
    - construct_error
    - contained::error
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    - destruct_value
    - contained::destruct_error
    linkageType: ''
    returnType: void
    signature: "void swap( expected & other ) noexcept\n    (\n        std::is_nothrow_move_constructible<T>::value
      && std17::is_nothrow_swappable<T&>::value &&\n        std::is_nothrow_move_constructible<E>::value
      && std17::is_nothrow_swappable<E&>::value\n    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2158,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2158,1
    - Dst: value_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2157
        line_start: 2157
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2159
      start: 2156
    functionDepth: 1
    functionLinenumber: 2156
    functionLinenumberEnd: 2159
    functionName: '* operator ->() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - assert
    - nonstd::expected_lite::has_value
    - value_ptr
    linkageType: ''
    returnType: value_type
    signature: value_type * operator ->() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2163,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2163,1
    - Dst: value_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2162
        line_start: 2162
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2164
      start: 2161
    functionDepth: 1
    functionLinenumber: 2161
    functionLinenumberEnd: 2164
    functionName: '* operator ->()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - assert
    - nonstd::expected_lite::has_value
    - value_ptr
    linkageType: ''
    returnType: value_type
    signature: value_type * operator ->()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2168,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2168,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2167
        line_start: 2167
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2169
      start: 2166
    functionDepth: 1
    functionLinenumber: 2166
    functionLinenumberEnd: 2169
    functionName: '& operator *() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::value
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: value_type
    signature: value_type & operator *() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2173,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2173,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2172
        line_start: 2172
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2174
      start: 2171
    functionDepth: 1
    functionLinenumber: 2171
    functionLinenumberEnd: 2174
    functionName: '& operator *() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::value
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: value_type
    signature: value_type & operator *() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2180,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2180,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2180,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2180,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2179
        line_start: 2179
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2181
      start: 2178
    functionDepth: 1
    functionLinenumber: 2178
    functionLinenumberEnd: 2181
    functionName: '&& operator *() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - assert
    - nonstd::expected_lite::value
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: value_type
    signature: value_type && operator *() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2185,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2185,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2185,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2185,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2184
        line_start: 2184
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2186
      start: 2183
    functionDepth: 1
    functionLinenumber: 2183
    functionLinenumberEnd: 2186
    functionName: '&& operator *() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - assert
    - nonstd::expected_lite::value
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && operator *() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2193
      start: 2190
    functionDepth: 1
    functionLinenumber: 2190
    functionLinenumberEnd: 2193
    functionName: operator bool() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: void
    signature: void operator bool() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2198
      start: 2195
    functionDepth: 1
    functionLinenumber: 2195
    functionLinenumberEnd: 2198
    functionName: nonstd::expected_lite::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 10
    functionsReached:
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: bool
    signature: bool has_value() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2204,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2205,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2206,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2206,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2207
      start: 2202
    functionDepth: 2
    functionLinenumber: 2202
    functionLinenumberEnd: 2207
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 8
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::value
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2211,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2212,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2213,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2213,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2214
      start: 2209
    functionDepth: 2
    functionLinenumber: 2209
    functionLinenumberEnd: 2214
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 9
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::value
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2221,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2221,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2222,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2223,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2223,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2223,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2224
      start: 2219
    functionDepth: 2
    functionLinenumber: 2219
    functionLinenumberEnd: 2224
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 10
    functionsReached:
    - std::move
    - nonstd::expected_lite::value
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2228,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2228,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2229,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2230,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2230,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2230,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2231
      start: 2226
    functionDepth: 2
    functionLinenumber: 2226
    functionLinenumberEnd: 2231
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 11
    functionsReached:
    - std::move
    - nonstd::expected_lite::value
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2237,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2237,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2236
        line_start: 2236
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2238
      start: 2235
    functionDepth: 2
    functionLinenumber: 2235
    functionLinenumberEnd: 2238
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 18
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2242,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2242,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2241
        line_start: 2241
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2243
      start: 2240
    functionDepth: 2
    functionLinenumber: 2240
    functionLinenumberEnd: 2243
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 19
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2249,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2249,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2249,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2249,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2248
        line_start: 2248
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2250
      start: 2247
    functionDepth: 2
    functionLinenumber: 2247
    functionLinenumberEnd: 2250
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 20
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2254,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2254,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2254,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2254,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2253
        line_start: 2253
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2255
      start: 2252
    functionDepth: 2
    functionLinenumber: 2252
    functionLinenumberEnd: 2255
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 21
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2261,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2262
      start: 2259
    functionDepth: 3
    functionLinenumber: 2259
    functionLinenumberEnd: 2262
    functionName: nonstd::expected_lite::get_unexpected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::make_unexpected
    linkageType: ''
    returnType: unexpected_type
    signature: unexpected_type get_unexpected() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2267,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2268,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2269
      start: 2265
    functionDepth: 4
    functionLinenumber: 2265
    functionLinenumberEnd: 2269
    functionName: nonstd::expected_lite::has_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool has_exception() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2279,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2280,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2281,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2281,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2282
      start: 2277
    functionDepth: 2
    functionLinenumber: 2277
    functionLinenumberEnd: 2282
    functionName: nonstd::expected_lite::value_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T>
    - std::forward<U>
    - nonstd::expected_lite::value
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: value_type
    signature: value_type value_or( U && v ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2292,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2293,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2293,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2294,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2294,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2295
      start: 2290
    functionDepth: 2
    functionLinenumber: 2290
    functionLinenumberEnd: 2295
    functionName: nonstd::expected_lite::value_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - nonstd::expected_lite::value
    - static_cast<T>
    - nonstd::expected_lite::has_value
    - std::forward<U>
    linkageType: ''
    returnType: value_type
    signature: value_type value_or( U && v ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2306,1
    - Dst: static_cast< E >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2307,1
    - Dst: std::forward< G >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2307,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - G
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2309
      start: 2304
    functionDepth: 3
    functionLinenumber: 2304
    functionLinenumberEnd: 2309
    functionName: nonstd::expected_lite::error_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward< G >
    - nonstd::expected_lite::error
    - static_cast< E >
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr error_or( G && e ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2319,1
    - Dst: static_cast< E >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2320,1
    - Dst: std::forward< G >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2320,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2321,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2321,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - G
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2322
      start: 2317
    functionDepth: 3
    functionLinenumber: 2317
    functionLinenumberEnd: 2322
    functionName: nonstd::expected_lite::error_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::forward< G >
    - static_cast< E >
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 error_or( G && e ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2336,1
    - Dst: detail::invoke_result_nocvref_t< F, value_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2337,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2337,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2337,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2337,1
    - Dst: detail::invoke_result_nocvref_t< F, value_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2338,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2338,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2339
      start: 2334
    functionDepth: 3
    functionLinenumber: 2334
    functionLinenumberEnd: 2339
    functionName: detail::invoke_result_nocvref_t< F, value_type & > and_then( F &&
      f ) &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, value_type & >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, value_type & >
      and_then( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2350,1
    - Dst: detail::invoke_result_nocvref_t< F, const value_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2351,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2351,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2351,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2351,1
    - Dst: detail::invoke_result_nocvref_t< F, const value_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2352,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2352,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2353
      start: 2348
    functionDepth: 3
    functionLinenumber: 2348
    functionLinenumberEnd: 2353
    functionName: detail::invoke_result_nocvref_t< F, const value_type & > and_then(
      F && f ) const &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - detail::invoke_result_nocvref_t< F, const value_type & >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const value_type
      & > and_then( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2365,1
    - Dst: detail::invoke_result_nocvref_t< F, value_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: detail::invoke_result_nocvref_t< F, value_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2367,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2367,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2367,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2368
      start: 2363
    functionDepth: 3
    functionLinenumber: 2363
    functionLinenumberEnd: 2368
    functionName: detail::invoke_result_nocvref_t< F, value_type && > and_then( F
      && f ) &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, value_type && >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, value_type &&
      > and_then( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2379,1
    - Dst: detail::invoke_result_nocvref_t< F, const value_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: detail::invoke_result_nocvref_t< F, const value_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2381,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2381,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2381,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2382
      start: 2377
    functionDepth: 3
    functionLinenumber: 2377
    functionLinenumberEnd: 2382
    functionName: detail::invoke_result_nocvref_t< F, const value_type && > and_then(
      F && f ) const &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, const value_type && >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const value_type
      && > and_then( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2394,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2395,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2395,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2396,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2396,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2396,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2396,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2397
      start: 2392
    functionDepth: 3
    functionLinenumber: 2392
    functionLinenumberEnd: 2397
    functionName: detail::invoke_result_nocvref_t< F, error_type & > or_else( F &&
      f ) &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - detail::invoke_result_nocvref_t< F, error_type & >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, error_type & >
      or_else( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2408,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2409,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2409,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2410,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2410,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2410,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2410,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2411
      start: 2406
    functionDepth: 3
    functionLinenumber: 2406
    functionLinenumberEnd: 2411
    functionName: detail::invoke_result_nocvref_t< F, const error_type & > or_else(
      F && f ) const &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, const error_type & >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const error_type
      & > or_else( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2423,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2424,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2424,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2424,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2426
      start: 2421
    functionDepth: 3
    functionLinenumber: 2421
    functionLinenumberEnd: 2426
    functionName: detail::invoke_result_nocvref_t< F, error_type && > or_else( F &&
      f ) &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - detail::invoke_result_nocvref_t< F, error_type && >
    - has_value
    - value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, error_type &&
      > or_else( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2437,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2438,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2438,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2438,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2440
      start: 2435
    functionDepth: 3
    functionLinenumber: 2435
    functionLinenumberEnd: 2440
    functionName: detail::invoke_result_nocvref_t< F, const error_type && > or_else(
      F && f ) const &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - detail::invoke_result_nocvref_t< F, const error_type && >
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const error_type
      && > or_else( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2452,1
    - Dst: expected< detail::transform_invoke_result_t< F, value_type & >, error_type
        >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2453,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2453,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2453,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2454,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2454,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2455
      start: 2450
    functionDepth: 3
    functionLinenumber: 2450
    functionLinenumberEnd: 2455
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F, value_type & >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F, value_type & >, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< detail::transform_invoke_result_t< F, value_type
      & >, error_type > transform( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2465,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2466,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2466,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2466,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2467,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2467,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2468
      start: 2463
    functionDepth: 3
    functionLinenumber: 2463
    functionLinenumberEnd: 2468
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, error_type > transform( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2479,1
    - Dst: expected< detail::transform_invoke_result_t< F, const value_type & >, error_type
        >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2480,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2480,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2480,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2481,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2481,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2482
      start: 2477
    functionDepth: 3
    functionLinenumber: 2477
    functionLinenumberEnd: 2482
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F, const value_type & >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F, const value_type & >, error_type
      >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< detail::transform_invoke_result_t< F, const
      value_type & >, error_type > transform( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2492,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2493,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2493,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2493,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2494,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2494,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2495
      start: 2490
    functionDepth: 3
    functionLinenumber: 2490
    functionLinenumberEnd: 2495
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, error_type > transform( F && f ) const
      &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2507,1
    - Dst: expected< detail::transform_invoke_result_t< F, value_type && >, error_type
        >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2508,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2508,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2508,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2508,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2509,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2509,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2509,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2510
      start: 2505
    functionDepth: 3
    functionLinenumber: 2505
    functionLinenumberEnd: 2510
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F, value_type && >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - expected< detail::transform_invoke_result_t< F, value_type && >, error_type
      >
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< detail::transform_invoke_result_t< F, value_type
      && >, error_type > transform( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2520,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2521,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2521,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2521,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2522,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2522,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2522,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2523
      start: 2518
    functionDepth: 3
    functionLinenumber: 2518
    functionLinenumberEnd: 2523
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, error_type > transform( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2534,1
    - Dst: expected< detail::transform_invoke_result_t< F, const value_type && >,
        error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2535,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2535,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2535,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2535,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2536,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2536,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2536,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2537
      start: 2532
    functionDepth: 3
    functionLinenumber: 2532
    functionLinenumberEnd: 2537
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F, const value_type && >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F, const value_type && >, error_type
      >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< detail::transform_invoke_result_t< F, const
      value_type && >, error_type > transform( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2547,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2548,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2548,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2548,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2549,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2549,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2549,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2550
      start: 2545
    functionDepth: 3
    functionLinenumber: 2545
    functionLinenumberEnd: 2550
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, error_type > transform( F && f ) const
      &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2561,1
    - Dst: expected< value_type, detail::transform_invoke_result_t< F, error_type
        & > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2562,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2563,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2563,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2563,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2563,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2564
      start: 2559
    functionDepth: 3
    functionLinenumber: 2559
    functionLinenumberEnd: 2564
    functionName: nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
      F, error_type & > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - expected< value_type, detail::transform_invoke_result_t< F, error_type & > >
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< value_type, detail::transform_invoke_result_t<
      F, error_type & > > transform_error( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2574,1
    - Dst: expected< value_type, detail::transform_invoke_result_t< F, const error_type
        & > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2575,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2576,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2576,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2576,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2576,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2577
      start: 2572
    functionDepth: 3
    functionLinenumber: 2572
    functionLinenumberEnd: 2577
    functionName: nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
      F, const error_type & > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< value_type, detail::transform_invoke_result_t< F, const error_type
      & > >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< value_type, detail::transform_invoke_result_t<
      F, const error_type & > > transform_error( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2588,1
    - Dst: expected< value_type, detail::transform_invoke_result_t< F, error_type
        && > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2589,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2589,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2591
      start: 2586
    functionDepth: 3
    functionLinenumber: 2586
    functionLinenumberEnd: 2591
    functionName: nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
      F, error_type && > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< value_type, detail::transform_invoke_result_t< F, error_type && >
      >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< value_type, detail::transform_invoke_result_t<
      F, error_type && > > transform_error( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2601,1
    - Dst: expected< value_type, detail::transform_invoke_result_t< F, const error_type
        && > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2602,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2602,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2604
      start: 2599
    functionDepth: 3
    functionLinenumber: 2599
    functionLinenumberEnd: 2604
    functionName: nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
      F, const error_type && > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - expected< value_type, detail::transform_invoke_result_t< F, const error_type
      && > >
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< value_type, detail::transform_invoke_result_t<
      F, const error_type && > > transform_error( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2666
      start: 2664
    functionDepth: 0
    functionLinenumber: 2664
    functionLinenumberEnd: 2666
    functionName: nonstd::expected_lite::expected<void, E>::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void expected() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2668
      start: 2668
    functionDepth: 0
    functionLinenumber: 2668
    functionLinenumberEnd: 2668
    functionName: nonstd::expected_lite::expected<void, E>::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected( expected const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - '      other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2669
      start: 2669
    functionDepth: 0
    functionLinenumber: 2669
    functionLinenumberEnd: 2669
    functionName: nonstd::expected_lite::expected<void, E>::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected( expected &&      other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2673
      start: 2671
    functionDepth: 0
    functionLinenumber: 2671
    functionLinenumberEnd: 2673
    functionName: nonstd::expected_lite::expected<void, E>::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void expected( nonstd_lite_in_place_t(void) )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2738,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2738,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2739
      start: 2735
    functionDepth: 0
    functionLinenumber: 2735
    functionLinenumberEnd: 2739
    functionName: nonstd::expected_lite::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 4
    functionsReached:
    - emplace_error
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void expected( unexpect_t, std::initializer_list<U> il, Args&&... args
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2745,1
    - Dst: destruct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2747,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2749
      start: 2743
    functionDepth: 2
    functionLinenumber: 2743
    functionLinenumberEnd: 2749
    functionName: ~expected()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - destruct_error
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: void
    signature: void ~expected()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2755,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2757
      start: 2753
    functionDepth: 1
    functionLinenumber: 2753
    functionLinenumberEnd: 2757
    functionName: '& operator=( expected const & other )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    linkageType: ''
    returnType: expected
    signature: expected & operator=( expected const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2764,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2764,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2766
      start: 2759
    functionDepth: 0
    functionLinenumber: 2759
    functionLinenumberEnd: 2766
    functionName: "& operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_assignable<E>::value
      &&\n        std::is_nothrow_move_constructible<E>::value )"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    - std::move
    linkageType: ''
    returnType: expected
    signature: "expected & operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_assignable<E>::value
      &&\n        std::is_nothrow_move_constructible<E>::value )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2770,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2771
      start: 2768
    functionDepth: 1
    functionLinenumber: 2768
    functionLinenumberEnd: 2771
    functionName: nonstd::expected_lite::emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    linkageType: ''
    returnType: void
    signature: void emplace()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2787,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2787,1
    - Dst: contained::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2787,1
    - Dst: construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2788,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2788,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2788,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2789,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2790,1
    - Dst: contained::set_has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2791,1
    - Dst: set_has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2792,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2794,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2795
      start: 2780
    functionDepth: 3
    functionLinenumber: 2780
    functionLinenumberEnd: 2795
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 8
    functionsReached:
    - std::move
    - nonstd::expected_lite::swap
    - set_has_value
    - construct_error
    - contained::error
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    - contained::set_has_value
    linkageType: ''
    returnType: void
    signature: "void swap( expected & other ) noexcept\n    (\n        std::is_nothrow_move_constructible<E>::value
      && std17::is_nothrow_swappable<E&>::value\n    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2801,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2802
      start: 2799
    functionDepth: 2
    functionLinenumber: 2799
    functionLinenumberEnd: 2802
    functionName: operator bool() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: void
    signature: void operator bool() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2806,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2807
      start: 2804
    functionDepth: 1
    functionLinenumber: 2804
    functionLinenumberEnd: 2807
    functionName: nonstd::expected_lite::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 27
    functionsReached:
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: bool
    signature: bool has_value() const noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2811,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2813,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2813,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2815
      start: 2809
    functionDepth: 3
    functionLinenumber: 2809
    functionLinenumberEnd: 2815
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 13
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: void
    signature: void value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2819,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2819,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2819,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2818
        line_start: 2818
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2820
      start: 2817
    functionDepth: 2
    functionLinenumber: 2817
    functionLinenumberEnd: 2820
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 27
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2824,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2824,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2824,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2823
        line_start: 2823
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2825
      start: 2822
    functionDepth: 2
    functionLinenumber: 2822
    functionLinenumberEnd: 2825
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 28
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2831,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2831,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2831,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2831,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2830
        line_start: 2830
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2832
      start: 2829
    functionDepth: 2
    functionLinenumber: 2829
    functionLinenumberEnd: 2832
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 29
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2836,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2836,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2836,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2836,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2835
        line_start: 2835
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2837
      start: 2834
    functionDepth: 2
    functionLinenumber: 2834
    functionLinenumberEnd: 2837
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 30
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2843,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2843,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2844
      start: 2841
    functionDepth: 3
    functionLinenumber: 2841
    functionLinenumberEnd: 2844
    functionName: nonstd::expected_lite::get_unexpected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 1
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::make_unexpected
    linkageType: ''
    returnType: unexpected_type
    signature: unexpected_type get_unexpected() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2849,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2850,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2851
      start: 2847
    functionDepth: 4
    functionLinenumber: 2847
    functionLinenumberEnd: 2851
    functionName: nonstd::expected_lite::has_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool has_exception() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2862,1
    - Dst: static_cast< E >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2863,1
    - Dst: std::forward< G >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2863,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2864,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - G
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2865
      start: 2860
    functionDepth: 3
    functionLinenumber: 2860
    functionLinenumberEnd: 2865
    functionName: nonstd::expected_lite::error_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward< G >
    - nonstd::expected_lite::error
    - static_cast< E >
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr error_or( G && e ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2875,1
    - Dst: static_cast< E >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2876,1
    - Dst: std::forward< G >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2876,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2877,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2877,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - G
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2878
      start: 2873
    functionDepth: 3
    functionLinenumber: 2873
    functionLinenumberEnd: 2878
    functionName: nonstd::expected_lite::error_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::forward< G >
    - static_cast< E >
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 error_or( G && e ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2892,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2893,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2893,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2893,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2894,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2894,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2895
      start: 2890
    functionDepth: 3
    functionLinenumber: 2890
    functionLinenumberEnd: 2895
    functionName: detail::invoke_result_nocvref_t< F > and_then( F && f ) &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F > and_then( F &&
      f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2906,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2907,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2907,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2907,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2908,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2908,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2909
      start: 2904
    functionDepth: 3
    functionLinenumber: 2904
    functionLinenumberEnd: 2909
    functionName: detail::invoke_result_nocvref_t< F > and_then( F && f ) const &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F > and_then( F &&
      f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2921,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2922,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2922,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2922,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2923,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2923,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2923,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2924
      start: 2919
    functionDepth: 3
    functionLinenumber: 2919
    functionLinenumberEnd: 2924
    functionName: detail::invoke_result_nocvref_t< F > and_then( F && f ) &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F > and_then( F &&
      f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2935,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2936,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2936,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2936,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2937,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2937,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2937,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2938
      start: 2933
    functionDepth: 3
    functionLinenumber: 2933
    functionLinenumberEnd: 2938
    functionName: detail::invoke_result_nocvref_t< F > and_then( F && f ) const &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F > and_then( F &&
      f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2949,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2950,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2951,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2951,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2951,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2951,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2952
      start: 2947
    functionDepth: 3
    functionLinenumber: 2947
    functionLinenumberEnd: 2952
    functionName: detail::invoke_result_nocvref_t< F, error_type & > or_else( F &&
      f ) &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - detail::invoke_result_nocvref_t< F, error_type & >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, error_type & >
      or_else( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2962,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2963,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2964,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2964,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2964,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2964,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2965
      start: 2960
    functionDepth: 3
    functionLinenumber: 2960
    functionLinenumberEnd: 2965
    functionName: detail::invoke_result_nocvref_t< F, const error_type & > or_else(
      F && f ) const &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, const error_type & >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const error_type
      & > or_else( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2976,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2977,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2979
      start: 2974
    functionDepth: 3
    functionLinenumber: 2974
    functionLinenumberEnd: 2979
    functionName: detail::invoke_result_nocvref_t< F, error_type && > or_else( F &&
      f ) &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - detail::invoke_result_nocvref_t< F, error_type && >
    - has_value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, error_type &&
      > or_else( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2989,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2990,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2992
      start: 2987
    functionDepth: 3
    functionLinenumber: 2987
    functionLinenumberEnd: 2992
    functionName: detail::invoke_result_nocvref_t< F, const error_type && > or_else(
      F && f ) const &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - detail::invoke_result_nocvref_t< F, const error_type && >
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const error_type
      && > or_else( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3003,1
    - Dst: expected< detail::transform_invoke_result_t< F >, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3004,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3004,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3004,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3005,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3005,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3006
      start: 3001
    functionDepth: 3
    functionLinenumber: 3001
    functionLinenumberEnd: 3006
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F >, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< detail::transform_invoke_result_t< F >,
      error_type > transform( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3016,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3017,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3017,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3017,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3018,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3018,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3019
      start: 3014
    functionDepth: 3
    functionLinenumber: 3014
    functionLinenumberEnd: 3019
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, error_type > transform( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3029,1
    - Dst: expected< detail::transform_invoke_result_t< F >, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3030,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3030,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3030,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3031,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3031,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3032
      start: 3027
    functionDepth: 3
    functionLinenumber: 3027
    functionLinenumberEnd: 3032
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F >, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< detail::transform_invoke_result_t< F >, error_type
      > transform( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3042,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3043,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3043,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3043,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3044,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3044,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3045
      start: 3040
    functionDepth: 3
    functionLinenumber: 3040
    functionLinenumberEnd: 3045
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, error_type > transform( F && f ) const
      &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3056,1
    - Dst: expected< detail::transform_invoke_result_t< F >, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3057,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3057,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3057,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3058,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3058,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3059
      start: 3054
    functionDepth: 3
    functionLinenumber: 3054
    functionLinenumberEnd: 3059
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F >, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< detail::transform_invoke_result_t< F >,
      error_type > transform( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3069,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3070,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3070,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3070,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3071,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3071,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3072
      start: 3067
    functionDepth: 3
    functionLinenumber: 3067
    functionLinenumberEnd: 3072
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, error_type > transform( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3082,1
    - Dst: expected< detail::transform_invoke_result_t< F >, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3083,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3083,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3083,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3084,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3084,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3085
      start: 3080
    functionDepth: 3
    functionLinenumber: 3080
    functionLinenumberEnd: 3085
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F >, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< detail::transform_invoke_result_t< F >, error_type
      > transform( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3095,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3096,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3096,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3096,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3097,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3097,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3098
      start: 3093
    functionDepth: 3
    functionLinenumber: 3093
    functionLinenumberEnd: 3098
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, error_type > transform( F && f ) const
      &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3108,1
    - Dst: expected< void, detail::transform_invoke_result_t< F, error_type & > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3109,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3110,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3110,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3110,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3111
      start: 3106
    functionDepth: 3
    functionLinenumber: 3106
    functionLinenumberEnd: 3111
    functionName: nonstd::expected_lite::expected< void, detail::transform_invoke_result_t<
      F, error_type & > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - expected< void, detail::transform_invoke_result_t< F, error_type & > >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, detail::transform_invoke_result_t<
      F, error_type & > > transform_error( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3120,1
    - Dst: expected< void, detail::transform_invoke_result_t< F, const error_type
        & > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3121,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3122,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3122,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3122,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3123
      start: 3118
    functionDepth: 3
    functionLinenumber: 3118
    functionLinenumberEnd: 3123
    functionName: nonstd::expected_lite::expected< void, detail::transform_invoke_result_t<
      F, const error_type & > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - expected< void, detail::transform_invoke_result_t< F, const error_type & > >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, detail::transform_invoke_result_t< F,
      const error_type & > > transform_error( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3133,1
    - Dst: expected< void, detail::transform_invoke_result_t< F, error_type && > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3134,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3136
      start: 3131
    functionDepth: 3
    functionLinenumber: 3131
    functionLinenumberEnd: 3136
    functionName: nonstd::expected_lite::expected< void, detail::transform_invoke_result_t<
      F, error_type && > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, detail::transform_invoke_result_t< F, error_type && > >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, detail::transform_invoke_result_t<
      F, error_type && > > transform_error( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3145,1
    - Dst: expected< void, detail::transform_invoke_result_t< F, const error_type
        && > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3146,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3148
      start: 3143
    functionDepth: 3
    functionLinenumber: 3143
    functionLinenumberEnd: 3148
    functionName: nonstd::expected_lite::expected< void, detail::transform_invoke_result_t<
      F, const error_type && > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, detail::transform_invoke_result_t< F, const error_type && >
      >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, detail::transform_invoke_result_t< F,
      const error_type && > > transform_error( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3193,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T1,E1>
    - expected<T2,E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3194
      start: 3191
    functionDepth: 3
    functionLinenumber: 3191
    functionLinenumberEnd: 3194
    functionName: operator==( expected<T1,E1> const & x, expected<T2,E2> const & y
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: bool
    signature: bool operator==( expected<T1,E1> const & x, expected<T2,E2> const &
      y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3203,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3203,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3203,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T1,E1>
    - expected<T2,E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3204
      start: 3201
    functionDepth: 3
    functionLinenumber: 3201
    functionLinenumberEnd: 3204
    functionName: operator==( expected<T1,E1> const & x, expected<T2,E2> const & y
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::error
    - static_cast<bool>
    linkageType: ''
    returnType: bool
    signature: bool operator==( expected<T1,E1> const & x, expected<T2,E2> const &
      y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T1,E1>
    - expected<T2,E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3210
      start: 3207
    functionDepth: 0
    functionLinenumber: 3207
    functionLinenumberEnd: 3210
    functionName: operator!=( expected<T1,E1> const & x, expected<T2,E2> const & y
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( expected<T1,E1> const & x, expected<T2,E2> const &
      y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3218
      start: 3215
    functionDepth: 0
    functionLinenumber: 3215
    functionLinenumberEnd: 3218
    functionName: operator<( expected<T,E> const & x, expected<T,E> const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<( expected<T,E> const & x, expected<T,E> const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3224
      start: 3221
    functionDepth: 0
    functionLinenumber: 3221
    functionLinenumberEnd: 3224
    functionName: operator>( expected<T,E> const & x, expected<T,E> const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( expected<T,E> const & x, expected<T,E> const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3230
      start: 3227
    functionDepth: 0
    functionLinenumber: 3227
    functionLinenumberEnd: 3230
    functionName: operator<=( expected<T,E> const & x, expected<T,E> const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( expected<T,E> const & x, expected<T,E> const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3236
      start: 3233
    functionDepth: 0
    functionLinenumber: 3233
    functionLinenumberEnd: 3236
    functionName: operator>=( expected<T,E> const & x, expected<T,E> const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( expected<T,E> const & x, expected<T,E> const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T1,E1>
    - T2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3250
      start: 3247
    functionDepth: 0
    functionLinenumber: 3247
    functionLinenumberEnd: 3250
    functionName: operator==( expected<T1,E1> const & x, T2 const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==( expected<T1,E1> const & x, T2 const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T2
    - expected<T1,E1>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3260
      start: 3257
    functionDepth: 0
    functionLinenumber: 3257
    functionLinenumberEnd: 3260
    functionName: operator==(T2 const & v, expected<T1,E1> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(T2 const & v, expected<T1,E1> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T1,E1>
    - T2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3266
      start: 3263
    functionDepth: 0
    functionLinenumber: 3263
    functionLinenumberEnd: 3266
    functionName: operator!=( expected<T1,E1> const & x, T2 const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( expected<T1,E1> const & x, T2 const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T2
    - expected<T1,E1>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3272
      start: 3269
    functionDepth: 0
    functionLinenumber: 3269
    functionLinenumberEnd: 3272
    functionName: operator!=( T2 const & v, expected<T1,E1> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( T2 const & v, expected<T1,E1> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T,E>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3280
      start: 3277
    functionDepth: 0
    functionLinenumber: 3277
    functionLinenumberEnd: 3280
    functionName: operator<( expected<T,E> const & x, T const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<( expected<T,E> const & x, T const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3286
      start: 3283
    functionDepth: 0
    functionLinenumber: 3283
    functionLinenumberEnd: 3286
    functionName: operator<( T const & v, expected<T,E> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<( T const & v, expected<T,E> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3292
      start: 3289
    functionDepth: 0
    functionLinenumber: 3289
    functionLinenumberEnd: 3292
    functionName: operator>( T const & v, expected<T,E> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( T const & v, expected<T,E> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T,E>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3298
      start: 3295
    functionDepth: 0
    functionLinenumber: 3295
    functionLinenumberEnd: 3298
    functionName: operator>( expected<T,E> const & x, T const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( expected<T,E> const & x, T const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3304
      start: 3301
    functionDepth: 0
    functionLinenumber: 3301
    functionLinenumberEnd: 3304
    functionName: operator<=( T const & v, expected<T,E> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( T const & v, expected<T,E> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T,E>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3310
      start: 3307
    functionDepth: 0
    functionLinenumber: 3307
    functionLinenumberEnd: 3310
    functionName: operator<=( expected<T,E> const & x, T const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( expected<T,E> const & x, T const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T,E>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3316
      start: 3313
    functionDepth: 0
    functionLinenumber: 3313
    functionLinenumberEnd: 3316
    functionName: operator>=( expected<T,E> const & x, T const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( expected<T,E> const & x, T const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3322
      start: 3319
    functionDepth: 0
    functionLinenumber: 3319
    functionLinenumberEnd: 3322
    functionName: operator>=( T const & v, expected<T,E> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( T const & v, expected<T,E> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T1,E1>
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3332
      start: 3329
    functionDepth: 4
    functionLinenumber: 3329
    functionLinenumberEnd: 3332
    functionName: operator==( expected<T1,E1> const & x, unexpected_type<E2> const
      & u )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool operator==( expected<T1,E1> const & x, unexpected_type<E2> const
      & u )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E2>
    - expected<T1,E1>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3338
      start: 3335
    functionDepth: 0
    functionLinenumber: 3335
    functionLinenumberEnd: 3338
    functionName: operator==( unexpected_type<E2> const & u, expected<T1,E1> const
      & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==( unexpected_type<E2> const & u, expected<T1,E1> const
      & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T1,E1>
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3344
      start: 3341
    functionDepth: 0
    functionLinenumber: 3341
    functionLinenumberEnd: 3344
    functionName: operator!=( expected<T1,E1> const & x, unexpected_type<E2> const
      & u )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( expected<T1,E1> const & x, unexpected_type<E2> const
      & u )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E2>
    - expected<T1,E1>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3350
      start: 3347
    functionDepth: 0
    functionLinenumber: 3347
    functionLinenumberEnd: 3350
    functionName: operator!=( unexpected_type<E2> const & u, expected<T1,E1> const
      & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( unexpected_type<E2> const & u, expected<T1,E1> const
      & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T,E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3358
      start: 3355
    functionDepth: 4
    functionLinenumber: 3355
    functionLinenumberEnd: 3358
    functionName: operator<( expected<T,E> const & x, unexpected_type<E> const & u
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool operator<( expected<T,E> const & x, unexpected_type<E> const &
      u )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3363,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3364
      start: 3361
    functionDepth: 4
    functionLinenumber: 3361
    functionLinenumberEnd: 3364
    functionName: operator<( unexpected_type<E> const & u, expected<T,E> const & x
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool operator<( unexpected_type<E> const & u, expected<T,E> const &
      x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T,E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3370
      start: 3367
    functionDepth: 0
    functionLinenumber: 3367
    functionLinenumberEnd: 3370
    functionName: operator>( expected<T,E> const & x, unexpected_type<E> const & u
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( expected<T,E> const & x, unexpected_type<E> const &
      u )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3376
      start: 3373
    functionDepth: 0
    functionLinenumber: 3373
    functionLinenumberEnd: 3376
    functionName: operator>( unexpected_type<E> const & u, expected<T,E> const & x
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( unexpected_type<E> const & u, expected<T,E> const &
      x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T,E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3382
      start: 3379
    functionDepth: 0
    functionLinenumber: 3379
    functionLinenumberEnd: 3382
    functionName: operator<=( expected<T,E> const & x, unexpected_type<E> const &
      u )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( expected<T,E> const & x, unexpected_type<E> const
      & u )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3388
      start: 3385
    functionDepth: 0
    functionLinenumber: 3385
    functionLinenumberEnd: 3388
    functionName: operator<=( unexpected_type<E> const & u, expected<T,E> const &
      x)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( unexpected_type<E> const & u, expected<T,E> const
      & x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T,E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3394
      start: 3391
    functionDepth: 0
    functionLinenumber: 3391
    functionLinenumberEnd: 3394
    functionName: operator>=( expected<T,E> const & x, unexpected_type<E> const &
      u  )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( expected<T,E> const & x, unexpected_type<E> const
      & u  )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3400
      start: 3397
    functionDepth: 0
    functionLinenumber: 3397
    functionLinenumberEnd: 3400
    functionName: operator>=( unexpected_type<E> const & u, expected<T,E> const &
      x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( unexpected_type<E> const & u, expected<T,E> const
      & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3413,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3413,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3416
      start: 3413
    functionDepth: 1
    functionLinenumber: 3413
    functionLinenumberEnd: 3416
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 9
    functionsReached:
    - noexcept
    - nonstd::expected_lite::swap
    linkageType: ''
    returnType: void
    signature: void swap( expected<T,E> & x, expected<T,E> & y ) noexcept ( noexcept
      ( x.swap(y) ) )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3423,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3423,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3424
      start: 3421
    functionDepth: 1
    functionLinenumber: 3421
    functionLinenumberEnd: 3424
    functionName: nonstd::expected_lite::make_expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<T>
    - nonstd::expected_lite::expected
    linkageType: ''
    returnType: auto
    signature: auto make_expected( T && v ) -> expected< typename std::decay<T>::type
      >
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3431
      start: 3428
    functionDepth: 1
    functionLinenumber: 3428
    functionLinenumberEnd: 3431
    functionName: nonstd::expected_lite::make_expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    linkageType: ''
    returnType: auto
    signature: auto make_expected() -> expected<void>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3436,1
    - Dst: nonstd::expected_lite::make_unexpected_from_current_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3436,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3437
      start: 3434
    functionDepth: 2
    functionLinenumber: 3434
    functionLinenumberEnd: 3437
    functionName: nonstd::expected_lite::make_expected_from_current_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    - nonstd::expected_lite::make_unexpected_from_current_exception
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_current_exception() -> expected<T>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3442,1
    - Dst: nonstd::expected_lite::unexpected_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3442,1
    - Dst: std::forward<std::exception_ptr>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::exception_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3443
      start: 3440
    functionDepth: 1
    functionLinenumber: 3440
    functionLinenumberEnd: 3443
    functionName: nonstd::expected_lite::make_expected_from_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    - std::forward<std::exception_ptr>
    - nonstd::expected_lite::unexpected_type
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_exception( std::exception_ptr v ) -> expected<T>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3448,1
    - Dst: nonstd::expected_lite::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - e
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3449
      start: 3446
    functionDepth: 2
    functionLinenumber: 3446
    functionLinenumberEnd: 3449
    functionName: nonstd::expected_lite::make_expected_from_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    - nonstd::expected_lite::make_unexpected
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_error( E e ) -> expected<T, typename std::decay<E>::type>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::make_expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3459,1
    - Dst: f
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3459,1
    - Dst: nonstd::expected_lite::make_unexpected_from_current_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3463,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - f
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3465
      start: 3455
    functionDepth: 2
    functionLinenumber: 3455
    functionLinenumberEnd: 3465
    functionName: nonstd::expected_lite::make_expected_from_call
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - f
    - nonstd::expected_lite::make_expected
    - nonstd::expected_lite::make_unexpected_from_current_exception
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_call( F f ) -> expected< typename std::result_of<F()>::type
      >
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3475,1
    - Dst: nonstd::expected_lite::make_expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3476,1
    - Dst: nonstd::expected_lite::make_unexpected_from_current_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3480,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - f
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3482
      start: 3471
    functionDepth: 2
    functionLinenumber: 3471
    functionLinenumberEnd: 3482
    functionName: nonstd::expected_lite::make_expected_from_call
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - f
    - nonstd::expected_lite::make_expected
    - nonstd::expected_lite::make_unexpected_from_current_exception
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_call( F f ) -> expected<void>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: contained
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1787,1
    - Dst: construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1789,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1790
      start: 1786
    functionDepth: 0
    functionLinenumber: 1786
    functionLinenumberEnd: 1790
    functionName: nonstd::expected_lite::expected::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - contained
    - construct_value
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1792
      start: 1792
    functionDepth: 0
    functionLinenumber: 1792
    functionLinenumberEnd: 1792
    functionName: nonstd::expected_lite::expected::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected( expected const & )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1793
      start: 1793
    functionDepth: 0
    functionLinenumber: 1793
    functionLinenumberEnd: 1793
    functionName: nonstd::expected_lite::expected::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected( expected &&      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1910,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1910,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1911
      start: 1898
    functionDepth: 0
    functionLinenumber: 1898
    functionLinenumberEnd: 1911
    functionName: nonstd::expected_lite::contained
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<U>
    - construct_value
    linkageType: ''
    returnType: ::value
    signature: "::value && !std::is_same<nonstd::unexpected_type<E>, typename std20::remove_cvref<U>::type>::value\n
      \           && !std::is_convertible<U&&,T>::value /*=> explicit */\n        )\n
      \   >\n    nsel_constexpr14 explicit expected( U && value ) noexcept\n    (\n
      \       std::is_nothrow_move_constructible<U>::value &&\n        std::is_nothrow_move_constructible<E>::value\n
      \   )\n    : contained( true )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1929,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1929,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1930
      start: 1917
    functionDepth: 0
    functionLinenumber: 1917
    functionLinenumberEnd: 1930
    functionName: nonstd::expected_lite::contained
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<U>
    - construct_value
    linkageType: ''
    returnType: ::value
    signature: "::value && !std::is_same<nonstd::unexpected_type<E>, typename std20::remove_cvref<U>::type>::value\n
      \           &&  std::is_convertible<U&&,T>::value /*=> non-explicit */\n        )\n
      \   >\n    nsel_constexpr14 /*non-explicit*/ expected( U && value ) noexcept\n
      \   (\n        std::is_nothrow_move_constructible<U>::value &&\n        std::is_nothrow_move_constructible<E>::value\n
      \   )\n    : contained( true )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2003,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2003,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2004
      start: 2000
    functionDepth: 0
    functionLinenumber: 2000
    functionLinenumberEnd: 2004
    functionName: nonstd::expected_lite::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 11
    functionsReached:
    - emplace_value
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void expected( nonstd_lite_in_place_t(T), std::initializer_list<U>
      il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2027,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2027,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2028
      start: 2024
    functionDepth: 0
    functionLinenumber: 2024
    functionLinenumberEnd: 2028
    functionName: nonstd::expected_lite::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 11
    functionsReached:
    - emplace_error
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void expected( unexpect_t, std::initializer_list<U> il, Args&&... args
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2038,1
    - Dst: destruct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2038,1
    - Dst: destruct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2039,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 2036
    functionDepth: 0
    functionLinenumber: 2036
    functionLinenumberEnd: 2040
    functionName: ~expected()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - destruct_error
    - destruct_value
    linkageType: ''
    returnType: void
    signature: void ~expected()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2046,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2048
      start: 2044
    functionDepth: 0
    functionLinenumber: 2044
    functionLinenumberEnd: 2048
    functionName: '& operator=( expected const & other )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    linkageType: ''
    returnType: expected
    signature: expected & operator=( expected const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2057,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2057,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2059
      start: 2050
    functionDepth: 0
    functionLinenumber: 2050
    functionLinenumberEnd: 2059
    functionName: "& operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_constructible<
      \  T>::value\n        && std::is_nothrow_move_assignable<   T>::value\n        &&
      std::is_nothrow_move_constructible<E>::value     // added for missing\n        &&
      std::is_nothrow_move_assignable<   E>::value )"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    - std::move
    linkageType: ''
    returnType: expected
    signature: "expected & operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_constructible<
      \  T>::value\n        && std::is_nothrow_move_assignable<   T>::value\n        &&
      std::is_nothrow_move_constructible<E>::value     // added for missing\n        &&
      std::is_nothrow_move_assignable<   E>::value )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2071,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2071,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2073
      start: 2069
    functionDepth: 0
    functionLinenumber: 2069
    functionLinenumberEnd: 2073
    functionName: '& operator=( U && value )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<U>
    - expected
    linkageType: ''
    returnType: expected
    signature: expected & operator=( U && value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2084,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2084,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - nonstd::unexpected_type<G>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2086
      start: 2082
    functionDepth: 0
    functionLinenumber: 2082
    functionLinenumberEnd: 2086
    functionName: '& operator=( nonstd::unexpected_type<G> const & error )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    - error
    linkageType: ''
    returnType: expected
    signature: expected & operator=( nonstd::unexpected_type<G> const & error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2097,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2097,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2097,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - nonstd::unexpected_type<G>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2099
      start: 2095
    functionDepth: 0
    functionLinenumber: 2095
    functionLinenumberEnd: 2099
    functionName: '& operator=( nonstd::unexpected_type<G> && error )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    - std::move
    - error
    linkageType: ''
    returnType: expected
    signature: expected & operator=( nonstd::unexpected_type<G> && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2108,1
    - Dst: nonstd_lite_in_place
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2108,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2108,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2110
      start: 2106
    functionDepth: 1
    functionLinenumber: 2106
    functionLinenumberEnd: 2110
    functionName: nonstd::expected_lite::emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd_lite_in_place
    - nonstd::expected_lite::value
    - nonstd::expected_lite::expected
    - std::forward<Args>
    linkageType: ''
    returnType: value_type
    signature: value_type & emplace( Args &&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2119,1
    - Dst: nonstd_lite_in_place
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2119,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2119,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2121
      start: 2117
    functionDepth: 1
    functionLinenumber: 2117
    functionLinenumberEnd: 2121
    functionName: nonstd::expected_lite::emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd_lite_in_place
    - nonstd::expected_lite::value
    - nonstd::expected_lite::expected
    - std::forward<Args>
    linkageType: ''
    returnType: value_type
    signature: value_type & emplace( std::initializer_list<U> il, Args &&... args
      )
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2139,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2139,1
    - Dst: contained::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2139,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2140,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2140,1
    - Dst: contained::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2140,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2141,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2141,1
    - Dst: contained::destruct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2142,1
    - Dst: contained::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2143,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2143,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2143,1
    - Dst: destruct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2144,1
    - Dst: construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2145,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2145,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2146,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2147,1
    - Dst: contained::set_has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2148,1
    - Dst: set_has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2149,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2151,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 18
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2152
      start: 2131
    functionDepth: 3
    functionLinenumber: 2131
    functionLinenumberEnd: 2152
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 10
    functionsReached:
    - contained::construct_value
    - std::move
    - nonstd::expected_lite::swap
    - set_has_value
    - nonstd::expected_lite::value
    - contained::value
    - contained::set_has_value
    - construct_error
    - contained::error
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    - destruct_value
    - contained::destruct_error
    linkageType: ''
    returnType: void
    signature: "void swap( expected & other ) noexcept\n    (\n        std::is_nothrow_move_constructible<T>::value
      && std17::is_nothrow_swappable<T&>::value &&\n        std::is_nothrow_move_constructible<E>::value
      && std17::is_nothrow_swappable<E&>::value\n    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2158,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2158,1
    - Dst: value_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2157
        line_start: 2157
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2159
      start: 2156
    functionDepth: 0
    functionLinenumber: 2156
    functionLinenumberEnd: 2159
    functionName: '* operator ->() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - assert
    - value_ptr
    linkageType: ''
    returnType: value_type
    signature: value_type * operator ->() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2163,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2163,1
    - Dst: value_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2162
        line_start: 2162
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2164
      start: 2161
    functionDepth: 0
    functionLinenumber: 2161
    functionLinenumberEnd: 2164
    functionName: '* operator ->()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - assert
    - value_ptr
    linkageType: ''
    returnType: value_type
    signature: value_type * operator ->()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2168,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2168,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2167
        line_start: 2167
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2169
      start: 2166
    functionDepth: 1
    functionLinenumber: 2166
    functionLinenumberEnd: 2169
    functionName: '& operator *() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - assert
    linkageType: ''
    returnType: value_type
    signature: value_type & operator *() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2173,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2173,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2172
        line_start: 2172
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2174
      start: 2171
    functionDepth: 1
    functionLinenumber: 2171
    functionLinenumberEnd: 2174
    functionName: '& operator *() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - assert
    linkageType: ''
    returnType: value_type
    signature: value_type & operator *() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2180,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2180,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2180,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2180,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2179
        line_start: 2179
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2181
      start: 2178
    functionDepth: 1
    functionLinenumber: 2178
    functionLinenumberEnd: 2181
    functionName: '&& operator *() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value
    - has_value
    - assert
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && operator *() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2185,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2185,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2185,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2185,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2184
        line_start: 2184
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2186
      start: 2183
    functionDepth: 1
    functionLinenumber: 2183
    functionLinenumberEnd: 2186
    functionName: '&& operator *() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value
    - has_value
    - assert
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && operator *() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2193
      start: 2190
    functionDepth: 0
    functionLinenumber: 2190
    functionLinenumberEnd: 2193
    functionName: operator bool() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    linkageType: ''
    returnType: void
    signature: void operator bool() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2198
      start: 2195
    functionDepth: 1
    functionLinenumber: 2195
    functionLinenumberEnd: 2198
    functionName: nonstd::expected_lite::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 37
    functionsReached:
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: bool
    signature: bool has_value() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2204,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2205,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2206,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2206,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2207
      start: 2202
    functionDepth: 3
    functionLinenumber: 2202
    functionLinenumberEnd: 2207
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 17
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::value
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2211,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2212,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2213,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2213,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2214
      start: 2209
    functionDepth: 3
    functionLinenumber: 2209
    functionLinenumberEnd: 2214
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 18
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::value
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2221,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2221,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2222,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2223,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2223,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2223,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2224
      start: 2219
    functionDepth: 3
    functionLinenumber: 2219
    functionLinenumberEnd: 2224
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 19
    functionsReached:
    - std::move
    - nonstd::expected_lite::value
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2228,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2228,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2229,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2230,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2230,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2230,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2231
      start: 2226
    functionDepth: 3
    functionLinenumber: 2226
    functionLinenumberEnd: 2231
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 20
    functionsReached:
    - std::move
    - nonstd::expected_lite::value
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2237,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2237,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2236
        line_start: 2236
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2238
      start: 2235
    functionDepth: 2
    functionLinenumber: 2235
    functionLinenumberEnd: 2238
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 41
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2242,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2242,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2241
        line_start: 2241
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2243
      start: 2240
    functionDepth: 2
    functionLinenumber: 2240
    functionLinenumberEnd: 2243
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 42
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2249,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2249,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2249,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2249,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2248
        line_start: 2248
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2250
      start: 2247
    functionDepth: 2
    functionLinenumber: 2247
    functionLinenumberEnd: 2250
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 43
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2254,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2254,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2254,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2254,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2253
        line_start: 2253
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2255
      start: 2252
    functionDepth: 2
    functionLinenumber: 2252
    functionLinenumberEnd: 2255
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 44
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2261,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2262
      start: 2259
    functionDepth: 3
    functionLinenumber: 2259
    functionLinenumberEnd: 2262
    functionName: nonstd::expected_lite::get_unexpected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 5
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::make_unexpected
    linkageType: ''
    returnType: unexpected_type
    signature: unexpected_type get_unexpected() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2267,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2268,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2269
      start: 2265
    functionDepth: 4
    functionLinenumber: 2265
    functionLinenumberEnd: 2269
    functionName: nonstd::expected_lite::has_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool has_exception() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2279,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2280,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2281,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2281,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2282
      start: 2277
    functionDepth: 2
    functionLinenumber: 2277
    functionLinenumberEnd: 2282
    functionName: nonstd::expected_lite::value_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T>
    - std::forward<U>
    - nonstd::expected_lite::value
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: value_type
    signature: value_type value_or( U && v ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2292,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2293,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2293,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2294,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2294,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2295
      start: 2290
    functionDepth: 2
    functionLinenumber: 2290
    functionLinenumberEnd: 2295
    functionName: nonstd::expected_lite::value_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - nonstd::expected_lite::value
    - static_cast<T>
    - nonstd::expected_lite::has_value
    - std::forward<U>
    linkageType: ''
    returnType: value_type
    signature: value_type value_or( U && v ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2306,1
    - Dst: static_cast< E >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2307,1
    - Dst: std::forward< G >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2307,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - G
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2309
      start: 2304
    functionDepth: 3
    functionLinenumber: 2304
    functionLinenumberEnd: 2309
    functionName: nonstd::expected_lite::error_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward< G >
    - nonstd::expected_lite::error
    - static_cast< E >
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr error_or( G && e ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2319,1
    - Dst: static_cast< E >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2320,1
    - Dst: std::forward< G >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2320,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2321,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2321,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - G
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2322
      start: 2317
    functionDepth: 3
    functionLinenumber: 2317
    functionLinenumberEnd: 2322
    functionName: nonstd::expected_lite::error_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::forward< G >
    - static_cast< E >
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 error_or( G && e ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2336,1
    - Dst: detail::invoke_result_nocvref_t< F, value_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2337,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2337,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2337,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2337,1
    - Dst: detail::invoke_result_nocvref_t< F, value_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2338,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2338,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2339
      start: 2334
    functionDepth: 3
    functionLinenumber: 2334
    functionLinenumberEnd: 2339
    functionName: detail::invoke_result_nocvref_t< F, value_type & > and_then( F &&
      f ) &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, value_type & >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, value_type & >
      and_then( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2350,1
    - Dst: detail::invoke_result_nocvref_t< F, const value_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2351,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2351,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2351,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2351,1
    - Dst: detail::invoke_result_nocvref_t< F, const value_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2352,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2352,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2353
      start: 2348
    functionDepth: 3
    functionLinenumber: 2348
    functionLinenumberEnd: 2353
    functionName: detail::invoke_result_nocvref_t< F, const value_type & > and_then(
      F && f ) const &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - detail::invoke_result_nocvref_t< F, const value_type & >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const value_type
      & > and_then( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2365,1
    - Dst: detail::invoke_result_nocvref_t< F, value_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: detail::invoke_result_nocvref_t< F, value_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2367,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2367,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2367,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2368
      start: 2363
    functionDepth: 3
    functionLinenumber: 2363
    functionLinenumberEnd: 2368
    functionName: detail::invoke_result_nocvref_t< F, value_type && > and_then( F
      && f ) &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, value_type && >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, value_type &&
      > and_then( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2379,1
    - Dst: detail::invoke_result_nocvref_t< F, const value_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: detail::invoke_result_nocvref_t< F, const value_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2381,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2381,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2381,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2382
      start: 2377
    functionDepth: 3
    functionLinenumber: 2377
    functionLinenumberEnd: 2382
    functionName: detail::invoke_result_nocvref_t< F, const value_type && > and_then(
      F && f ) const &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, const value_type && >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const value_type
      && > and_then( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2394,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2395,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2395,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2396,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2396,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2396,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2396,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2397
      start: 2392
    functionDepth: 3
    functionLinenumber: 2392
    functionLinenumberEnd: 2397
    functionName: detail::invoke_result_nocvref_t< F, error_type & > or_else( F &&
      f ) &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - detail::invoke_result_nocvref_t< F, error_type & >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, error_type & >
      or_else( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2408,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2409,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2409,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2410,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2410,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2410,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2410,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2411
      start: 2406
    functionDepth: 3
    functionLinenumber: 2406
    functionLinenumberEnd: 2411
    functionName: detail::invoke_result_nocvref_t< F, const error_type & > or_else(
      F && f ) const &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, const error_type & >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const error_type
      & > or_else( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2423,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2424,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2424,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2424,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2426
      start: 2421
    functionDepth: 3
    functionLinenumber: 2421
    functionLinenumberEnd: 2426
    functionName: detail::invoke_result_nocvref_t< F, error_type && > or_else( F &&
      f ) &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - detail::invoke_result_nocvref_t< F, error_type && >
    - has_value
    - value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, error_type &&
      > or_else( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2437,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2438,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2438,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2438,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2440
      start: 2435
    functionDepth: 3
    functionLinenumber: 2435
    functionLinenumberEnd: 2440
    functionName: detail::invoke_result_nocvref_t< F, const error_type && > or_else(
      F && f ) const &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - detail::invoke_result_nocvref_t< F, const error_type && >
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const error_type
      && > or_else( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2452,1
    - Dst: expected< detail::transform_invoke_result_t< F, value_type & >, error_type
        >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2453,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2453,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2453,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2454,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2454,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2455
      start: 2450
    functionDepth: 3
    functionLinenumber: 2450
    functionLinenumberEnd: 2455
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F, value_type & >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F, value_type & >, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< detail::transform_invoke_result_t< F, value_type
      & >, error_type > transform( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2465,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2466,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2466,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2466,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2467,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2467,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2468
      start: 2463
    functionDepth: 3
    functionLinenumber: 2463
    functionLinenumberEnd: 2468
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, error_type > transform( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2479,1
    - Dst: expected< detail::transform_invoke_result_t< F, const value_type & >, error_type
        >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2480,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2480,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2480,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2481,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2481,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2482
      start: 2477
    functionDepth: 3
    functionLinenumber: 2477
    functionLinenumberEnd: 2482
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F, const value_type & >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F, const value_type & >, error_type
      >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< detail::transform_invoke_result_t< F, const
      value_type & >, error_type > transform( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2492,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2493,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2493,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2493,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2494,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2494,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2495
      start: 2490
    functionDepth: 3
    functionLinenumber: 2490
    functionLinenumberEnd: 2495
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, error_type > transform( F && f ) const
      &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2507,1
    - Dst: expected< detail::transform_invoke_result_t< F, value_type && >, error_type
        >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2508,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2508,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2508,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2508,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2509,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2509,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2509,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2510
      start: 2505
    functionDepth: 3
    functionLinenumber: 2505
    functionLinenumberEnd: 2510
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F, value_type && >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - expected< detail::transform_invoke_result_t< F, value_type && >, error_type
      >
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< detail::transform_invoke_result_t< F, value_type
      && >, error_type > transform( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2520,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2521,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2521,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2521,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2522,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2522,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2522,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2523
      start: 2518
    functionDepth: 3
    functionLinenumber: 2518
    functionLinenumberEnd: 2523
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, error_type > transform( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2534,1
    - Dst: expected< detail::transform_invoke_result_t< F, const value_type && >,
        error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2535,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2535,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2535,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2535,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2536,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2536,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2536,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2537
      start: 2532
    functionDepth: 3
    functionLinenumber: 2532
    functionLinenumberEnd: 2537
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F, const value_type && >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F, const value_type && >, error_type
      >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< detail::transform_invoke_result_t< F, const
      value_type && >, error_type > transform( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2547,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2548,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2548,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2548,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2549,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2549,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2549,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2550
      start: 2545
    functionDepth: 3
    functionLinenumber: 2545
    functionLinenumberEnd: 2550
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, error_type > transform( F && f ) const
      &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2561,1
    - Dst: expected< value_type, detail::transform_invoke_result_t< F, error_type
        & > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2562,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2563,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2563,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2563,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2563,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2564
      start: 2559
    functionDepth: 3
    functionLinenumber: 2559
    functionLinenumberEnd: 2564
    functionName: nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
      F, error_type & > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - expected< value_type, detail::transform_invoke_result_t< F, error_type & > >
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< value_type, detail::transform_invoke_result_t<
      F, error_type & > > transform_error( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2574,1
    - Dst: expected< value_type, detail::transform_invoke_result_t< F, const error_type
        & > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2575,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2576,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2576,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2576,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2576,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2577
      start: 2572
    functionDepth: 3
    functionLinenumber: 2572
    functionLinenumberEnd: 2577
    functionName: nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
      F, const error_type & > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< value_type, detail::transform_invoke_result_t< F, const error_type
      & > >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< value_type, detail::transform_invoke_result_t<
      F, const error_type & > > transform_error( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2588,1
    - Dst: expected< value_type, detail::transform_invoke_result_t< F, error_type
        && > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2589,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2589,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2591
      start: 2586
    functionDepth: 3
    functionLinenumber: 2586
    functionLinenumberEnd: 2591
    functionName: nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
      F, error_type && > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< value_type, detail::transform_invoke_result_t< F, error_type && >
      >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< value_type, detail::transform_invoke_result_t<
      F, error_type && > > transform_error( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2601,1
    - Dst: expected< value_type, detail::transform_invoke_result_t< F, const error_type
        && > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2602,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2602,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2604
      start: 2599
    functionDepth: 3
    functionLinenumber: 2599
    functionLinenumberEnd: 2604
    functionName: nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
      F, const error_type && > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - expected< value_type, detail::transform_invoke_result_t< F, const error_type
      && > >
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< value_type, detail::transform_invoke_result_t<
      F, const error_type && > > transform_error( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2666
      start: 2664
    functionDepth: 0
    functionLinenumber: 2664
    functionLinenumberEnd: 2666
    functionName: nonstd::expected_lite::expected<void, E>::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void expected() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2668
      start: 2668
    functionDepth: 0
    functionLinenumber: 2668
    functionLinenumberEnd: 2668
    functionName: nonstd::expected_lite::expected<void, E>::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected( expected const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - '      other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2669
      start: 2669
    functionDepth: 0
    functionLinenumber: 2669
    functionLinenumberEnd: 2669
    functionName: nonstd::expected_lite::expected<void, E>::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected( expected &&      other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2673
      start: 2671
    functionDepth: 0
    functionLinenumber: 2671
    functionLinenumberEnd: 2673
    functionName: nonstd::expected_lite::expected<void, E>::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void expected( nonstd_lite_in_place_t(void) )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2738,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2738,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2739
      start: 2735
    functionDepth: 0
    functionLinenumber: 2735
    functionLinenumberEnd: 2739
    functionName: nonstd::expected_lite::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 13
    functionsReached:
    - emplace_error
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void expected( unexpect_t, std::initializer_list<U> il, Args&&... args
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2745,1
    - Dst: destruct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2747,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2749
      start: 2743
    functionDepth: 0
    functionLinenumber: 2743
    functionLinenumberEnd: 2749
    functionName: ~expected()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - destruct_error
    linkageType: ''
    returnType: void
    signature: void ~expected()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2755,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2757
      start: 2753
    functionDepth: 0
    functionLinenumber: 2753
    functionLinenumberEnd: 2757
    functionName: '& operator=( expected const & other )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    linkageType: ''
    returnType: expected
    signature: expected & operator=( expected const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2764,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2764,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2766
      start: 2759
    functionDepth: 0
    functionLinenumber: 2759
    functionLinenumberEnd: 2766
    functionName: "& operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_assignable<E>::value
      &&\n        std::is_nothrow_move_constructible<E>::value )"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    - std::move
    linkageType: ''
    returnType: expected
    signature: "expected & operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_assignable<E>::value
      &&\n        std::is_nothrow_move_constructible<E>::value )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2770,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2771
      start: 2768
    functionDepth: 1
    functionLinenumber: 2768
    functionLinenumberEnd: 2771
    functionName: nonstd::expected_lite::emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    linkageType: ''
    returnType: void
    signature: void emplace()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2787,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2787,1
    - Dst: contained::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2787,1
    - Dst: construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2788,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2788,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2788,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2789,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2790,1
    - Dst: contained::set_has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2791,1
    - Dst: set_has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2792,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2794,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2795
      start: 2780
    functionDepth: 3
    functionLinenumber: 2780
    functionLinenumberEnd: 2795
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 11
    functionsReached:
    - std::move
    - nonstd::expected_lite::swap
    - set_has_value
    - construct_error
    - contained::error
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    - contained::set_has_value
    linkageType: ''
    returnType: void
    signature: "void swap( expected & other ) noexcept\n    (\n        std::is_nothrow_move_constructible<E>::value
      && std17::is_nothrow_swappable<E&>::value\n    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2801,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2802
      start: 2799
    functionDepth: 0
    functionLinenumber: 2799
    functionLinenumberEnd: 2802
    functionName: operator bool() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    linkageType: ''
    returnType: void
    signature: void operator bool() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2806,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2807
      start: 2804
    functionDepth: 1
    functionLinenumber: 2804
    functionLinenumberEnd: 2807
    functionName: nonstd::expected_lite::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 52
    functionsReached:
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: bool
    signature: bool has_value() const noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2811,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2813,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2813,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2815
      start: 2809
    functionDepth: 3
    functionLinenumber: 2809
    functionLinenumberEnd: 2815
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 22
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: void
    signature: void value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2819,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2819,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2819,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2818
        line_start: 2818
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2820
      start: 2817
    functionDepth: 2
    functionLinenumber: 2817
    functionLinenumberEnd: 2820
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 50
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2824,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2824,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2824,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2823
        line_start: 2823
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2825
      start: 2822
    functionDepth: 2
    functionLinenumber: 2822
    functionLinenumberEnd: 2825
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 51
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2831,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2831,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2831,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2831,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2830
        line_start: 2830
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2832
      start: 2829
    functionDepth: 2
    functionLinenumber: 2829
    functionLinenumberEnd: 2832
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 52
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2836,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2836,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2836,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2836,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2835
        line_start: 2835
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2837
      start: 2834
    functionDepth: 2
    functionLinenumber: 2834
    functionLinenumberEnd: 2837
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 53
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2843,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2843,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2844
      start: 2841
    functionDepth: 3
    functionLinenumber: 2841
    functionLinenumberEnd: 2844
    functionName: nonstd::expected_lite::get_unexpected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::make_unexpected
    linkageType: ''
    returnType: unexpected_type
    signature: unexpected_type get_unexpected() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2849,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2850,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2851
      start: 2847
    functionDepth: 4
    functionLinenumber: 2847
    functionLinenumberEnd: 2851
    functionName: nonstd::expected_lite::has_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool has_exception() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2862,1
    - Dst: static_cast< E >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2863,1
    - Dst: std::forward< G >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2863,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2864,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - G
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2865
      start: 2860
    functionDepth: 3
    functionLinenumber: 2860
    functionLinenumberEnd: 2865
    functionName: nonstd::expected_lite::error_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward< G >
    - nonstd::expected_lite::error
    - static_cast< E >
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr error_or( G && e ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2875,1
    - Dst: static_cast< E >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2876,1
    - Dst: std::forward< G >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2876,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2877,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2877,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - G
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2878
      start: 2873
    functionDepth: 3
    functionLinenumber: 2873
    functionLinenumberEnd: 2878
    functionName: nonstd::expected_lite::error_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::forward< G >
    - static_cast< E >
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 error_or( G && e ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2892,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2893,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2893,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2893,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2894,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2894,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2895
      start: 2890
    functionDepth: 3
    functionLinenumber: 2890
    functionLinenumberEnd: 2895
    functionName: detail::invoke_result_nocvref_t< F > and_then( F && f ) &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F > and_then( F &&
      f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2906,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2907,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2907,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2907,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2908,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2908,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2909
      start: 2904
    functionDepth: 3
    functionLinenumber: 2904
    functionLinenumberEnd: 2909
    functionName: detail::invoke_result_nocvref_t< F > and_then( F && f ) const &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F > and_then( F &&
      f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2921,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2922,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2922,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2922,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2923,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2923,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2923,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2924
      start: 2919
    functionDepth: 3
    functionLinenumber: 2919
    functionLinenumberEnd: 2924
    functionName: detail::invoke_result_nocvref_t< F > and_then( F && f ) &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F > and_then( F &&
      f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2935,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2936,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2936,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2936,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2937,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2937,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2937,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2938
      start: 2933
    functionDepth: 3
    functionLinenumber: 2933
    functionLinenumberEnd: 2938
    functionName: detail::invoke_result_nocvref_t< F > and_then( F && f ) const &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F > and_then( F &&
      f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2949,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2950,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2951,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2951,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2951,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2951,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2952
      start: 2947
    functionDepth: 3
    functionLinenumber: 2947
    functionLinenumberEnd: 2952
    functionName: detail::invoke_result_nocvref_t< F, error_type & > or_else( F &&
      f ) &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - detail::invoke_result_nocvref_t< F, error_type & >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, error_type & >
      or_else( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2962,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2963,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2964,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2964,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2964,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2964,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2965
      start: 2960
    functionDepth: 3
    functionLinenumber: 2960
    functionLinenumberEnd: 2965
    functionName: detail::invoke_result_nocvref_t< F, const error_type & > or_else(
      F && f ) const &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, const error_type & >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const error_type
      & > or_else( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2976,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2977,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2979
      start: 2974
    functionDepth: 3
    functionLinenumber: 2974
    functionLinenumberEnd: 2979
    functionName: detail::invoke_result_nocvref_t< F, error_type && > or_else( F &&
      f ) &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - detail::invoke_result_nocvref_t< F, error_type && >
    - has_value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, error_type &&
      > or_else( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2989,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2990,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2992
      start: 2987
    functionDepth: 3
    functionLinenumber: 2987
    functionLinenumberEnd: 2992
    functionName: detail::invoke_result_nocvref_t< F, const error_type && > or_else(
      F && f ) const &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - detail::invoke_result_nocvref_t< F, const error_type && >
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const error_type
      && > or_else( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3003,1
    - Dst: expected< detail::transform_invoke_result_t< F >, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3004,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3004,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3004,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3005,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3005,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3006
      start: 3001
    functionDepth: 3
    functionLinenumber: 3001
    functionLinenumberEnd: 3006
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F >, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< detail::transform_invoke_result_t< F >,
      error_type > transform( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3016,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3017,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3017,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3017,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3018,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3018,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3019
      start: 3014
    functionDepth: 3
    functionLinenumber: 3014
    functionLinenumberEnd: 3019
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, error_type > transform( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3029,1
    - Dst: expected< detail::transform_invoke_result_t< F >, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3030,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3030,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3030,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3031,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3031,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3032
      start: 3027
    functionDepth: 3
    functionLinenumber: 3027
    functionLinenumberEnd: 3032
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F >, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< detail::transform_invoke_result_t< F >, error_type
      > transform( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3042,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3043,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3043,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3043,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3044,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3044,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3045
      start: 3040
    functionDepth: 3
    functionLinenumber: 3040
    functionLinenumberEnd: 3045
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, error_type > transform( F && f ) const
      &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3056,1
    - Dst: expected< detail::transform_invoke_result_t< F >, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3057,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3057,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3057,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3058,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3058,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3059
      start: 3054
    functionDepth: 3
    functionLinenumber: 3054
    functionLinenumberEnd: 3059
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F >, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< detail::transform_invoke_result_t< F >,
      error_type > transform( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3069,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3070,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3070,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3070,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3071,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3071,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3072
      start: 3067
    functionDepth: 3
    functionLinenumber: 3067
    functionLinenumberEnd: 3072
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, error_type > transform( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3082,1
    - Dst: expected< detail::transform_invoke_result_t< F >, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3083,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3083,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3083,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3084,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3084,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3085
      start: 3080
    functionDepth: 3
    functionLinenumber: 3080
    functionLinenumberEnd: 3085
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F >, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< detail::transform_invoke_result_t< F >, error_type
      > transform( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3095,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3096,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3096,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3096,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3097,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3097,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3098
      start: 3093
    functionDepth: 3
    functionLinenumber: 3093
    functionLinenumberEnd: 3098
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, error_type > transform( F && f ) const
      &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3108,1
    - Dst: expected< void, detail::transform_invoke_result_t< F, error_type & > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3109,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3110,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3110,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3110,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3111
      start: 3106
    functionDepth: 3
    functionLinenumber: 3106
    functionLinenumberEnd: 3111
    functionName: nonstd::expected_lite::expected< void, detail::transform_invoke_result_t<
      F, error_type & > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - expected< void, detail::transform_invoke_result_t< F, error_type & > >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, detail::transform_invoke_result_t<
      F, error_type & > > transform_error( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3120,1
    - Dst: expected< void, detail::transform_invoke_result_t< F, const error_type
        & > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3121,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3122,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3122,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3122,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3123
      start: 3118
    functionDepth: 3
    functionLinenumber: 3118
    functionLinenumberEnd: 3123
    functionName: nonstd::expected_lite::expected< void, detail::transform_invoke_result_t<
      F, const error_type & > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - expected< void, detail::transform_invoke_result_t< F, const error_type & > >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, detail::transform_invoke_result_t< F,
      const error_type & > > transform_error( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3133,1
    - Dst: expected< void, detail::transform_invoke_result_t< F, error_type && > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3134,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3136
      start: 3131
    functionDepth: 3
    functionLinenumber: 3131
    functionLinenumberEnd: 3136
    functionName: nonstd::expected_lite::expected< void, detail::transform_invoke_result_t<
      F, error_type && > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, detail::transform_invoke_result_t< F, error_type && > >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, detail::transform_invoke_result_t<
      F, error_type && > > transform_error( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3145,1
    - Dst: expected< void, detail::transform_invoke_result_t< F, const error_type
        && > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3146,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3148
      start: 3143
    functionDepth: 3
    functionLinenumber: 3143
    functionLinenumberEnd: 3148
    functionName: nonstd::expected_lite::expected< void, detail::transform_invoke_result_t<
      F, const error_type && > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, detail::transform_invoke_result_t< F, const error_type && >
      >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, detail::transform_invoke_result_t< F,
      const error_type && > > transform_error( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3193,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T1,E1>
    - expected<T2,E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3194
      start: 3191
    functionDepth: 0
    functionLinenumber: 3191
    functionLinenumberEnd: 3194
    functionName: operator==( expected<T1,E1> const & x, expected<T2,E2> const & y
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error
    linkageType: ''
    returnType: bool
    signature: bool operator==( expected<T1,E1> const & x, expected<T2,E2> const &
      y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3203,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3203,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3203,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T1,E1>
    - expected<T2,E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3204
      start: 3201
    functionDepth: 0
    functionLinenumber: 3201
    functionLinenumberEnd: 3204
    functionName: operator==( expected<T1,E1> const & x, expected<T2,E2> const & y
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - static_cast<bool>
    - error
    linkageType: ''
    returnType: bool
    signature: bool operator==( expected<T1,E1> const & x, expected<T2,E2> const &
      y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T1,E1>
    - expected<T2,E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3210
      start: 3207
    functionDepth: 0
    functionLinenumber: 3207
    functionLinenumberEnd: 3210
    functionName: operator!=( expected<T1,E1> const & x, expected<T2,E2> const & y
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( expected<T1,E1> const & x, expected<T2,E2> const &
      y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3218
      start: 3215
    functionDepth: 0
    functionLinenumber: 3215
    functionLinenumberEnd: 3218
    functionName: operator<( expected<T,E> const & x, expected<T,E> const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<( expected<T,E> const & x, expected<T,E> const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3224
      start: 3221
    functionDepth: 0
    functionLinenumber: 3221
    functionLinenumberEnd: 3224
    functionName: operator>( expected<T,E> const & x, expected<T,E> const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( expected<T,E> const & x, expected<T,E> const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3230
      start: 3227
    functionDepth: 0
    functionLinenumber: 3227
    functionLinenumberEnd: 3230
    functionName: operator<=( expected<T,E> const & x, expected<T,E> const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( expected<T,E> const & x, expected<T,E> const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3236
      start: 3233
    functionDepth: 0
    functionLinenumber: 3233
    functionLinenumberEnd: 3236
    functionName: operator>=( expected<T,E> const & x, expected<T,E> const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( expected<T,E> const & x, expected<T,E> const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T1,E1>
    - T2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3250
      start: 3247
    functionDepth: 0
    functionLinenumber: 3247
    functionLinenumberEnd: 3250
    functionName: operator==( expected<T1,E1> const & x, T2 const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==( expected<T1,E1> const & x, T2 const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T2
    - expected<T1,E1>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3260
      start: 3257
    functionDepth: 0
    functionLinenumber: 3257
    functionLinenumberEnd: 3260
    functionName: operator==(T2 const & v, expected<T1,E1> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(T2 const & v, expected<T1,E1> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T1,E1>
    - T2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3266
      start: 3263
    functionDepth: 0
    functionLinenumber: 3263
    functionLinenumberEnd: 3266
    functionName: operator!=( expected<T1,E1> const & x, T2 const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( expected<T1,E1> const & x, T2 const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T2
    - expected<T1,E1>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3272
      start: 3269
    functionDepth: 0
    functionLinenumber: 3269
    functionLinenumberEnd: 3272
    functionName: operator!=( T2 const & v, expected<T1,E1> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( T2 const & v, expected<T1,E1> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T,E>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3280
      start: 3277
    functionDepth: 0
    functionLinenumber: 3277
    functionLinenumberEnd: 3280
    functionName: operator<( expected<T,E> const & x, T const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<( expected<T,E> const & x, T const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3286
      start: 3283
    functionDepth: 0
    functionLinenumber: 3283
    functionLinenumberEnd: 3286
    functionName: operator<( T const & v, expected<T,E> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<( T const & v, expected<T,E> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3292
      start: 3289
    functionDepth: 0
    functionLinenumber: 3289
    functionLinenumberEnd: 3292
    functionName: operator>( T const & v, expected<T,E> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( T const & v, expected<T,E> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T,E>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3298
      start: 3295
    functionDepth: 0
    functionLinenumber: 3295
    functionLinenumberEnd: 3298
    functionName: operator>( expected<T,E> const & x, T const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( expected<T,E> const & x, T const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3304
      start: 3301
    functionDepth: 0
    functionLinenumber: 3301
    functionLinenumberEnd: 3304
    functionName: operator<=( T const & v, expected<T,E> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( T const & v, expected<T,E> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T,E>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3310
      start: 3307
    functionDepth: 0
    functionLinenumber: 3307
    functionLinenumberEnd: 3310
    functionName: operator<=( expected<T,E> const & x, T const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( expected<T,E> const & x, T const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T,E>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3316
      start: 3313
    functionDepth: 0
    functionLinenumber: 3313
    functionLinenumberEnd: 3316
    functionName: operator>=( expected<T,E> const & x, T const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( expected<T,E> const & x, T const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3322
      start: 3319
    functionDepth: 0
    functionLinenumber: 3319
    functionLinenumberEnd: 3322
    functionName: operator>=( T const & v, expected<T,E> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( T const & v, expected<T,E> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T1,E1>
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3332
      start: 3329
    functionDepth: 0
    functionLinenumber: 3329
    functionLinenumberEnd: 3332
    functionName: operator==( expected<T1,E1> const & x, unexpected_type<E2> const
      & u )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool operator==( expected<T1,E1> const & x, unexpected_type<E2> const
      & u )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E2>
    - expected<T1,E1>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3338
      start: 3335
    functionDepth: 0
    functionLinenumber: 3335
    functionLinenumberEnd: 3338
    functionName: operator==( unexpected_type<E2> const & u, expected<T1,E1> const
      & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==( unexpected_type<E2> const & u, expected<T1,E1> const
      & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T1,E1>
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3344
      start: 3341
    functionDepth: 0
    functionLinenumber: 3341
    functionLinenumberEnd: 3344
    functionName: operator!=( expected<T1,E1> const & x, unexpected_type<E2> const
      & u )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( expected<T1,E1> const & x, unexpected_type<E2> const
      & u )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E2>
    - expected<T1,E1>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3350
      start: 3347
    functionDepth: 0
    functionLinenumber: 3347
    functionLinenumberEnd: 3350
    functionName: operator!=( unexpected_type<E2> const & u, expected<T1,E1> const
      & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( unexpected_type<E2> const & u, expected<T1,E1> const
      & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T,E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3358
      start: 3355
    functionDepth: 0
    functionLinenumber: 3355
    functionLinenumberEnd: 3358
    functionName: operator<( expected<T,E> const & x, unexpected_type<E> const & u
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool operator<( expected<T,E> const & x, unexpected_type<E> const &
      u )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3363,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3364
      start: 3361
    functionDepth: 0
    functionLinenumber: 3361
    functionLinenumberEnd: 3364
    functionName: operator<( unexpected_type<E> const & u, expected<T,E> const & x
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool operator<( unexpected_type<E> const & u, expected<T,E> const &
      x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T,E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3370
      start: 3367
    functionDepth: 0
    functionLinenumber: 3367
    functionLinenumberEnd: 3370
    functionName: operator>( expected<T,E> const & x, unexpected_type<E> const & u
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( expected<T,E> const & x, unexpected_type<E> const &
      u )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3376
      start: 3373
    functionDepth: 0
    functionLinenumber: 3373
    functionLinenumberEnd: 3376
    functionName: operator>( unexpected_type<E> const & u, expected<T,E> const & x
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( unexpected_type<E> const & u, expected<T,E> const &
      x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T,E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3382
      start: 3379
    functionDepth: 0
    functionLinenumber: 3379
    functionLinenumberEnd: 3382
    functionName: operator<=( expected<T,E> const & x, unexpected_type<E> const &
      u )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( expected<T,E> const & x, unexpected_type<E> const
      & u )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3388
      start: 3385
    functionDepth: 0
    functionLinenumber: 3385
    functionLinenumberEnd: 3388
    functionName: operator<=( unexpected_type<E> const & u, expected<T,E> const &
      x)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( unexpected_type<E> const & u, expected<T,E> const
      & x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T,E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3394
      start: 3391
    functionDepth: 0
    functionLinenumber: 3391
    functionLinenumberEnd: 3394
    functionName: operator>=( expected<T,E> const & x, unexpected_type<E> const &
      u  )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( expected<T,E> const & x, unexpected_type<E> const
      & u  )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3400
      start: 3397
    functionDepth: 0
    functionLinenumber: 3397
    functionLinenumberEnd: 3400
    functionName: operator>=( unexpected_type<E> const & u, expected<T,E> const &
      x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( unexpected_type<E> const & u, expected<T,E> const
      & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3413,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3413,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3416
      start: 3413
    functionDepth: 1
    functionLinenumber: 3413
    functionLinenumberEnd: 3416
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 12
    functionsReached:
    - noexcept
    - nonstd::expected_lite::swap
    linkageType: ''
    returnType: void
    signature: void swap( expected<T,E> & x, expected<T,E> & y ) noexcept ( noexcept
      ( x.swap(y) ) )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3423,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3423,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3424
      start: 3421
    functionDepth: 1
    functionLinenumber: 3421
    functionLinenumberEnd: 3424
    functionName: nonstd::expected_lite::make_expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached:
    - std::forward<T>
    - nonstd::expected_lite::expected
    linkageType: ''
    returnType: auto
    signature: auto make_expected( T && v ) -> expected< typename std::decay<T>::type
      >
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3431
      start: 3428
    functionDepth: 1
    functionLinenumber: 3428
    functionLinenumberEnd: 3431
    functionName: nonstd::expected_lite::make_expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 2
    functionsReached:
    - nonstd::expected_lite::expected
    linkageType: ''
    returnType: auto
    signature: auto make_expected() -> expected<void>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3436,1
    - Dst: nonstd::expected_lite::make_unexpected_from_current_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3436,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3437
      start: 3434
    functionDepth: 2
    functionLinenumber: 3434
    functionLinenumberEnd: 3437
    functionName: nonstd::expected_lite::make_expected_from_current_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    - nonstd::expected_lite::make_unexpected_from_current_exception
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_current_exception() -> expected<T>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3442,1
    - Dst: nonstd::expected_lite::unexpected_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3442,1
    - Dst: std::forward<std::exception_ptr>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::exception_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3443
      start: 3440
    functionDepth: 1
    functionLinenumber: 3440
    functionLinenumberEnd: 3443
    functionName: nonstd::expected_lite::make_expected_from_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    - std::forward<std::exception_ptr>
    - nonstd::expected_lite::unexpected_type
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_exception( std::exception_ptr v ) -> expected<T>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3448,1
    - Dst: nonstd::expected_lite::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - e
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3449
      start: 3446
    functionDepth: 2
    functionLinenumber: 3446
    functionLinenumberEnd: 3449
    functionName: nonstd::expected_lite::make_expected_from_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    - nonstd::expected_lite::make_unexpected
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_error( E e ) -> expected<T, typename std::decay<E>::type>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::make_expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3459,1
    - Dst: f
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3459,1
    - Dst: nonstd::expected_lite::make_unexpected_from_current_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3463,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - f
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3465
      start: 3455
    functionDepth: 2
    functionLinenumber: 3455
    functionLinenumberEnd: 3465
    functionName: nonstd::expected_lite::make_expected_from_call
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - f
    - nonstd::expected_lite::make_expected
    - nonstd::expected_lite::make_unexpected_from_current_exception
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_call( F f ) -> expected< typename std::result_of<F()>::type
      >
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3475,1
    - Dst: nonstd::expected_lite::make_expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3476,1
    - Dst: nonstd::expected_lite::make_unexpected_from_current_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3480,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - f
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3482
      start: 3471
    functionDepth: 2
    functionLinenumber: 3471
    functionLinenumberEnd: 3482
    functionName: nonstd::expected_lite::make_expected_from_call
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - f
    - nonstd::expected_lite::make_expected
    - nonstd::expected_lite::make_unexpected_from_current_exception
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_call( F f ) -> expected<void>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: nonstd::expected_lite::std17::detail::satisfies
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::declval<T&>
    - noexcept
    - swap
    linkageType: ''
    returnType: bool
    signature: bool satisfies()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 449
    functionName: nonstd::expected_lite::std17::detail::test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto test( int ) -> std::integral_constant<bool, satisfies<T>()>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: nonstd::expected_lite::std17::detail::satisfies
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::declval<T&>
    - noexcept
    - swap
    linkageType: ''
    returnType: bool
    signature: bool satisfies()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 449
    functionName: nonstd::expected_lite::std17::detail::test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto test( int ) -> std::integral_constant<bool, satisfies<T>()>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: nonstd::expected_lite::std17::detail::satisfies
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::declval<T&>
    - noexcept
    - swap
    linkageType: ''
    returnType: bool
    signature: bool satisfies()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 449
    functionName: nonstd::expected_lite::std17::detail::test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto test( int ) -> std::integral_constant<bool, satisfies<T>()>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: nonstd::expected_lite::std17::detail::satisfies
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::declval<T&>
    - noexcept
    - swap
    linkageType: ''
    returnType: bool
    signature: bool satisfies()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 449
    functionName: nonstd::expected_lite::std17::detail::test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto test( int ) -> std::integral_constant<bool, satisfies<T>()>
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 523
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_noncopy_nonmove_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 524
    functionDepth: 0
    functionLinenumber: 524
    functionLinenumberEnd: 524
    functionName: ~storage_t_noncopy_nonmove_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_noncopy_nonmove_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 526
    functionDepth: 0
    functionLinenumber: 526
    functionLinenumberEnd: 528
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_noncopy_nonmove_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:532,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 530
    functionDepth: 0
    functionLinenumber: 530
    functionLinenumberEnd: 533
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:548,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 546
    functionDepth: 0
    functionLinenumber: 546
    functionLinenumberEnd: 549
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:554,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:554,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 555
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 560
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~value_type
    linkageType: ''
    returnType: void
    signature: void destruct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:575,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:575,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 573
    functionDepth: 0
    functionLinenumber: 573
    functionLinenumberEnd: 576
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:581,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:581,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 582
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 584
    functionDepth: 0
    functionLinenumber: 584
    functionLinenumberEnd: 587
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 589
    functionDepth: 0
    functionLinenumber: 589
    functionLinenumberEnd: 592
    functionName: '& value() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 597
    functionName: '& value() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:601,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 599
    functionDepth: 0
    functionLinenumber: 599
    functionLinenumberEnd: 602
    functionName: '&& value() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:606,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 604
    functionDepth: 0
    functionLinenumber: 604
    functionLinenumberEnd: 607
    functionName: '&& value() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 609
    functionDepth: 0
    functionLinenumber: 609
    functionLinenumberEnd: 612
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 614
    functionDepth: 0
    functionLinenumber: 614
    functionLinenumberEnd: 617
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 619
    functionDepth: 0
    functionLinenumber: 619
    functionLinenumberEnd: 622
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 624
    functionDepth: 0
    functionLinenumber: 624
    functionLinenumberEnd: 627
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:631,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 629
    functionDepth: 0
    functionLinenumber: 629
    functionLinenumberEnd: 632
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:636,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 634
    functionDepth: 0
    functionLinenumber: 634
    functionLinenumberEnd: 637
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 639
    functionDepth: 0
    functionLinenumber: 639
    functionLinenumberEnd: 642
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 644
    functionDepth: 0
    functionLinenumber: 644
    functionLinenumberEnd: 647
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 669
    functionDepth: 0
    functionLinenumber: 669
    functionLinenumberEnd: 669
    functionName: nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 670
    functionDepth: 0
    functionLinenumber: 670
    functionLinenumberEnd: 670
    functionName: ~storage_t_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 674
    functionName: nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 676
    functionDepth: 0
    functionLinenumber: 676
    functionLinenumberEnd: 679
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:683,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 681
    functionDepth: 0
    functionLinenumber: 681
    functionLinenumberEnd: 684
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value( value_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:688,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:688,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 686
    functionDepth: 0
    functionLinenumber: 686
    functionLinenumberEnd: 689
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_value( value_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:694,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:694,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 692
    functionDepth: 0
    functionLinenumber: 692
    functionLinenumberEnd: 695
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:700,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:700,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 698
    functionDepth: 0
    functionLinenumber: 698
    functionLinenumberEnd: 701
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 703
    functionDepth: 0
    functionLinenumber: 703
    functionLinenumberEnd: 706
    functionName: nonstd::expected_lite::detail::storage_t_impl::destruct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~value_type
    linkageType: ''
    returnType: void
    signature: void destruct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:710,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 708
    functionDepth: 0
    functionLinenumber: 708
    functionLinenumberEnd: 711
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:715,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:715,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 713
    functionDepth: 0
    functionLinenumber: 713
    functionLinenumberEnd: 716
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:721,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:721,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 719
    functionDepth: 0
    functionLinenumber: 719
    functionLinenumberEnd: 722
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:727,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:727,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 725
    functionDepth: 0
    functionLinenumber: 725
    functionLinenumberEnd: 728
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:732,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 730
    functionDepth: 0
    functionLinenumber: 730
    functionLinenumberEnd: 733
    functionName: nonstd::expected_lite::detail::storage_t_impl::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 735
    functionDepth: 0
    functionLinenumber: 735
    functionLinenumberEnd: 738
    functionName: '& value() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 740
    functionDepth: 0
    functionLinenumber: 740
    functionLinenumberEnd: 743
    functionName: '& value() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:747,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 745
    functionDepth: 0
    functionLinenumber: 745
    functionLinenumberEnd: 748
    functionName: '&& value() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:752,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 753
    functionName: '&& value() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 755
    functionDepth: 0
    functionLinenumber: 755
    functionLinenumberEnd: 758
    functionName: nonstd::expected_lite::detail::storage_t_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 760
    functionDepth: 0
    functionLinenumber: 760
    functionLinenumberEnd: 763
    functionName: nonstd::expected_lite::detail::storage_t_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 765
    functionDepth: 0
    functionLinenumber: 765
    functionLinenumberEnd: 768
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 770
    functionDepth: 0
    functionLinenumber: 770
    functionLinenumberEnd: 773
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:777,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 775
    functionDepth: 0
    functionLinenumber: 775
    functionLinenumberEnd: 778
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:782,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 780
    functionDepth: 0
    functionLinenumber: 780
    functionLinenumberEnd: 783
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 785
    functionDepth: 0
    functionLinenumber: 785
    functionLinenumberEnd: 788
    functionName: nonstd::expected_lite::detail::storage_t_impl::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 790
    functionDepth: 0
    functionLinenumber: 790
    functionLinenumberEnd: 793
    functionName: nonstd::expected_lite::detail::storage_t_impl::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 817
    functionDepth: 0
    functionLinenumber: 817
    functionLinenumberEnd: 817
    functionName: nonstd::expected_lite::detail::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 818
    functionDepth: 0
    functionLinenumber: 818
    functionLinenumberEnd: 818
    functionName: ~storage_t_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 820
    functionDepth: 0
    functionLinenumber: 820
    functionLinenumberEnd: 822
    functionName: nonstd::expected_lite::detail::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:826,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 824
    functionDepth: 0
    functionLinenumber: 824
    functionLinenumberEnd: 827
    functionName: nonstd::expected_lite::detail::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:831,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:831,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 829
    functionDepth: 0
    functionLinenumber: 829
    functionLinenumberEnd: 832
    functionName: nonstd::expected_lite::detail::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:837,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:837,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 835
    functionDepth: 0
    functionLinenumber: 835
    functionLinenumberEnd: 838
    functionName: nonstd::expected_lite::detail::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:843,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:843,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 844
      start: 841
    functionDepth: 0
    functionLinenumber: 841
    functionLinenumberEnd: 844
    functionName: nonstd::expected_lite::detail::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 846
    functionDepth: 0
    functionLinenumber: 846
    functionLinenumberEnd: 849
    functionName: nonstd::expected_lite::detail::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 851
    functionDepth: 0
    functionLinenumber: 851
    functionLinenumberEnd: 854
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 856
    functionDepth: 0
    functionLinenumber: 856
    functionLinenumberEnd: 859
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:863,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 861
    functionDepth: 0
    functionLinenumber: 861
    functionLinenumberEnd: 864
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:868,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 869
      start: 866
    functionDepth: 0
    functionLinenumber: 866
    functionLinenumberEnd: 869
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 871
    functionDepth: 0
    functionLinenumber: 871
    functionLinenumberEnd: 874
    functionName: nonstd::expected_lite::detail::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 876
    functionDepth: 0
    functionLinenumber: 876
    functionLinenumberEnd: 879
    functionName: nonstd::expected_lite::detail::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 901
    functionDepth: 0
    functionLinenumber: 901
    functionLinenumberEnd: 901
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 902
    functionDepth: 0
    functionLinenumber: 902
    functionLinenumberEnd: 902
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 904
    functionDepth: 0
    functionLinenumber: 904
    functionLinenumberEnd: 906
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 908
    functionDepth: 0
    functionLinenumber: 908
    functionLinenumberEnd: 908
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - '      other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 909
    functionDepth: 0
    functionLinenumber: 909
    functionLinenumberEnd: 909
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t &&      other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 917
      start: 917
    functionDepth: 0
    functionLinenumber: 917
    functionLinenumberEnd: 917
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 918
      start: 918
    functionDepth: 0
    functionLinenumber: 918
    functionLinenumberEnd: 918
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 920
    functionDepth: 0
    functionLinenumber: 920
    functionLinenumberEnd: 922
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:925,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:928,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:928,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 924
    functionDepth: 1
    functionLinenumber: 924
    functionLinenumberEnd: 929
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:932,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 931
    functionDepth: 1
    functionLinenumber: 931
    functionLinenumberEnd: 936
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t(storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 943
    functionDepth: 0
    functionLinenumber: 943
    functionLinenumberEnd: 943
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 944
    functionDepth: 0
    functionLinenumber: 944
    functionLinenumberEnd: 944
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 946
    functionDepth: 0
    functionLinenumber: 946
    functionLinenumberEnd: 948
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:951,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:953,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:954,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:954,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 950
    functionDepth: 0
    functionLinenumber: 950
    functionLinenumberEnd: 955
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
    - has_value
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:958,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:960,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 957
    functionDepth: 0
    functionLinenumber: 957
    functionLinenumberEnd: 962
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t(storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 969
      start: 969
    functionDepth: 0
    functionLinenumber: 969
    functionLinenumberEnd: 969
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 970
      start: 970
    functionDepth: 0
    functionLinenumber: 970
    functionLinenumberEnd: 970
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 972
    functionDepth: 0
    functionLinenumber: 972
    functionLinenumberEnd: 974
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:977,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:980,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:980,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 976
    functionDepth: 1
    functionLinenumber: 976
    functionLinenumberEnd: 981
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::has_value
    - has_value
    - value
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_error
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 983
    functionDepth: 0
    functionLinenumber: 983
    functionLinenumberEnd: 983
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 990
      start: 990
    functionDepth: 0
    functionLinenumber: 990
    functionLinenumberEnd: 990
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 991
    functionDepth: 0
    functionLinenumber: 991
    functionLinenumberEnd: 991
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 995
      start: 993
    functionDepth: 0
    functionLinenumber: 993
    functionLinenumberEnd: 995
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:998,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, false>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1000,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, false>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1001,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1001,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1002
      start: 997
    functionDepth: 0
    functionLinenumber: 997
    functionLinenumberEnd: 1002
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - error
    - nonstd::expected_lite::detail::storage_t<void, E, true, false>::construct_error
    - nonstd::expected_lite::detail::storage_t<void, E, true, false>::has_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 1004
    functionDepth: 0
    functionLinenumber: 1004
    functionLinenumberEnd: 1004
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1011
      start: 1011
    functionDepth: 0
    functionLinenumber: 1011
    functionLinenumberEnd: 1011
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1012
      start: 1012
    functionDepth: 0
    functionLinenumber: 1012
    functionLinenumberEnd: 1012
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 1014
    functionDepth: 0
    functionLinenumber: 1014
    functionLinenumberEnd: 1016
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 1018
    functionDepth: 0
    functionLinenumber: 1018
    functionLinenumberEnd: 1018
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1021,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 1020
    functionDepth: 1
    functionLinenumber: 1020
    functionLinenumberEnd: 1025
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::has_value
    - has_value
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_value
    - value
    - std::move
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_error
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1032
      start: 1032
    functionDepth: 0
    functionLinenumber: 1032
    functionLinenumberEnd: 1032
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 1033
    functionDepth: 0
    functionLinenumber: 1033
    functionLinenumberEnd: 1033
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1037
      start: 1035
    functionDepth: 0
    functionLinenumber: 1035
    functionLinenumberEnd: 1037
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1039
      start: 1039
    functionDepth: 0
    functionLinenumber: 1039
    functionLinenumberEnd: 1039
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1042,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, false, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1044,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, false, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1041
    functionDepth: 0
    functionLinenumber: 1041
    functionLinenumberEnd: 1046
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - nonstd::expected_lite::detail::storage_t<void, E, false, true>::has_value
    - error
    - nonstd::expected_lite::detail::storage_t<void, E, false, true>::construct_error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1065,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1065,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1067,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1067,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1068
      start: 1063
    functionDepth: 1
    functionLinenumber: 1063
    functionLinenumberEnd: 1068
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 4
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( (std::forward<
      ObjectT >( obj ).*memfnptr)( std::forward< Args >( args )... ) ) )\n        ->
      decltype( (std::forward< ObjectT >( obj ).*memfnptr)( std::forward< Args >(
      args )...) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1078,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1078,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1080,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1080,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1081
      start: 1076
    functionDepth: 1
    functionLinenumber: 1076
    functionLinenumberEnd: 1081
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 4
    functionsReached:
    - get
    - noexcept
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( (obj.get().*memfnptr)(
      std::forward< Args >( args ) ... ) ) )\n        -> decltype( (obj.get().*memfnptr)(
      std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1093,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1093,1
    - Dst: std::forward<ObjectT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1095,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1095,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 1091
    functionDepth: 1
    functionLinenumber: 1091
    functionLinenumberEnd: 1096
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 4
    functionsReached:
    - noexcept
    - std::forward<ObjectT>
    - std::forward< ObjectT >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( ((*std::forward<
      ObjectT >( obj )).*memfnptr)( std::forward< Args >( args ) ... ) ) )\n        ->
      decltype( ((*std::forward< ObjectT >( obj )).*memfnptr)( std::forward< Args
      >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1105,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1105,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1106,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1104
    functionDepth: 1
    functionLinenumber: 1104
    functionLinenumberEnd: 1109
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 4
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( std::forward< ObjectT >( obj ).*memobjptr
      ) )\n        -> decltype( std::forward< ObjectT >( obj ).*memobjptr )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1117,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1117,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1118,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1116
    functionDepth: 1
    functionLinenumber: 1116
    functionLinenumberEnd: 1121
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 4
    functionsReached:
    - get
    - noexcept
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( obj.get().*memobjptr ) )\n        ->
      decltype( obj.get().*memobjptr )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1131,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1131,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1132,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1130
    functionDepth: 1
    functionLinenumber: 1130
    functionLinenumberEnd: 1135
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 4
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( (*std::forward< ObjectT >( obj
      )).*memobjptr ) )\n        -> decltype( (*std::forward< ObjectT >( obj )).*memobjptr
      )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1147
      start: 1142
    functionDepth: 2
    functionLinenumber: 1142
    functionLinenumberEnd: 1147
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 80
    functionsReached:
    - noexcept
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke_member_function_impl
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( invoke_member_function_impl( std::forward< F >( f ), std::forward<
      Args >( args ) ... ) ) )\n        -> decltype( invoke_member_function_impl(
      std::forward< F >( f ), std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1159
      start: 1154
    functionDepth: 2
    functionLinenumber: 1154
    functionLinenumberEnd: 1159
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 80
    functionsReached:
    - noexcept
    - nonstd::expected_lite::detail::invoke_member_object_impl
    - std::forward< F >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( invoke_member_object_impl( std::forward< F >( f ), std::forward< Args
      >( args ) ... ) ) )\n        -> decltype( invoke_member_object_impl( std::forward<
      F >( f ), std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1169,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1169,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1171,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1171,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1172
      start: 1162
    functionDepth: 1
    functionLinenumber: 1162
    functionLinenumberEnd: 1172
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 80
    functionsReached:
    - noexcept
    - std::forward< F >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_REQUIRES_T
    signature: "nsel_REQUIRES_T invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( std::forward< F >( f )( std::forward< Args >( args ) ... ) ) )\n        ->
      decltype( std::forward< F >( f )( std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 523
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_noncopy_nonmove_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 524
    functionDepth: 0
    functionLinenumber: 524
    functionLinenumberEnd: 524
    functionName: ~storage_t_noncopy_nonmove_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_noncopy_nonmove_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 526
    functionDepth: 0
    functionLinenumber: 526
    functionLinenumberEnd: 528
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_noncopy_nonmove_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:532,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 530
    functionDepth: 0
    functionLinenumber: 530
    functionLinenumberEnd: 533
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:548,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 546
    functionDepth: 0
    functionLinenumber: 546
    functionLinenumberEnd: 549
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:554,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:554,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 555
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 560
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~value_type
    linkageType: ''
    returnType: void
    signature: void destruct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:575,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:575,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 573
    functionDepth: 0
    functionLinenumber: 573
    functionLinenumberEnd: 576
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:581,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:581,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 582
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 584
    functionDepth: 0
    functionLinenumber: 584
    functionLinenumberEnd: 587
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 589
    functionDepth: 0
    functionLinenumber: 589
    functionLinenumberEnd: 592
    functionName: '& value() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 597
    functionName: '& value() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:601,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 599
    functionDepth: 0
    functionLinenumber: 599
    functionLinenumberEnd: 602
    functionName: '&& value() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:606,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 604
    functionDepth: 0
    functionLinenumber: 604
    functionLinenumberEnd: 607
    functionName: '&& value() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 609
    functionDepth: 0
    functionLinenumber: 609
    functionLinenumberEnd: 612
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 614
    functionDepth: 0
    functionLinenumber: 614
    functionLinenumberEnd: 617
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 619
    functionDepth: 0
    functionLinenumber: 619
    functionLinenumberEnd: 622
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 624
    functionDepth: 0
    functionLinenumber: 624
    functionLinenumberEnd: 627
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:631,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 629
    functionDepth: 0
    functionLinenumber: 629
    functionLinenumberEnd: 632
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:636,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 634
    functionDepth: 0
    functionLinenumber: 634
    functionLinenumberEnd: 637
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 639
    functionDepth: 0
    functionLinenumber: 639
    functionLinenumberEnd: 642
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 644
    functionDepth: 0
    functionLinenumber: 644
    functionLinenumberEnd: 647
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 669
    functionDepth: 0
    functionLinenumber: 669
    functionLinenumberEnd: 669
    functionName: nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 670
    functionDepth: 0
    functionLinenumber: 670
    functionLinenumberEnd: 670
    functionName: ~storage_t_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 674
    functionName: nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 676
    functionDepth: 0
    functionLinenumber: 676
    functionLinenumberEnd: 679
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:683,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 681
    functionDepth: 0
    functionLinenumber: 681
    functionLinenumberEnd: 684
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value( value_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:688,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:688,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 686
    functionDepth: 0
    functionLinenumber: 686
    functionLinenumberEnd: 689
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_value( value_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:694,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:694,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 692
    functionDepth: 0
    functionLinenumber: 692
    functionLinenumberEnd: 695
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:700,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:700,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 698
    functionDepth: 0
    functionLinenumber: 698
    functionLinenumberEnd: 701
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 703
    functionDepth: 0
    functionLinenumber: 703
    functionLinenumberEnd: 706
    functionName: nonstd::expected_lite::detail::storage_t_impl::destruct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~value_type
    linkageType: ''
    returnType: void
    signature: void destruct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:710,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 708
    functionDepth: 0
    functionLinenumber: 708
    functionLinenumberEnd: 711
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:715,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:715,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 713
    functionDepth: 0
    functionLinenumber: 713
    functionLinenumberEnd: 716
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:721,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:721,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 719
    functionDepth: 0
    functionLinenumber: 719
    functionLinenumberEnd: 722
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:727,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:727,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 725
    functionDepth: 0
    functionLinenumber: 725
    functionLinenumberEnd: 728
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:732,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 730
    functionDepth: 0
    functionLinenumber: 730
    functionLinenumberEnd: 733
    functionName: nonstd::expected_lite::detail::storage_t_impl::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 735
    functionDepth: 0
    functionLinenumber: 735
    functionLinenumberEnd: 738
    functionName: '& value() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 740
    functionDepth: 0
    functionLinenumber: 740
    functionLinenumberEnd: 743
    functionName: '& value() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:747,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 745
    functionDepth: 0
    functionLinenumber: 745
    functionLinenumberEnd: 748
    functionName: '&& value() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:752,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 753
    functionName: '&& value() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 755
    functionDepth: 0
    functionLinenumber: 755
    functionLinenumberEnd: 758
    functionName: nonstd::expected_lite::detail::storage_t_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 760
    functionDepth: 0
    functionLinenumber: 760
    functionLinenumberEnd: 763
    functionName: nonstd::expected_lite::detail::storage_t_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 765
    functionDepth: 0
    functionLinenumber: 765
    functionLinenumberEnd: 768
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 770
    functionDepth: 0
    functionLinenumber: 770
    functionLinenumberEnd: 773
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:777,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 775
    functionDepth: 0
    functionLinenumber: 775
    functionLinenumberEnd: 778
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:782,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 780
    functionDepth: 0
    functionLinenumber: 780
    functionLinenumberEnd: 783
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 785
    functionDepth: 0
    functionLinenumber: 785
    functionLinenumberEnd: 788
    functionName: nonstd::expected_lite::detail::storage_t_impl::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 790
    functionDepth: 0
    functionLinenumber: 790
    functionLinenumberEnd: 793
    functionName: nonstd::expected_lite::detail::storage_t_impl::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 817
    functionDepth: 0
    functionLinenumber: 817
    functionLinenumberEnd: 817
    functionName: nonstd::expected_lite::detail::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 818
    functionDepth: 0
    functionLinenumber: 818
    functionLinenumberEnd: 818
    functionName: ~storage_t_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 820
    functionDepth: 0
    functionLinenumber: 820
    functionLinenumberEnd: 822
    functionName: nonstd::expected_lite::detail::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:826,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 824
    functionDepth: 0
    functionLinenumber: 824
    functionLinenumberEnd: 827
    functionName: nonstd::expected_lite::detail::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:831,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:831,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 829
    functionDepth: 0
    functionLinenumber: 829
    functionLinenumberEnd: 832
    functionName: nonstd::expected_lite::detail::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:837,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:837,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 835
    functionDepth: 0
    functionLinenumber: 835
    functionLinenumberEnd: 838
    functionName: nonstd::expected_lite::detail::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:843,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:843,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 844
      start: 841
    functionDepth: 0
    functionLinenumber: 841
    functionLinenumberEnd: 844
    functionName: nonstd::expected_lite::detail::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 846
    functionDepth: 0
    functionLinenumber: 846
    functionLinenumberEnd: 849
    functionName: nonstd::expected_lite::detail::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 851
    functionDepth: 0
    functionLinenumber: 851
    functionLinenumberEnd: 854
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 856
    functionDepth: 0
    functionLinenumber: 856
    functionLinenumberEnd: 859
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:863,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 861
    functionDepth: 0
    functionLinenumber: 861
    functionLinenumberEnd: 864
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:868,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 869
      start: 866
    functionDepth: 0
    functionLinenumber: 866
    functionLinenumberEnd: 869
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 871
    functionDepth: 0
    functionLinenumber: 871
    functionLinenumberEnd: 874
    functionName: nonstd::expected_lite::detail::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 876
    functionDepth: 0
    functionLinenumber: 876
    functionLinenumberEnd: 879
    functionName: nonstd::expected_lite::detail::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 901
    functionDepth: 0
    functionLinenumber: 901
    functionLinenumberEnd: 901
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 902
    functionDepth: 0
    functionLinenumber: 902
    functionLinenumberEnd: 902
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 904
    functionDepth: 0
    functionLinenumber: 904
    functionLinenumberEnd: 906
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 908
    functionDepth: 0
    functionLinenumber: 908
    functionLinenumberEnd: 908
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - '      other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 909
    functionDepth: 0
    functionLinenumber: 909
    functionLinenumberEnd: 909
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t &&      other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 917
      start: 917
    functionDepth: 0
    functionLinenumber: 917
    functionLinenumberEnd: 917
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 918
      start: 918
    functionDepth: 0
    functionLinenumber: 918
    functionLinenumberEnd: 918
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 920
    functionDepth: 0
    functionLinenumber: 920
    functionLinenumberEnd: 922
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:925,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:928,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:928,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 924
    functionDepth: 1
    functionLinenumber: 924
    functionLinenumberEnd: 929
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:932,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 931
    functionDepth: 1
    functionLinenumber: 931
    functionLinenumberEnd: 936
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t(storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 943
    functionDepth: 0
    functionLinenumber: 943
    functionLinenumberEnd: 943
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 944
    functionDepth: 0
    functionLinenumber: 944
    functionLinenumberEnd: 944
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 946
    functionDepth: 0
    functionLinenumber: 946
    functionLinenumberEnd: 948
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:951,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:953,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:954,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:954,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 950
    functionDepth: 0
    functionLinenumber: 950
    functionLinenumberEnd: 955
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
    - has_value
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:958,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:960,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 957
    functionDepth: 0
    functionLinenumber: 957
    functionLinenumberEnd: 962
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t(storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 969
      start: 969
    functionDepth: 0
    functionLinenumber: 969
    functionLinenumberEnd: 969
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 970
      start: 970
    functionDepth: 0
    functionLinenumber: 970
    functionLinenumberEnd: 970
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 972
    functionDepth: 0
    functionLinenumber: 972
    functionLinenumberEnd: 974
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:977,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:980,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:980,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 976
    functionDepth: 1
    functionLinenumber: 976
    functionLinenumberEnd: 981
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::has_value
    - has_value
    - value
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_error
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 983
    functionDepth: 0
    functionLinenumber: 983
    functionLinenumberEnd: 983
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 990
      start: 990
    functionDepth: 0
    functionLinenumber: 990
    functionLinenumberEnd: 990
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 991
    functionDepth: 0
    functionLinenumber: 991
    functionLinenumberEnd: 991
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 995
      start: 993
    functionDepth: 0
    functionLinenumber: 993
    functionLinenumberEnd: 995
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:998,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, false>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1000,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, false>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1001,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1001,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1002
      start: 997
    functionDepth: 0
    functionLinenumber: 997
    functionLinenumberEnd: 1002
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - error
    - nonstd::expected_lite::detail::storage_t<void, E, true, false>::construct_error
    - nonstd::expected_lite::detail::storage_t<void, E, true, false>::has_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 1004
    functionDepth: 0
    functionLinenumber: 1004
    functionLinenumberEnd: 1004
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1011
      start: 1011
    functionDepth: 0
    functionLinenumber: 1011
    functionLinenumberEnd: 1011
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1012
      start: 1012
    functionDepth: 0
    functionLinenumber: 1012
    functionLinenumberEnd: 1012
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 1014
    functionDepth: 0
    functionLinenumber: 1014
    functionLinenumberEnd: 1016
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 1018
    functionDepth: 0
    functionLinenumber: 1018
    functionLinenumberEnd: 1018
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1021,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 1020
    functionDepth: 1
    functionLinenumber: 1020
    functionLinenumberEnd: 1025
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::has_value
    - has_value
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_value
    - value
    - std::move
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_error
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1032
      start: 1032
    functionDepth: 0
    functionLinenumber: 1032
    functionLinenumberEnd: 1032
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 1033
    functionDepth: 0
    functionLinenumber: 1033
    functionLinenumberEnd: 1033
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1037
      start: 1035
    functionDepth: 0
    functionLinenumber: 1035
    functionLinenumberEnd: 1037
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1039
      start: 1039
    functionDepth: 0
    functionLinenumber: 1039
    functionLinenumberEnd: 1039
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1042,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, false, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1044,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, false, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1041
    functionDepth: 0
    functionLinenumber: 1041
    functionLinenumberEnd: 1046
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - nonstd::expected_lite::detail::storage_t<void, E, false, true>::has_value
    - error
    - nonstd::expected_lite::detail::storage_t<void, E, false, true>::construct_error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1065,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1065,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1067,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1067,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1068
      start: 1063
    functionDepth: 1
    functionLinenumber: 1063
    functionLinenumberEnd: 1068
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 5
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( (std::forward<
      ObjectT >( obj ).*memfnptr)( std::forward< Args >( args )... ) ) )\n        ->
      decltype( (std::forward< ObjectT >( obj ).*memfnptr)( std::forward< Args >(
      args )...) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1078,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1078,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1080,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1080,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1081
      start: 1076
    functionDepth: 1
    functionLinenumber: 1076
    functionLinenumberEnd: 1081
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 5
    functionsReached:
    - get
    - noexcept
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( (obj.get().*memfnptr)(
      std::forward< Args >( args ) ... ) ) )\n        -> decltype( (obj.get().*memfnptr)(
      std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1093,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1093,1
    - Dst: std::forward<ObjectT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1095,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1095,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 1091
    functionDepth: 1
    functionLinenumber: 1091
    functionLinenumberEnd: 1096
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 5
    functionsReached:
    - noexcept
    - std::forward<ObjectT>
    - std::forward< ObjectT >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( ((*std::forward<
      ObjectT >( obj )).*memfnptr)( std::forward< Args >( args ) ... ) ) )\n        ->
      decltype( ((*std::forward< ObjectT >( obj )).*memfnptr)( std::forward< Args
      >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1105,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1105,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1106,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1104
    functionDepth: 1
    functionLinenumber: 1104
    functionLinenumberEnd: 1109
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 5
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( std::forward< ObjectT >( obj ).*memobjptr
      ) )\n        -> decltype( std::forward< ObjectT >( obj ).*memobjptr )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1117,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1117,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1118,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1116
    functionDepth: 1
    functionLinenumber: 1116
    functionLinenumberEnd: 1121
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 5
    functionsReached:
    - get
    - noexcept
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( obj.get().*memobjptr ) )\n        ->
      decltype( obj.get().*memobjptr )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1131,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1131,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1132,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1130
    functionDepth: 1
    functionLinenumber: 1130
    functionLinenumberEnd: 1135
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 5
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( (*std::forward< ObjectT >( obj
      )).*memobjptr ) )\n        -> decltype( (*std::forward< ObjectT >( obj )).*memobjptr
      )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1147
      start: 1142
    functionDepth: 2
    functionLinenumber: 1142
    functionLinenumberEnd: 1147
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 80
    functionsReached:
    - noexcept
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke_member_function_impl
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( invoke_member_function_impl( std::forward< F >( f ), std::forward<
      Args >( args ) ... ) ) )\n        -> decltype( invoke_member_function_impl(
      std::forward< F >( f ), std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1159
      start: 1154
    functionDepth: 2
    functionLinenumber: 1154
    functionLinenumberEnd: 1159
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 80
    functionsReached:
    - noexcept
    - nonstd::expected_lite::detail::invoke_member_object_impl
    - std::forward< F >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( invoke_member_object_impl( std::forward< F >( f ), std::forward< Args
      >( args ) ... ) ) )\n        -> decltype( invoke_member_object_impl( std::forward<
      F >( f ), std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1169,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1169,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1171,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1171,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1172
      start: 1162
    functionDepth: 1
    functionLinenumber: 1162
    functionLinenumberEnd: 1172
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 80
    functionsReached:
    - noexcept
    - std::forward< F >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_REQUIRES_T
    signature: "nsel_REQUIRES_T invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( std::forward< F >( f )( std::forward< Args >( args ) ... ) ) )\n        ->
      decltype( std::forward< F >( f )( std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1208
      start: 1208
    functionDepth: 0
    functionLinenumber: 1208
    functionLinenumberEnd: 1208
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type const & )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1209
      start: 1209
    functionDepth: 0
    functionLinenumber: 1209
    functionLinenumberEnd: 1209
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type && )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1218
      start: 1216
    functionDepth: 0
    functionLinenumber: 1216
    functionLinenumberEnd: 1218
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void unexpected_type( nonstd_lite_in_place_t(E), Args &&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1226,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1225
    functionDepth: 0
    functionLinenumber: 1225
    functionLinenumberEnd: 1227
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void unexpected_type( nonstd_lite_in_place_t(E), std::initializer_list<U>
      il, Args &&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<E2>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1237,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - E2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1238
      start: 1236
    functionDepth: 0
    functionLinenumber: 1236
    functionLinenumberEnd: 1238
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - std::forward<E2>
    linkageType: ''
    returnType: void
    signature: void unexpected_type( E2 && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1254
    functionDepth: 3
    functionLinenumber: 1254
    functionLinenumberEnd: 1256
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type<E2> const & error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1274
      start: 1272
    functionDepth: 3
    functionLinenumber: 1272
    functionLinenumberEnd: 1274
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type<E2> const & error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1291,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1292
      start: 1290
    functionDepth: 3
    functionLinenumber: 1290
    functionLinenumberEnd: 1292
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - nonstd::expected_lite::error
    - std::move
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type<E2> && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1309,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1309,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1310
      start: 1308
    functionDepth: 3
    functionLinenumber: 1308
    functionLinenumberEnd: 1310
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - nonstd::expected_lite::error
    - std::move
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type<E2> && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1314
      start: 1314
    functionDepth: 0
    functionLinenumber: 1314
    functionLinenumberEnd: 1314
    functionName: '& operator=( unexpected_type const & )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & operator=( unexpected_type const & )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1315
      start: 1315
    functionDepth: 0
    functionLinenumber: 1315
    functionLinenumberEnd: 1315
    functionName: '& operator=( unexpected_type && )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & operator=( unexpected_type && )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1320,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1322
      start: 1318
    functionDepth: 0
    functionLinenumber: 1318
    functionLinenumberEnd: 1322
    functionName: '& operator=( unexpected_type<E2> const & other )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - swap
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & operator=( unexpected_type<E2> const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1327,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1327,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1327,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1329
      start: 1325
    functionDepth: 0
    functionLinenumber: 1325
    functionLinenumberEnd: 1329
    functionName: '& operator=( unexpected_type<E2> && other )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - swap
    - std::move
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & operator=( unexpected_type<E2> && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1336
      start: 1333
    functionDepth: 0
    functionLinenumber: 1333
    functionLinenumberEnd: 1336
    functionName: '& error() & noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & error() & noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1338
    functionDepth: 0
    functionLinenumber: 1338
    functionLinenumberEnd: 1341
    functionName: '& error() const & noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & error() const & noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1347,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1348
      start: 1345
    functionDepth: 0
    functionLinenumber: 1345
    functionLinenumberEnd: 1348
    functionName: '&& error() && noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() && noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1352,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1353
      start: 1350
    functionDepth: 0
    functionLinenumber: 1350
    functionLinenumberEnd: 1353
    functionName: '&& error() const && noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: E
    signature: E && error() const && noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1364
      start: 1361
    functionDepth: 0
    functionLinenumber: 1361
    functionLinenumberEnd: 1364
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 22
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & value() & noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1371
      start: 1368
    functionDepth: 0
    functionLinenumber: 1368
    functionLinenumberEnd: 1371
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 22
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & value() const & noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1379,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1380
      start: 1377
    functionDepth: 0
    functionLinenumber: 1377
    functionLinenumberEnd: 1380
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 22
    functionsReached:
    - std::move
    linkageType: ''
    returnType: E
    signature: E && value() && noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1386,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1384
    functionDepth: 0
    functionLinenumber: 1384
    functionLinenumberEnd: 1387
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 22
    functionsReached:
    - std::move
    linkageType: ''
    returnType: E
    signature: E && value() const && noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - unexpected_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1403
      start: 1397
    functionDepth: 0
    functionLinenumber: 1397
    functionLinenumberEnd: 1403
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 13
    functionsReached:
    - nonstd::expected_lite::swap
    linkageType: ''
    returnType: void
    signature: "void swap( unexpected_type & other ) noexcept (\n        std17::is_nothrow_swappable<U>::value\n
      \   )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1433
      start: 1433
    functionDepth: 0
    functionLinenumber: 1433
    functionLinenumberEnd: 1433
    functionName: nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void unexpected_type()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1435
      start: 1435
    functionDepth: 0
    functionLinenumber: 1435
    functionLinenumberEnd: 1435
    functionName: ~unexpected_type()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~unexpected_type()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - std::exception_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1439
      start: 1437
    functionDepth: 0
    functionLinenumber: 1437
    functionLinenumberEnd: 1439
    functionName: nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void unexpected_type( std::exception_ptr const & error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1442,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - std::exception_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1443
      start: 1441
    functionDepth: 0
    functionLinenumber: 1441
    functionLinenumberEnd: 1443
    functionName: nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void unexpected_type(std::exception_ptr && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_exception_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - error
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1448
      start: 1446
    functionDepth: 0
    functionLinenumber: 1446
    functionLinenumberEnd: 1448
    functionName: nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::make_exception_ptr
    linkageType: ''
    returnType: void
    signature: void unexpected_type( E error )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1453
      start: 1450
    functionDepth: 0
    functionLinenumber: 1450
    functionLinenumberEnd: 1453
    functionName: '& value() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::exception_ptr
    signature: std::exception_ptr & value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1458
      start: 1455
    functionDepth: 0
    functionLinenumber: 1455
    functionLinenumberEnd: 1458
    functionName: '& value()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::exception_ptr
    signature: std::exception_ptr & value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1472,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1472,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E1>
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1473
      start: 1470
    functionDepth: 0
    functionLinenumber: 1470
    functionLinenumberEnd: 1473
    functionName: operator==( unexpected_type<E1> const & x, unexpected_type<E2> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error
    linkageType: ''
    returnType: bool
    signature: bool operator==( unexpected_type<E1> const & x, unexpected_type<E2>
      const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E1>
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1479
      start: 1476
    functionDepth: 0
    functionLinenumber: 1476
    functionLinenumberEnd: 1479
    functionName: operator!=( unexpected_type<E1> const & x, unexpected_type<E2> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( unexpected_type<E1> const & x, unexpected_type<E2>
      const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1486,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1487
      start: 1484
    functionDepth: 0
    functionLinenumber: 1484
    functionLinenumberEnd: 1487
    functionName: operator<( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error
    linkageType: ''
    returnType: bool
    signature: bool operator<( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1493
      start: 1490
    functionDepth: 0
    functionLinenumber: 1490
    functionLinenumberEnd: 1493
    functionName: operator>( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1499
      start: 1496
    functionDepth: 0
    functionLinenumber: 1496
    functionLinenumberEnd: 1499
    functionName: operator<=( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1505
      start: 1502
    functionDepth: 0
    functionLinenumber: 1502
    functionLinenumberEnd: 1505
    functionName: operator>=( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1516,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1516,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1518,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1519
      start: 1516
    functionDepth: 1
    functionLinenumber: 1516
    functionLinenumberEnd: 1519
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 14
    functionsReached:
    - noexcept
    - nonstd::expected_lite::swap
    linkageType: ''
    returnType: void
    signature: void swap( unexpected_type<E> & x, unexpected_type<E> & y) noexcept
      ( noexcept ( x.swap(y) ) )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1528
      start: 1525
    functionDepth: 0
    functionLinenumber: 1525
    functionLinenumberEnd: 1528
    functionName: operator<( unexpected_type<std::exception_ptr> const & /*x*/, unexpected_type<std::exception_ptr>
      const & /*y*/ )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<( unexpected_type<std::exception_ptr> const & /*x*/,
      unexpected_type<std::exception_ptr> const & /*y*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1530
    functionDepth: 0
    functionLinenumber: 1530
    functionLinenumberEnd: 1533
    functionName: operator>( unexpected_type<std::exception_ptr> const & /*x*/, unexpected_type<std::exception_ptr>
      const & /*y*/ )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( unexpected_type<std::exception_ptr> const & /*x*/,
      unexpected_type<std::exception_ptr> const & /*y*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<std::exception_ptr>
    - unexpected_type<std::exception_ptr>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1538
      start: 1535
    functionDepth: 0
    functionLinenumber: 1535
    functionLinenumberEnd: 1538
    functionName: operator<=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
      const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
      const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<std::exception_ptr>
    - unexpected_type<std::exception_ptr>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1543
      start: 1540
    functionDepth: 0
    functionLinenumber: 1540
    functionLinenumberEnd: 1543
    functionName: operator>=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
      const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
      const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::unexpected_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1567,1
    - Dst: std::forward<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1567,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1568
      start: 1564
    functionDepth: 1
    functionLinenumber: 1564
    functionLinenumberEnd: 1568
    functionName: nonstd::expected_lite::make_unexpected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - std::forward<E>
    - nonstd::expected_lite::unexpected_type
    linkageType: ''
    returnType: nsel_constexpr14 auto
    signature: nsel_constexpr14 auto make_unexpected( E && value ) -> unexpected_type<
      typename std::decay<E>::type >
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::unexpected_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1575,1
    - Dst: std::current_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1576
      start: 1572
    functionDepth: 1
    functionLinenumber: 1572
    functionLinenumberEnd: 1576
    functionName: nonstd::expected_lite::make_unexpected_from_current_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - std::current_exception
    - nonstd::expected_lite::unexpected_type
    linkageType: ''
    returnType: auto
    signature: auto make_unexpected_from_current_exception() -> unexpected_type< std::exception_ptr
      >
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1593
      start: 1591
    functionDepth: 0
    functionLinenumber: 1591
    functionLinenumberEnd: 1593
    functionName: nonstd::expected_lite::bad_expected_access< void >::bad_expected_access
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void bad_expected_access()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - error
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1608
      start: 1606
    functionDepth: 0
    functionLinenumber: 1606
    functionLinenumberEnd: 1608
    functionName: nonstd::expected_lite::bad_expected_access::bad_expected_access
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void bad_expected_access( error_type error )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1613
      start: 1610
    functionDepth: 0
    functionLinenumber: 1610
    functionLinenumberEnd: 1613
    functionName: nonstd::expected_lite::bad_expected_access::what
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * what() const noexcept override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1618
      start: 1615
    functionDepth: 0
    functionLinenumber: 1615
    functionLinenumberEnd: 1618
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1623
      start: 1620
    functionDepth: 0
    functionLinenumber: 1620
    functionLinenumberEnd: 1623
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1629,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1630
      start: 1627
    functionDepth: 0
    functionLinenumber: 1627
    functionLinenumberEnd: 1630
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1634,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1635
      start: 1632
    functionDepth: 0
    functionLinenumber: 1632
    functionLinenumberEnd: 1635
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1658
    functionDepth: 0
    functionLinenumber: 1658
    functionLinenumberEnd: 1658
    functionName: nonstd::expected_lite::detail::text
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool text( char const * /*text*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1658
    functionDepth: 0
    functionLinenumber: 1658
    functionLinenumberEnd: 1658
    functionName: nonstd::expected_lite::detail::text
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool text( char const * /*text*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RaiseException
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1667,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1669,1
    - Dst: nonstd::expected_lite::detail::text
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1669,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( false && detail::text("throw bad_expected_access<Error>{ e };")
        )
      pos:
        line_end: 1668
        line_start: 1668
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 1671
      start: 1664
    functionDepth: 1
    functionLinenumber: 1664
    functionLinenumberEnd: 1671
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 10
    functionsReached:
    - assert
    - RaiseException
    - nonstd::expected_lite::detail::text
    linkageType: ''
    returnType: void
    signature: void rethrow( Error const & /*e*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RaiseException
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1680,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1682,1
    - Dst: nonstd::expected_lite::detail::text
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1682,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( false && detail::text("throw bad_expected_access<std::exception_ptr>{
        e };") )
      pos:
        line_end: 1681
        line_start: 1681
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 1684
      start: 1677
    functionDepth: 1
    functionLinenumber: 1677
    functionLinenumberEnd: 1684
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 10
    functionsReached:
    - assert
    - RaiseException
    - nonstd::expected_lite::detail::text
    linkageType: ''
    returnType: void
    signature: void rethrow( std::exception_ptr const & /*e*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RaiseException
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1693,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1695,1
    - Dst: nonstd::expected_lite::detail::text
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1695,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( false && detail::text("throw std::system_error( e );") )
      pos:
        line_end: 1694
        line_start: 1694
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 1697
      start: 1690
    functionDepth: 1
    functionLinenumber: 1690
    functionLinenumberEnd: 1697
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 10
    functionsReached:
    - assert
    - RaiseException
    - nonstd::expected_lite::detail::text
    linkageType: ''
    returnType: void
    signature: void rethrow( std::error_code const & /*e*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - Error
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1708
      start: 1705
    functionDepth: 0
    functionLinenumber: 1705
    functionLinenumberEnd: 1708
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void rethrow( Error const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::rethrow_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1716,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - std::exception_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1717
      start: 1714
    functionDepth: 0
    functionLinenumber: 1714
    functionLinenumberEnd: 1717
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 10
    functionsReached:
    - std::rethrow_exception
    linkageType: ''
    returnType: void
    signature: void rethrow( std::exception_ptr const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::system_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1725,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - std::error_code
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1726
      start: 1723
    functionDepth: 0
    functionLinenumber: 1723
    functionLinenumberEnd: 1726
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 10
    functionsReached:
    - std::system_error
    linkageType: ''
    returnType: void
    signature: void rethrow( std::error_code const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: nonstd::expected_lite::std17::detail::satisfies
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::declval<T&>
    - noexcept
    - swap
    linkageType: ''
    returnType: bool
    signature: bool satisfies()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 449
    functionName: nonstd::expected_lite::std17::detail::test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto test( int ) -> std::integral_constant<bool, satisfies<T>()>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: nonstd::expected_lite::std17::detail::satisfies
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::declval<T&>
    - noexcept
    - swap
    linkageType: ''
    returnType: bool
    signature: bool satisfies()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 449
    functionName: nonstd::expected_lite::std17::detail::test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto test( int ) -> std::integral_constant<bool, satisfies<T>()>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: nonstd::expected_lite::std17::detail::satisfies
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::declval<T&>
    - noexcept
    - swap
    linkageType: ''
    returnType: bool
    signature: bool satisfies()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 449
    functionName: nonstd::expected_lite::std17::detail::test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto test( int ) -> std::integral_constant<bool, satisfies<T>()>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    - Dst: std::declval<T&>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 446
      start: 443
    functionDepth: 1
    functionLinenumber: 443
    functionLinenumberEnd: 446
    functionName: nonstd::expected_lite::std17::detail::satisfies
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::declval<T&>
    - noexcept
    - swap
    linkageType: ''
    returnType: bool
    signature: bool satisfies()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 449
      start: 449
    functionDepth: 0
    functionLinenumber: 449
    functionLinenumberEnd: 449
    functionName: nonstd::expected_lite::std17::detail::test
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: auto test( int ) -> std::integral_constant<bool, satisfies<T>()>
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 523
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_noncopy_nonmove_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 524
    functionDepth: 0
    functionLinenumber: 524
    functionLinenumberEnd: 524
    functionName: ~storage_t_noncopy_nonmove_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_noncopy_nonmove_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 526
    functionDepth: 0
    functionLinenumber: 526
    functionLinenumberEnd: 528
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_noncopy_nonmove_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:532,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 530
    functionDepth: 0
    functionLinenumber: 530
    functionLinenumberEnd: 533
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:548,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 546
    functionDepth: 0
    functionLinenumber: 546
    functionLinenumberEnd: 549
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:554,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:554,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 555
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 560
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~value_type
    linkageType: ''
    returnType: void
    signature: void destruct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:575,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:575,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 573
    functionDepth: 0
    functionLinenumber: 573
    functionLinenumberEnd: 576
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:581,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:581,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 582
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 584
    functionDepth: 0
    functionLinenumber: 584
    functionLinenumberEnd: 587
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 589
    functionDepth: 0
    functionLinenumber: 589
    functionLinenumberEnd: 592
    functionName: '& value() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 597
    functionName: '& value() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:601,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 599
    functionDepth: 0
    functionLinenumber: 599
    functionLinenumberEnd: 602
    functionName: '&& value() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:606,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 604
    functionDepth: 0
    functionLinenumber: 604
    functionLinenumberEnd: 607
    functionName: '&& value() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 609
    functionDepth: 0
    functionLinenumber: 609
    functionLinenumberEnd: 612
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 614
    functionDepth: 0
    functionLinenumber: 614
    functionLinenumberEnd: 617
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 619
    functionDepth: 0
    functionLinenumber: 619
    functionLinenumberEnd: 622
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 624
    functionDepth: 0
    functionLinenumber: 624
    functionLinenumberEnd: 627
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:631,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 629
    functionDepth: 0
    functionLinenumber: 629
    functionLinenumberEnd: 632
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:636,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 634
    functionDepth: 0
    functionLinenumber: 634
    functionLinenumberEnd: 637
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 639
    functionDepth: 0
    functionLinenumber: 639
    functionLinenumberEnd: 642
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 644
    functionDepth: 0
    functionLinenumber: 644
    functionLinenumberEnd: 647
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 669
    functionDepth: 0
    functionLinenumber: 669
    functionLinenumberEnd: 669
    functionName: nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 670
    functionDepth: 0
    functionLinenumber: 670
    functionLinenumberEnd: 670
    functionName: ~storage_t_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 674
    functionName: nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 676
    functionDepth: 0
    functionLinenumber: 676
    functionLinenumberEnd: 679
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:683,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 681
    functionDepth: 0
    functionLinenumber: 681
    functionLinenumberEnd: 684
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value( value_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:688,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:688,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 686
    functionDepth: 0
    functionLinenumber: 686
    functionLinenumberEnd: 689
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_value( value_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:694,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:694,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 692
    functionDepth: 0
    functionLinenumber: 692
    functionLinenumberEnd: 695
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:700,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:700,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 698
    functionDepth: 0
    functionLinenumber: 698
    functionLinenumberEnd: 701
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 703
    functionDepth: 0
    functionLinenumber: 703
    functionLinenumberEnd: 706
    functionName: nonstd::expected_lite::detail::storage_t_impl::destruct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~value_type
    linkageType: ''
    returnType: void
    signature: void destruct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:710,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 708
    functionDepth: 0
    functionLinenumber: 708
    functionLinenumberEnd: 711
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:715,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:715,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 713
    functionDepth: 0
    functionLinenumber: 713
    functionLinenumberEnd: 716
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:721,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:721,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 719
    functionDepth: 0
    functionLinenumber: 719
    functionLinenumberEnd: 722
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:727,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:727,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 725
    functionDepth: 0
    functionLinenumber: 725
    functionLinenumberEnd: 728
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:732,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 730
    functionDepth: 0
    functionLinenumber: 730
    functionLinenumberEnd: 733
    functionName: nonstd::expected_lite::detail::storage_t_impl::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 735
    functionDepth: 0
    functionLinenumber: 735
    functionLinenumberEnd: 738
    functionName: '& value() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 740
    functionDepth: 0
    functionLinenumber: 740
    functionLinenumberEnd: 743
    functionName: '& value() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:747,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 745
    functionDepth: 0
    functionLinenumber: 745
    functionLinenumberEnd: 748
    functionName: '&& value() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:752,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 753
    functionName: '&& value() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 755
    functionDepth: 0
    functionLinenumber: 755
    functionLinenumberEnd: 758
    functionName: nonstd::expected_lite::detail::storage_t_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 760
    functionDepth: 0
    functionLinenumber: 760
    functionLinenumberEnd: 763
    functionName: nonstd::expected_lite::detail::storage_t_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 765
    functionDepth: 0
    functionLinenumber: 765
    functionLinenumberEnd: 768
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 770
    functionDepth: 0
    functionLinenumber: 770
    functionLinenumberEnd: 773
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:777,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 775
    functionDepth: 0
    functionLinenumber: 775
    functionLinenumberEnd: 778
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:782,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 780
    functionDepth: 0
    functionLinenumber: 780
    functionLinenumberEnd: 783
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 785
    functionDepth: 0
    functionLinenumber: 785
    functionLinenumberEnd: 788
    functionName: nonstd::expected_lite::detail::storage_t_impl::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 790
    functionDepth: 0
    functionLinenumber: 790
    functionLinenumberEnd: 793
    functionName: nonstd::expected_lite::detail::storage_t_impl::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 817
    functionDepth: 0
    functionLinenumber: 817
    functionLinenumberEnd: 817
    functionName: nonstd::expected_lite::detail::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 818
    functionDepth: 0
    functionLinenumber: 818
    functionLinenumberEnd: 818
    functionName: ~storage_t_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 820
    functionDepth: 0
    functionLinenumber: 820
    functionLinenumberEnd: 822
    functionName: nonstd::expected_lite::detail::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:826,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 824
    functionDepth: 0
    functionLinenumber: 824
    functionLinenumberEnd: 827
    functionName: nonstd::expected_lite::detail::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:831,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:831,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 829
    functionDepth: 0
    functionLinenumber: 829
    functionLinenumberEnd: 832
    functionName: nonstd::expected_lite::detail::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:837,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:837,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 835
    functionDepth: 0
    functionLinenumber: 835
    functionLinenumberEnd: 838
    functionName: nonstd::expected_lite::detail::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:843,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:843,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 844
      start: 841
    functionDepth: 0
    functionLinenumber: 841
    functionLinenumberEnd: 844
    functionName: nonstd::expected_lite::detail::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 846
    functionDepth: 0
    functionLinenumber: 846
    functionLinenumberEnd: 849
    functionName: nonstd::expected_lite::detail::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 851
    functionDepth: 0
    functionLinenumber: 851
    functionLinenumberEnd: 854
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 856
    functionDepth: 0
    functionLinenumber: 856
    functionLinenumberEnd: 859
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:863,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 861
    functionDepth: 0
    functionLinenumber: 861
    functionLinenumberEnd: 864
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:868,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 869
      start: 866
    functionDepth: 0
    functionLinenumber: 866
    functionLinenumberEnd: 869
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 871
    functionDepth: 0
    functionLinenumber: 871
    functionLinenumberEnd: 874
    functionName: nonstd::expected_lite::detail::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 876
    functionDepth: 0
    functionLinenumber: 876
    functionLinenumberEnd: 879
    functionName: nonstd::expected_lite::detail::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 901
    functionDepth: 0
    functionLinenumber: 901
    functionLinenumberEnd: 901
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 902
    functionDepth: 0
    functionLinenumber: 902
    functionLinenumberEnd: 902
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 904
    functionDepth: 0
    functionLinenumber: 904
    functionLinenumberEnd: 906
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 908
    functionDepth: 0
    functionLinenumber: 908
    functionLinenumberEnd: 908
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - '      other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 909
    functionDepth: 0
    functionLinenumber: 909
    functionLinenumberEnd: 909
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t &&      other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 917
      start: 917
    functionDepth: 0
    functionLinenumber: 917
    functionLinenumberEnd: 917
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 918
      start: 918
    functionDepth: 0
    functionLinenumber: 918
    functionLinenumberEnd: 918
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 920
    functionDepth: 0
    functionLinenumber: 920
    functionLinenumberEnd: 922
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:925,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:928,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:928,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 924
    functionDepth: 1
    functionLinenumber: 924
    functionLinenumberEnd: 929
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:932,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 931
    functionDepth: 1
    functionLinenumber: 931
    functionLinenumberEnd: 936
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t(storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 943
    functionDepth: 0
    functionLinenumber: 943
    functionLinenumberEnd: 943
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 944
    functionDepth: 0
    functionLinenumber: 944
    functionLinenumberEnd: 944
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 946
    functionDepth: 0
    functionLinenumber: 946
    functionLinenumberEnd: 948
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:951,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:953,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:954,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:954,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 950
    functionDepth: 0
    functionLinenumber: 950
    functionLinenumberEnd: 955
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
    - has_value
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:958,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:960,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 957
    functionDepth: 0
    functionLinenumber: 957
    functionLinenumberEnd: 962
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t(storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 969
      start: 969
    functionDepth: 0
    functionLinenumber: 969
    functionLinenumberEnd: 969
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 970
      start: 970
    functionDepth: 0
    functionLinenumber: 970
    functionLinenumberEnd: 970
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 972
    functionDepth: 0
    functionLinenumber: 972
    functionLinenumberEnd: 974
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:977,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:980,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:980,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 976
    functionDepth: 1
    functionLinenumber: 976
    functionLinenumberEnd: 981
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::has_value
    - has_value
    - value
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_error
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 983
    functionDepth: 0
    functionLinenumber: 983
    functionLinenumberEnd: 983
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 990
      start: 990
    functionDepth: 0
    functionLinenumber: 990
    functionLinenumberEnd: 990
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 991
    functionDepth: 0
    functionLinenumber: 991
    functionLinenumberEnd: 991
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 995
      start: 993
    functionDepth: 0
    functionLinenumber: 993
    functionLinenumberEnd: 995
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:998,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, false>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1000,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, false>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1001,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1001,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1002
      start: 997
    functionDepth: 0
    functionLinenumber: 997
    functionLinenumberEnd: 1002
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - error
    - nonstd::expected_lite::detail::storage_t<void, E, true, false>::construct_error
    - nonstd::expected_lite::detail::storage_t<void, E, true, false>::has_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 1004
    functionDepth: 0
    functionLinenumber: 1004
    functionLinenumberEnd: 1004
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1011
      start: 1011
    functionDepth: 0
    functionLinenumber: 1011
    functionLinenumberEnd: 1011
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1012
      start: 1012
    functionDepth: 0
    functionLinenumber: 1012
    functionLinenumberEnd: 1012
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 1014
    functionDepth: 0
    functionLinenumber: 1014
    functionLinenumberEnd: 1016
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 1018
    functionDepth: 0
    functionLinenumber: 1018
    functionLinenumberEnd: 1018
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1021,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 1020
    functionDepth: 1
    functionLinenumber: 1020
    functionLinenumberEnd: 1025
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::has_value
    - has_value
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_value
    - value
    - std::move
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_error
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1032
      start: 1032
    functionDepth: 0
    functionLinenumber: 1032
    functionLinenumberEnd: 1032
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 1033
    functionDepth: 0
    functionLinenumber: 1033
    functionLinenumberEnd: 1033
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1037
      start: 1035
    functionDepth: 0
    functionLinenumber: 1035
    functionLinenumberEnd: 1037
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1039
      start: 1039
    functionDepth: 0
    functionLinenumber: 1039
    functionLinenumberEnd: 1039
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1042,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, false, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1044,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, false, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1041
    functionDepth: 0
    functionLinenumber: 1041
    functionLinenumberEnd: 1046
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - nonstd::expected_lite::detail::storage_t<void, E, false, true>::has_value
    - error
    - nonstd::expected_lite::detail::storage_t<void, E, false, true>::construct_error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1065,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1065,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1067,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1067,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1068
      start: 1063
    functionDepth: 1
    functionLinenumber: 1063
    functionLinenumberEnd: 1068
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( (std::forward<
      ObjectT >( obj ).*memfnptr)( std::forward< Args >( args )... ) ) )\n        ->
      decltype( (std::forward< ObjectT >( obj ).*memfnptr)( std::forward< Args >(
      args )...) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1078,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1078,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1080,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1080,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1081
      start: 1076
    functionDepth: 1
    functionLinenumber: 1076
    functionLinenumberEnd: 1081
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - get
    - noexcept
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( (obj.get().*memfnptr)(
      std::forward< Args >( args ) ... ) ) )\n        -> decltype( (obj.get().*memfnptr)(
      std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1093,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1093,1
    - Dst: std::forward<ObjectT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1095,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1095,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 1091
    functionDepth: 1
    functionLinenumber: 1091
    functionLinenumberEnd: 1096
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - noexcept
    - std::forward<ObjectT>
    - std::forward< ObjectT >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( ((*std::forward<
      ObjectT >( obj )).*memfnptr)( std::forward< Args >( args ) ... ) ) )\n        ->
      decltype( ((*std::forward< ObjectT >( obj )).*memfnptr)( std::forward< Args
      >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1105,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1105,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1106,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1104
    functionDepth: 1
    functionLinenumber: 1104
    functionLinenumberEnd: 1109
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( std::forward< ObjectT >( obj ).*memobjptr
      ) )\n        -> decltype( std::forward< ObjectT >( obj ).*memobjptr )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1117,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1117,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1118,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1116
    functionDepth: 1
    functionLinenumber: 1116
    functionLinenumberEnd: 1121
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - get
    - noexcept
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( obj.get().*memobjptr ) )\n        ->
      decltype( obj.get().*memobjptr )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1131,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1131,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1132,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1130
    functionDepth: 1
    functionLinenumber: 1130
    functionLinenumberEnd: 1135
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( (*std::forward< ObjectT >( obj
      )).*memobjptr ) )\n        -> decltype( (*std::forward< ObjectT >( obj )).*memobjptr
      )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1147
      start: 1142
    functionDepth: 2
    functionLinenumber: 1142
    functionLinenumberEnd: 1147
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 80
    functionsReached:
    - noexcept
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke_member_function_impl
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( invoke_member_function_impl( std::forward< F >( f ), std::forward<
      Args >( args ) ... ) ) )\n        -> decltype( invoke_member_function_impl(
      std::forward< F >( f ), std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1159
      start: 1154
    functionDepth: 2
    functionLinenumber: 1154
    functionLinenumberEnd: 1159
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 80
    functionsReached:
    - noexcept
    - nonstd::expected_lite::detail::invoke_member_object_impl
    - std::forward< F >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( invoke_member_object_impl( std::forward< F >( f ), std::forward< Args
      >( args ) ... ) ) )\n        -> decltype( invoke_member_object_impl( std::forward<
      F >( f ), std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1169,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1169,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1171,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1171,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1172
      start: 1162
    functionDepth: 1
    functionLinenumber: 1162
    functionLinenumberEnd: 1172
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 80
    functionsReached:
    - noexcept
    - std::forward< F >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_REQUIRES_T
    signature: "nsel_REQUIRES_T invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( std::forward< F >( f )( std::forward< Args >( args ) ... ) ) )\n        ->
      decltype( std::forward< F >( f )( std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 523
      start: 523
    functionDepth: 0
    functionLinenumber: 523
    functionLinenumberEnd: 523
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_noncopy_nonmove_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 524
    functionDepth: 0
    functionLinenumber: 524
    functionLinenumberEnd: 524
    functionName: ~storage_t_noncopy_nonmove_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_noncopy_nonmove_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 528
      start: 526
    functionDepth: 0
    functionLinenumber: 526
    functionLinenumberEnd: 528
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_noncopy_nonmove_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:532,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 533
      start: 530
    functionDepth: 0
    functionLinenumber: 530
    functionLinenumberEnd: 533
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:548,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:548,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 546
    functionDepth: 0
    functionLinenumber: 546
    functionLinenumberEnd: 549
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:554,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:554,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 555
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:559,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 560
      start: 557
    functionDepth: 0
    functionLinenumber: 557
    functionLinenumberEnd: 560
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~value_type
    linkageType: ''
    returnType: void
    signature: void destruct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:575,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:575,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 573
    functionDepth: 0
    functionLinenumber: 573
    functionLinenumberEnd: 576
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:581,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:581,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 579
    functionDepth: 0
    functionLinenumber: 579
    functionLinenumberEnd: 582
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:586,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 587
      start: 584
    functionDepth: 0
    functionLinenumber: 584
    functionLinenumberEnd: 587
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 589
    functionDepth: 0
    functionLinenumber: 589
    functionLinenumberEnd: 592
    functionName: '& value() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 597
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 597
    functionName: '& value() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:601,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 602
      start: 599
    functionDepth: 0
    functionLinenumber: 599
    functionLinenumberEnd: 602
    functionName: '&& value() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:606,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 604
    functionDepth: 0
    functionLinenumber: 604
    functionLinenumberEnd: 607
    functionName: '&& value() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 612
      start: 609
    functionDepth: 0
    functionLinenumber: 609
    functionLinenumberEnd: 612
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 617
      start: 614
    functionDepth: 0
    functionLinenumber: 614
    functionLinenumberEnd: 617
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 619
    functionDepth: 0
    functionLinenumber: 619
    functionLinenumberEnd: 622
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 624
    functionDepth: 0
    functionLinenumber: 624
    functionLinenumberEnd: 627
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:631,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 632
      start: 629
    functionDepth: 0
    functionLinenumber: 629
    functionLinenumberEnd: 632
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:636,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 634
    functionDepth: 0
    functionLinenumber: 634
    functionLinenumberEnd: 637
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 642
      start: 639
    functionDepth: 0
    functionLinenumber: 639
    functionLinenumberEnd: 642
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 647
      start: 644
    functionDepth: 0
    functionLinenumber: 644
    functionLinenumberEnd: 647
    functionName: nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 669
    functionDepth: 0
    functionLinenumber: 669
    functionLinenumberEnd: 669
    functionName: nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 670
    functionDepth: 0
    functionLinenumber: 670
    functionLinenumberEnd: 670
    functionName: ~storage_t_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 674
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 674
    functionName: nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 676
    functionDepth: 0
    functionLinenumber: 676
    functionLinenumberEnd: 679
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:683,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 684
      start: 681
    functionDepth: 0
    functionLinenumber: 681
    functionLinenumberEnd: 684
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    linkageType: ''
    returnType: void
    signature: void construct_value( value_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:688,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:688,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - value_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 686
    functionDepth: 0
    functionLinenumber: 686
    functionLinenumberEnd: 689
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_value( value_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:694,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:694,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 695
      start: 692
    functionDepth: 0
    functionLinenumber: 692
    functionLinenumberEnd: 695
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:700,1
    - Dst: value_type::value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:700,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 701
      start: 698
    functionDepth: 0
    functionLinenumber: 698
    functionLinenumberEnd: 701
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value_type::value_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_value( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~value_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:705,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 703
    functionDepth: 0
    functionLinenumber: 703
    functionLinenumberEnd: 706
    functionName: nonstd::expected_lite::detail::storage_t_impl::destruct_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~value_type
    linkageType: ''
    returnType: void
    signature: void destruct_value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:710,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 711
      start: 708
    functionDepth: 0
    functionLinenumber: 708
    functionLinenumberEnd: 711
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:715,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:715,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 716
      start: 713
    functionDepth: 0
    functionLinenumber: 713
    functionLinenumberEnd: 716
    functionName: nonstd::expected_lite::detail::storage_t_impl::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:721,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:721,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 722
      start: 719
    functionDepth: 0
    functionLinenumber: 719
    functionLinenumberEnd: 722
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:727,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:727,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 728
      start: 725
    functionDepth: 0
    functionLinenumber: 725
    functionLinenumberEnd: 728
    functionName: nonstd::expected_lite::detail::storage_t_impl::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:732,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 733
      start: 730
    functionDepth: 0
    functionLinenumber: 730
    functionLinenumberEnd: 733
    functionName: nonstd::expected_lite::detail::storage_t_impl::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 735
    functionDepth: 0
    functionLinenumber: 735
    functionLinenumberEnd: 738
    functionName: '& value() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 743
      start: 740
    functionDepth: 0
    functionLinenumber: 740
    functionLinenumberEnd: 743
    functionName: '& value() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:747,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 748
      start: 745
    functionDepth: 0
    functionLinenumber: 745
    functionLinenumberEnd: 748
    functionName: '&& value() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:752,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 753
    functionName: '&& value() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 758
      start: 755
    functionDepth: 0
    functionLinenumber: 755
    functionLinenumberEnd: 758
    functionName: nonstd::expected_lite::detail::storage_t_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 760
    functionDepth: 0
    functionLinenumber: 760
    functionLinenumberEnd: 763
    functionName: nonstd::expected_lite::detail::storage_t_impl::value_ptr
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: value_type
    signature: value_type * value_ptr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 765
    functionDepth: 0
    functionLinenumber: 765
    functionLinenumberEnd: 768
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 770
    functionDepth: 0
    functionLinenumber: 770
    functionLinenumberEnd: 773
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:777,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 778
      start: 775
    functionDepth: 0
    functionLinenumber: 775
    functionLinenumberEnd: 778
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:782,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 783
      start: 780
    functionDepth: 0
    functionLinenumber: 780
    functionLinenumberEnd: 783
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 788
      start: 785
    functionDepth: 0
    functionLinenumber: 785
    functionLinenumberEnd: 788
    functionName: nonstd::expected_lite::detail::storage_t_impl::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 790
    functionDepth: 0
    functionLinenumber: 790
    functionLinenumberEnd: 793
    functionName: nonstd::expected_lite::detail::storage_t_impl::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 817
    functionDepth: 0
    functionLinenumber: 817
    functionLinenumberEnd: 817
    functionName: nonstd::expected_lite::detail::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 818
      start: 818
    functionDepth: 0
    functionLinenumber: 818
    functionLinenumberEnd: 818
    functionName: ~storage_t_impl()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t_impl()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 820
    functionDepth: 0
    functionLinenumber: 820
    functionLinenumberEnd: 822
    functionName: nonstd::expected_lite::detail::storage_t_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t_impl( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:826,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 827
      start: 824
    functionDepth: 0
    functionLinenumber: 824
    functionLinenumberEnd: 827
    functionName: nonstd::expected_lite::detail::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:831,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:831,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 829
    functionDepth: 0
    functionLinenumber: 829
    functionLinenumberEnd: 832
    functionName: nonstd::expected_lite::detail::construct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::move
    linkageType: ''
    returnType: void
    signature: void construct_error( error_type && e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:837,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:837,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 838
      start: 835
    functionDepth: 0
    functionLinenumber: 835
    functionLinenumberEnd: 838
    functionName: nonstd::expected_lite::detail::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:843,1
    - Dst: error_type::error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:843,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 844
      start: 841
    functionDepth: 0
    functionLinenumber: 841
    functionLinenumberEnd: 844
    functionName: nonstd::expected_lite::detail::emplace_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error_type::error_type
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void emplace_error( std::initializer_list<U> il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ~error_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 846
    functionDepth: 0
    functionLinenumber: 846
    functionLinenumberEnd: 849
    functionName: nonstd::expected_lite::detail::destruct_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - ~error_type
    linkageType: ''
    returnType: void
    signature: void destruct_error()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 854
      start: 851
    functionDepth: 0
    functionLinenumber: 851
    functionLinenumberEnd: 854
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 859
      start: 856
    functionDepth: 0
    functionLinenumber: 856
    functionLinenumberEnd: 859
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:863,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 861
    functionDepth: 0
    functionLinenumber: 861
    functionLinenumberEnd: 864
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:868,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 869
      start: 866
    functionDepth: 0
    functionLinenumber: 866
    functionLinenumberEnd: 869
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 874
      start: 871
    functionDepth: 0
    functionLinenumber: 871
    functionLinenumberEnd: 874
    functionName: nonstd::expected_lite::detail::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 879
      start: 876
    functionDepth: 0
    functionLinenumber: 876
    functionLinenumberEnd: 879
    functionName: nonstd::expected_lite::detail::set_has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void set_has_value( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 901
      start: 901
    functionDepth: 0
    functionLinenumber: 901
    functionLinenumberEnd: 901
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 902
      start: 902
    functionDepth: 0
    functionLinenumber: 902
    functionLinenumberEnd: 902
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 906
      start: 904
    functionDepth: 0
    functionLinenumber: 904
    functionLinenumberEnd: 906
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 908
      start: 908
    functionDepth: 0
    functionLinenumber: 908
    functionLinenumberEnd: 908
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - '      other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 909
    functionDepth: 0
    functionLinenumber: 909
    functionLinenumberEnd: 909
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t &&      other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 917
      start: 917
    functionDepth: 0
    functionLinenumber: 917
    functionLinenumberEnd: 917
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 918
      start: 918
    functionDepth: 0
    functionLinenumber: 918
    functionLinenumberEnd: 918
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 920
    functionDepth: 0
    functionLinenumber: 920
    functionLinenumberEnd: 922
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:925,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:927,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:928,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:928,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 924
    functionDepth: 1
    functionLinenumber: 924
    functionLinenumberEnd: 929
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:932,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:934,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:935,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 936
      start: 931
    functionDepth: 1
    functionLinenumber: 931
    functionLinenumberEnd: 936
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_error
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::has_value
    - nonstd::expected_lite::detail::storage_t<T, E, true, true>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t(storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 943
      start: 943
    functionDepth: 0
    functionLinenumber: 943
    functionLinenumberEnd: 943
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 944
      start: 944
    functionDepth: 0
    functionLinenumber: 944
    functionLinenumberEnd: 944
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 946
    functionDepth: 0
    functionLinenumber: 946
    functionLinenumberEnd: 948
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:951,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:953,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:954,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:954,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 955
      start: 950
    functionDepth: 0
    functionLinenumber: 950
    functionLinenumberEnd: 955
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
    - has_value
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:958,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:960,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:961,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 962
      start: 957
    functionDepth: 0
    functionLinenumber: 957
    functionLinenumberEnd: 962
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::construct_error
    - nonstd::expected_lite::detail::storage_t<void, E, true, true>::has_value
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t(storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 969
      start: 969
    functionDepth: 0
    functionLinenumber: 969
    functionLinenumberEnd: 969
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 970
      start: 970
    functionDepth: 0
    functionLinenumber: 970
    functionLinenumberEnd: 970
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 974
      start: 972
    functionDepth: 0
    functionLinenumber: 972
    functionLinenumberEnd: 974
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:977,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:979,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:980,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:980,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 981
      start: 976
    functionDepth: 1
    functionLinenumber: 976
    functionLinenumberEnd: 981
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::has_value
    - has_value
    - value
    - error
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_error
    - nonstd::expected_lite::detail::storage_t<T, E, true, false>::construct_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 983
    functionDepth: 0
    functionLinenumber: 983
    functionLinenumberEnd: 983
    functionName: nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 990
      start: 990
    functionDepth: 0
    functionLinenumber: 990
    functionLinenumberEnd: 990
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 991
      start: 991
    functionDepth: 0
    functionLinenumber: 991
    functionLinenumberEnd: 991
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 995
      start: 993
    functionDepth: 0
    functionLinenumber: 993
    functionLinenumberEnd: 995
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:998,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, false>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1000,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, true, false>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1001,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1001,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1002
      start: 997
    functionDepth: 0
    functionLinenumber: 997
    functionLinenumberEnd: 1002
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - error
    - nonstd::expected_lite::detail::storage_t<void, E, true, false>::construct_error
    - nonstd::expected_lite::detail::storage_t<void, E, true, false>::has_value
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 1004
    functionDepth: 0
    functionLinenumber: 1004
    functionLinenumberEnd: 1004
    functionName: nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1011
      start: 1011
    functionDepth: 0
    functionLinenumber: 1011
    functionLinenumberEnd: 1011
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1012
      start: 1012
    functionDepth: 0
    functionLinenumber: 1012
    functionLinenumberEnd: 1012
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 1014
    functionDepth: 0
    functionLinenumber: 1014
    functionLinenumberEnd: 1016
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1018
      start: 1018
    functionDepth: 0
    functionLinenumber: 1018
    functionLinenumberEnd: 1018
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1021,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1023,1
    - Dst: nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1024,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1025
      start: 1020
    functionDepth: 1
    functionLinenumber: 1020
    functionLinenumberEnd: 1025
    functionName: nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::has_value
    - has_value
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_value
    - value
    - std::move
    - nonstd::expected_lite::detail::storage_t<T, E, false, true>::construct_error
    - error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1032
      start: 1032
    functionDepth: 0
    functionLinenumber: 1032
    functionLinenumberEnd: 1032
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 1033
    functionDepth: 0
    functionLinenumber: 1033
    functionLinenumberEnd: 1033
    functionName: ~storage_t()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~storage_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - has_value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1037
      start: 1035
    functionDepth: 0
    functionLinenumber: 1035
    functionLinenumberEnd: 1037
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( bool has_value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1039
      start: 1039
    functionDepth: 0
    functionLinenumber: 1039
    functionLinenumberEnd: 1039
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t const & other )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1042,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, false, true>::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1044,1
    - Dst: nonstd::expected_lite::detail::storage_t<void, E, false, true>::construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1045,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - storage_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1041
    functionDepth: 0
    functionLinenumber: 1041
    functionLinenumberEnd: 1046
    functionName: nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - nonstd::expected_lite::detail::storage_t<void, E, false, true>::has_value
    - error
    - nonstd::expected_lite::detail::storage_t<void, E, false, true>::construct_error
    linkageType: ''
    returnType: void
    signature: void storage_t( storage_t && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1064,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1065,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1065,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1067,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1067,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1068
      start: 1063
    functionDepth: 1
    functionLinenumber: 1063
    functionLinenumberEnd: 1068
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 7
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( (std::forward<
      ObjectT >( obj ).*memfnptr)( std::forward< Args >( args )... ) ) )\n        ->
      decltype( (std::forward< ObjectT >( obj ).*memfnptr)( std::forward< Args >(
      args )...) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1077,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1078,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1078,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1080,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1080,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1081
      start: 1076
    functionDepth: 1
    functionLinenumber: 1076
    functionLinenumberEnd: 1081
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 7
    functionsReached:
    - get
    - noexcept
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( (obj.get().*memfnptr)(
      std::forward< Args >( args ) ... ) ) )\n        -> decltype( (obj.get().*memfnptr)(
      std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1092,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1093,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1093,1
    - Dst: std::forward<ObjectT>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1095,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1095,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memfnptr
    - ' obj'
    argTypes:
    - FnT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 1091
    functionDepth: 1
    functionLinenumber: 1091
    functionLinenumberEnd: 1096
    functionName: nonstd::expected_lite::detail::invoke_member_function_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 7
    functionsReached:
    - noexcept
    - std::forward<ObjectT>
    - std::forward< ObjectT >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_function_impl( FnT ClassT::* memfnptr,
      ObjectT && obj, Args && ... args )\n        noexcept( noexcept( ((*std::forward<
      ObjectT >( obj )).*memfnptr)( std::forward< Args >( args ) ... ) ) )\n        ->
      decltype( ((*std::forward< ObjectT >( obj )).*memfnptr)( std::forward< Args
      >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1105,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1105,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1106,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1109
      start: 1104
    functionDepth: 1
    functionLinenumber: 1104
    functionLinenumberEnd: 1109
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 7
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( std::forward< ObjectT >( obj ).*memobjptr
      ) )\n        -> decltype( std::forward< ObjectT >( obj ).*memobjptr )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1117,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1117,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1118,1
    - Dst: get
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1121
      start: 1116
    functionDepth: 1
    functionLinenumber: 1116
    functionLinenumberEnd: 1121
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 7
    functionsReached:
    - get
    - noexcept
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( obj.get().*memobjptr ) )\n        ->
      decltype( obj.get().*memobjptr )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1131,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1131,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1132,1
    - Dst: std::forward< ObjectT >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1134,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ClassT::* memobjptr
    - ' obj'
    argTypes:
    - MemberT
    - ObjectT
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1130
    functionDepth: 1
    functionLinenumber: 1130
    functionLinenumberEnd: 1135
    functionName: nonstd::expected_lite::detail::invoke_member_object_impl
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 7
    functionsReached:
    - noexcept
    - std::forward< ObjectT >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke_member_object_impl( MemberT ClassT::* memobjptr,
      ObjectT && obj )\n        noexcept( noexcept( (*std::forward< ObjectT >( obj
      )).*memobjptr ) )\n        -> decltype( (*std::forward< ObjectT >( obj )).*memobjptr
      )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1143,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1144,1
    - Dst: nonstd::expected_lite::detail::invoke_member_function_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1146,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1147
      start: 1142
    functionDepth: 2
    functionLinenumber: 1142
    functionLinenumberEnd: 1147
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 80
    functionsReached:
    - noexcept
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke_member_function_impl
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( invoke_member_function_impl( std::forward< F >( f ), std::forward<
      Args >( args ) ... ) ) )\n        -> decltype( invoke_member_function_impl(
      std::forward< F >( f ), std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1155,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1156,1
    - Dst: nonstd::expected_lite::detail::invoke_member_object_impl
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1158,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1159
      start: 1154
    functionDepth: 2
    functionLinenumber: 1154
    functionLinenumberEnd: 1159
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 80
    functionsReached:
    - noexcept
    - nonstd::expected_lite::detail::invoke_member_object_impl
    - std::forward< F >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_constexpr auto
    signature: "nsel_constexpr auto invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( invoke_member_object_impl( std::forward< F >( f ), std::forward< Args
      >( args ) ... ) ) )\n        -> decltype( invoke_member_object_impl( std::forward<
      F >( f ), std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1168,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1169,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1169,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1171,1
    - Dst: std::forward< Args >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1171,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1172
      start: 1162
    functionDepth: 1
    functionLinenumber: 1162
    functionLinenumberEnd: 1172
    functionName: nonstd::expected_lite::detail::invoke
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 80
    functionsReached:
    - noexcept
    - std::forward< F >
    - std::forward< Args >
    linkageType: ''
    returnType: nsel_REQUIRES_T
    signature: "nsel_REQUIRES_T invoke( F && f, Args && ... args )\n        noexcept(
      noexcept( std::forward< F >( f )( std::forward< Args >( args ) ... ) ) )\n        ->
      decltype( std::forward< F >( f )( std::forward< Args >( args ) ... ) )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1208
      start: 1208
    functionDepth: 0
    functionLinenumber: 1208
    functionLinenumberEnd: 1208
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type const & )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1209
      start: 1209
    functionDepth: 0
    functionLinenumber: 1209
    functionLinenumberEnd: 1209
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type && )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1217,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1218
      start: 1216
    functionDepth: 0
    functionLinenumber: 1216
    functionLinenumberEnd: 1218
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 8
    functionsReached:
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void unexpected_type( nonstd_lite_in_place_t(E), Args &&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1226,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1227
      start: 1225
    functionDepth: 0
    functionLinenumber: 1225
    functionLinenumberEnd: 1227
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 8
    functionsReached:
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void unexpected_type( nonstd_lite_in_place_t(E), std::initializer_list<U>
      il, Args &&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::forward<E2>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1237,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - E2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1238
      start: 1236
    functionDepth: 0
    functionLinenumber: 1236
    functionLinenumberEnd: 1238
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 8
    functionsReached:
    - std::forward<E2>
    linkageType: ''
    returnType: void
    signature: void unexpected_type( E2 && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1255,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1256
      start: 1254
    functionDepth: 3
    functionLinenumber: 1254
    functionLinenumberEnd: 1256
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 8
    functionsReached:
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type<E2> const & error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1273,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1274
      start: 1272
    functionDepth: 3
    functionLinenumber: 1272
    functionLinenumberEnd: 1274
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 8
    functionsReached:
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type<E2> const & error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1291,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1291,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1292
      start: 1290
    functionDepth: 3
    functionLinenumber: 1290
    functionLinenumberEnd: 1292
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 8
    functionsReached:
    - nonstd::expected_lite::error
    - std::move
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type<E2> && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1309,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1309,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1310
      start: 1308
    functionDepth: 3
    functionLinenumber: 1308
    functionLinenumberEnd: 1310
    functionName: nonstd::expected_lite::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 8
    functionsReached:
    - nonstd::expected_lite::error
    - std::move
    linkageType: ''
    returnType: void
    signature: void unexpected_type( unexpected_type<E2> && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1314
      start: 1314
    functionDepth: 0
    functionLinenumber: 1314
    functionLinenumberEnd: 1314
    functionName: '& operator=( unexpected_type const & )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & operator=( unexpected_type const & )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1315
      start: 1315
    functionDepth: 0
    functionLinenumber: 1315
    functionLinenumberEnd: 1315
    functionName: '& operator=( unexpected_type && )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & operator=( unexpected_type && )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1320,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1320,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1322
      start: 1318
    functionDepth: 0
    functionLinenumber: 1318
    functionLinenumberEnd: 1322
    functionName: '& operator=( unexpected_type<E2> const & other )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - swap
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & operator=( unexpected_type<E2> const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1327,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1327,1
    - Dst: swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1327,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1329
      start: 1325
    functionDepth: 0
    functionLinenumber: 1325
    functionLinenumberEnd: 1329
    functionName: '& operator=( unexpected_type<E2> && other )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - swap
    - std::move
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & operator=( unexpected_type<E2> && other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1336
      start: 1333
    functionDepth: 0
    functionLinenumber: 1333
    functionLinenumberEnd: 1336
    functionName: '& error() & noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & error() & noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1341
      start: 1338
    functionDepth: 0
    functionLinenumber: 1338
    functionLinenumberEnd: 1341
    functionName: '& error() const & noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & error() const & noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1347,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1348
      start: 1345
    functionDepth: 0
    functionLinenumber: 1345
    functionLinenumberEnd: 1348
    functionName: '&& error() && noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() && noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1352,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1353
      start: 1350
    functionDepth: 0
    functionLinenumber: 1350
    functionLinenumberEnd: 1353
    functionName: '&& error() const && noexcept'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: E
    signature: E && error() const && noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1364
      start: 1361
    functionDepth: 0
    functionLinenumber: 1361
    functionLinenumberEnd: 1364
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 22
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & value() & noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1371
      start: 1368
    functionDepth: 0
    functionLinenumber: 1368
    functionLinenumberEnd: 1371
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 22
    functionsReached: []
    linkageType: ''
    returnType: E
    signature: E & value() const & noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1379,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1380
      start: 1377
    functionDepth: 0
    functionLinenumber: 1377
    functionLinenumberEnd: 1380
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 22
    functionsReached:
    - std::move
    linkageType: ''
    returnType: E
    signature: E && value() && noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1386,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1384
    functionDepth: 0
    functionLinenumber: 1384
    functionLinenumberEnd: 1387
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 22
    functionsReached:
    - std::move
    linkageType: ''
    returnType: E
    signature: E && value() const && noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1402,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - unexpected_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1403
      start: 1397
    functionDepth: 0
    functionLinenumber: 1397
    functionLinenumberEnd: 1403
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 15
    functionsReached:
    - nonstd::expected_lite::swap
    linkageType: ''
    returnType: void
    signature: "void swap( unexpected_type & other ) noexcept (\n        std17::is_nothrow_swappable<U>::value\n
      \   )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1433
      start: 1433
    functionDepth: 0
    functionLinenumber: 1433
    functionLinenumberEnd: 1433
    functionName: nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void unexpected_type()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1435
      start: 1435
    functionDepth: 0
    functionLinenumber: 1435
    functionLinenumberEnd: 1435
    functionName: ~unexpected_type()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~unexpected_type()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - std::exception_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1439
      start: 1437
    functionDepth: 0
    functionLinenumber: 1437
    functionLinenumberEnd: 1439
    functionName: nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void unexpected_type( std::exception_ptr const & error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1442,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - std::exception_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1443
      start: 1441
    functionDepth: 0
    functionLinenumber: 1441
    functionLinenumberEnd: 1443
    functionName: nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void unexpected_type(std::exception_ptr && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_exception_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - error
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1448
      start: 1446
    functionDepth: 0
    functionLinenumber: 1446
    functionLinenumberEnd: 1448
    functionName: nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::make_exception_ptr
    linkageType: ''
    returnType: void
    signature: void unexpected_type( E error )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1453
      start: 1450
    functionDepth: 0
    functionLinenumber: 1450
    functionLinenumberEnd: 1453
    functionName: '& value() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::exception_ptr
    signature: std::exception_ptr & value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1458
      start: 1455
    functionDepth: 0
    functionLinenumber: 1455
    functionLinenumberEnd: 1458
    functionName: '& value()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::exception_ptr
    signature: std::exception_ptr & value()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1472,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1472,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E1>
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1473
      start: 1470
    functionDepth: 0
    functionLinenumber: 1470
    functionLinenumberEnd: 1473
    functionName: operator==( unexpected_type<E1> const & x, unexpected_type<E2> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error
    linkageType: ''
    returnType: bool
    signature: bool operator==( unexpected_type<E1> const & x, unexpected_type<E2>
      const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E1>
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1479
      start: 1476
    functionDepth: 0
    functionLinenumber: 1476
    functionLinenumberEnd: 1479
    functionName: operator!=( unexpected_type<E1> const & x, unexpected_type<E2> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( unexpected_type<E1> const & x, unexpected_type<E2>
      const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1486,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1486,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1487
      start: 1484
    functionDepth: 0
    functionLinenumber: 1484
    functionLinenumberEnd: 1487
    functionName: operator<( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error
    linkageType: ''
    returnType: bool
    signature: bool operator<( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1493
      start: 1490
    functionDepth: 0
    functionLinenumber: 1490
    functionLinenumberEnd: 1493
    functionName: operator>( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1499
      start: 1496
    functionDepth: 0
    functionLinenumber: 1496
    functionLinenumberEnd: 1499
    functionName: operator<=( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1505
      start: 1502
    functionDepth: 0
    functionLinenumber: 1502
    functionLinenumberEnd: 1505
    functionName: operator>=( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( unexpected_type<E> const & x, unexpected_type<E> const
      & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1516,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1516,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1518,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1519
      start: 1516
    functionDepth: 1
    functionLinenumber: 1516
    functionLinenumberEnd: 1519
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 16
    functionsReached:
    - noexcept
    - nonstd::expected_lite::swap
    linkageType: ''
    returnType: void
    signature: void swap( unexpected_type<E> & x, unexpected_type<E> & y) noexcept
      ( noexcept ( x.swap(y) ) )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1528
      start: 1525
    functionDepth: 0
    functionLinenumber: 1525
    functionLinenumberEnd: 1528
    functionName: operator<( unexpected_type<std::exception_ptr> const & /*x*/, unexpected_type<std::exception_ptr>
      const & /*y*/ )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<( unexpected_type<std::exception_ptr> const & /*x*/,
      unexpected_type<std::exception_ptr> const & /*y*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1533
      start: 1530
    functionDepth: 0
    functionLinenumber: 1530
    functionLinenumberEnd: 1533
    functionName: operator>( unexpected_type<std::exception_ptr> const & /*x*/, unexpected_type<std::exception_ptr>
      const & /*y*/ )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( unexpected_type<std::exception_ptr> const & /*x*/,
      unexpected_type<std::exception_ptr> const & /*y*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<std::exception_ptr>
    - unexpected_type<std::exception_ptr>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1538
      start: 1535
    functionDepth: 0
    functionLinenumber: 1535
    functionLinenumberEnd: 1538
    functionName: operator<=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
      const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
      const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - unexpected_type<std::exception_ptr>
    - unexpected_type<std::exception_ptr>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1543
      start: 1540
    functionDepth: 0
    functionLinenumber: 1540
    functionLinenumberEnd: 1543
    functionName: operator>=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
      const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
      const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::unexpected_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1567,1
    - Dst: std::forward<E>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1567,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1568
      start: 1564
    functionDepth: 1
    functionLinenumber: 1564
    functionLinenumberEnd: 1568
    functionName: nonstd::expected_lite::make_unexpected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - std::forward<E>
    - nonstd::expected_lite::unexpected_type
    linkageType: ''
    returnType: nsel_constexpr14 auto
    signature: nsel_constexpr14 auto make_unexpected( E && value ) -> unexpected_type<
      typename std::decay<E>::type >
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::unexpected_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1575,1
    - Dst: std::current_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1575,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1576
      start: 1572
    functionDepth: 1
    functionLinenumber: 1572
    functionLinenumberEnd: 1576
    functionName: nonstd::expected_lite::make_unexpected_from_current_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - std::current_exception
    - nonstd::expected_lite::unexpected_type
    linkageType: ''
    returnType: auto
    signature: auto make_unexpected_from_current_exception() -> unexpected_type< std::exception_ptr
      >
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1593
      start: 1591
    functionDepth: 0
    functionLinenumber: 1591
    functionLinenumberEnd: 1593
    functionName: nonstd::expected_lite::bad_expected_access< void >::bad_expected_access
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void bad_expected_access()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - error
    argTypes:
    - error_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1608
      start: 1606
    functionDepth: 0
    functionLinenumber: 1606
    functionLinenumberEnd: 1608
    functionName: nonstd::expected_lite::bad_expected_access::bad_expected_access
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void bad_expected_access( error_type error )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1613
      start: 1610
    functionDepth: 0
    functionLinenumber: 1610
    functionLinenumberEnd: 1613
    functionName: nonstd::expected_lite::bad_expected_access::what
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * what() const noexcept override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1618
      start: 1615
    functionDepth: 0
    functionLinenumber: 1615
    functionLinenumberEnd: 1618
    functionName: '& error() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1623
      start: 1620
    functionDepth: 0
    functionLinenumber: 1620
    functionLinenumberEnd: 1623
    functionName: '& error() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1629,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1630
      start: 1627
    functionDepth: 0
    functionLinenumber: 1627
    functionLinenumberEnd: 1630
    functionName: '&& error() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1634,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1635
      start: 1632
    functionDepth: 0
    functionLinenumber: 1632
    functionLinenumberEnd: 1635
    functionName: '&& error() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1658
    functionDepth: 0
    functionLinenumber: 1658
    functionLinenumberEnd: 1658
    functionName: nonstd::expected_lite::detail::text
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool text( char const * /*text*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1658
    functionDepth: 0
    functionLinenumber: 1658
    functionLinenumberEnd: 1658
    functionName: nonstd::expected_lite::detail::text
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool text( char const * /*text*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RaiseException
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1667,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1669,1
    - Dst: nonstd::expected_lite::detail::text
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1669,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( false && detail::text("throw bad_expected_access<Error>{ e };")
        )
      pos:
        line_end: 1668
        line_start: 1668
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 1671
      start: 1664
    functionDepth: 1
    functionLinenumber: 1664
    functionLinenumberEnd: 1671
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 10
    functionsReached:
    - assert
    - RaiseException
    - nonstd::expected_lite::detail::text
    linkageType: ''
    returnType: void
    signature: void rethrow( Error const & /*e*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RaiseException
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1680,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1682,1
    - Dst: nonstd::expected_lite::detail::text
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1682,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( false && detail::text("throw bad_expected_access<std::exception_ptr>{
        e };") )
      pos:
        line_end: 1681
        line_start: 1681
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 1684
      start: 1677
    functionDepth: 1
    functionLinenumber: 1677
    functionLinenumberEnd: 1684
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 10
    functionsReached:
    - assert
    - RaiseException
    - nonstd::expected_lite::detail::text
    linkageType: ''
    returnType: void
    signature: void rethrow( std::exception_ptr const & /*e*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: RaiseException
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1693,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1695,1
    - Dst: nonstd::expected_lite::detail::text
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1695,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( false && detail::text("throw std::system_error( e );") )
      pos:
        line_end: 1694
        line_start: 1694
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 1697
      start: 1690
    functionDepth: 1
    functionLinenumber: 1690
    functionLinenumberEnd: 1697
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 10
    functionsReached:
    - assert
    - RaiseException
    - nonstd::expected_lite::detail::text
    linkageType: ''
    returnType: void
    signature: void rethrow( std::error_code const & /*e*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - Error
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1708
      start: 1705
    functionDepth: 0
    functionLinenumber: 1705
    functionLinenumberEnd: 1708
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void rethrow( Error const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::rethrow_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1716,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - std::exception_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1717
      start: 1714
    functionDepth: 0
    functionLinenumber: 1714
    functionLinenumberEnd: 1717
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 10
    functionsReached:
    - std::rethrow_exception
    linkageType: ''
    returnType: void
    signature: void rethrow( std::exception_ptr const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::system_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1725,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - std::error_code
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1726
      start: 1723
    functionDepth: 0
    functionLinenumber: 1723
    functionLinenumberEnd: 1726
    functionName: nonstd::expected_lite::rethrow
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 10
    functionsReached:
    - std::system_error
    linkageType: ''
    returnType: void
    signature: void rethrow( std::error_code const & e )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: contained
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1787,1
    - Dst: construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1789,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1790
      start: 1786
    functionDepth: 0
    functionLinenumber: 1786
    functionLinenumberEnd: 1790
    functionName: nonstd::expected_lite::expected::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - contained
    - construct_value
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1792
      start: 1792
    functionDepth: 0
    functionLinenumber: 1792
    functionLinenumberEnd: 1792
    functionName: nonstd::expected_lite::expected::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected( expected const & )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1793
      start: 1793
    functionDepth: 0
    functionLinenumber: 1793
    functionLinenumberEnd: 1793
    functionName: nonstd::expected_lite::expected::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected( expected &&      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1910,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1910,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1911
      start: 1898
    functionDepth: 0
    functionLinenumber: 1898
    functionLinenumberEnd: 1911
    functionName: nonstd::expected_lite::contained
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<U>
    - construct_value
    linkageType: ''
    returnType: ::value
    signature: "::value && !std::is_same<nonstd::unexpected_type<E>, typename std20::remove_cvref<U>::type>::value\n
      \           && !std::is_convertible<U&&,T>::value /*=> explicit */\n        )\n
      \   >\n    nsel_constexpr14 explicit expected( U && value ) noexcept\n    (\n
      \       std::is_nothrow_move_constructible<U>::value &&\n        std::is_nothrow_move_constructible<E>::value\n
      \   )\n    : contained( true )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1929,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1929,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1930
      start: 1917
    functionDepth: 0
    functionLinenumber: 1917
    functionLinenumberEnd: 1930
    functionName: nonstd::expected_lite::contained
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<U>
    - construct_value
    linkageType: ''
    returnType: ::value
    signature: "::value && !std::is_same<nonstd::unexpected_type<E>, typename std20::remove_cvref<U>::type>::value\n
      \           &&  std::is_convertible<U&&,T>::value /*=> non-explicit */\n        )\n
      \   >\n    nsel_constexpr14 /*non-explicit*/ expected( U && value ) noexcept\n
      \   (\n        std::is_nothrow_move_constructible<U>::value &&\n        std::is_nothrow_move_constructible<E>::value\n
      \   )\n    : contained( true )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2003,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2003,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2004
      start: 2000
    functionDepth: 0
    functionLinenumber: 2000
    functionLinenumberEnd: 2004
    functionName: nonstd::expected_lite::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 19
    functionsReached:
    - emplace_value
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void expected( nonstd_lite_in_place_t(T), std::initializer_list<U>
      il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2027,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2027,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2028
      start: 2024
    functionDepth: 0
    functionLinenumber: 2024
    functionLinenumberEnd: 2028
    functionName: nonstd::expected_lite::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 19
    functionsReached:
    - emplace_error
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void expected( unexpect_t, std::initializer_list<U> il, Args&&... args
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2038,1
    - Dst: destruct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2038,1
    - Dst: destruct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2039,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 2036
    functionDepth: 0
    functionLinenumber: 2036
    functionLinenumberEnd: 2040
    functionName: ~expected()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - destruct_error
    - destruct_value
    linkageType: ''
    returnType: void
    signature: void ~expected()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2046,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2048
      start: 2044
    functionDepth: 0
    functionLinenumber: 2044
    functionLinenumberEnd: 2048
    functionName: '& operator=( expected const & other )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    linkageType: ''
    returnType: expected
    signature: expected & operator=( expected const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2057,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2057,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2059
      start: 2050
    functionDepth: 0
    functionLinenumber: 2050
    functionLinenumberEnd: 2059
    functionName: "& operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_constructible<
      \  T>::value\n        && std::is_nothrow_move_assignable<   T>::value\n        &&
      std::is_nothrow_move_constructible<E>::value     // added for missing\n        &&
      std::is_nothrow_move_assignable<   E>::value )"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    - std::move
    linkageType: ''
    returnType: expected
    signature: "expected & operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_constructible<
      \  T>::value\n        && std::is_nothrow_move_assignable<   T>::value\n        &&
      std::is_nothrow_move_constructible<E>::value     // added for missing\n        &&
      std::is_nothrow_move_assignable<   E>::value )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2071,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2071,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2073
      start: 2069
    functionDepth: 0
    functionLinenumber: 2069
    functionLinenumberEnd: 2073
    functionName: '& operator=( U && value )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<U>
    - expected
    linkageType: ''
    returnType: expected
    signature: expected & operator=( U && value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2084,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2084,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - nonstd::unexpected_type<G>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2086
      start: 2082
    functionDepth: 0
    functionLinenumber: 2082
    functionLinenumberEnd: 2086
    functionName: '& operator=( nonstd::unexpected_type<G> const & error )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    - error
    linkageType: ''
    returnType: expected
    signature: expected & operator=( nonstd::unexpected_type<G> const & error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2097,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2097,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2097,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - nonstd::unexpected_type<G>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2099
      start: 2095
    functionDepth: 0
    functionLinenumber: 2095
    functionLinenumberEnd: 2099
    functionName: '& operator=( nonstd::unexpected_type<G> && error )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    - std::move
    - error
    linkageType: ''
    returnType: expected
    signature: expected & operator=( nonstd::unexpected_type<G> && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2108,1
    - Dst: nonstd_lite_in_place
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2108,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2108,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2110
      start: 2106
    functionDepth: 1
    functionLinenumber: 2106
    functionLinenumberEnd: 2110
    functionName: nonstd::expected_lite::emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd_lite_in_place
    - nonstd::expected_lite::value
    - nonstd::expected_lite::expected
    - std::forward<Args>
    linkageType: ''
    returnType: value_type
    signature: value_type & emplace( Args &&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2119,1
    - Dst: nonstd_lite_in_place
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2119,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2119,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2121
      start: 2117
    functionDepth: 1
    functionLinenumber: 2117
    functionLinenumberEnd: 2121
    functionName: nonstd::expected_lite::emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd_lite_in_place
    - nonstd::expected_lite::value
    - nonstd::expected_lite::expected
    - std::forward<Args>
    linkageType: ''
    returnType: value_type
    signature: value_type & emplace( std::initializer_list<U> il, Args &&... args
      )
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2139,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2139,1
    - Dst: contained::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2139,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2140,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2140,1
    - Dst: contained::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2140,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2141,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2141,1
    - Dst: contained::destruct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2142,1
    - Dst: contained::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2143,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2143,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2143,1
    - Dst: destruct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2144,1
    - Dst: construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2145,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2145,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2146,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2147,1
    - Dst: contained::set_has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2148,1
    - Dst: set_has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2149,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2151,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 18
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2152
      start: 2131
    functionDepth: 3
    functionLinenumber: 2131
    functionLinenumberEnd: 2152
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 17
    functionsReached:
    - contained::construct_value
    - std::move
    - nonstd::expected_lite::swap
    - set_has_value
    - nonstd::expected_lite::value
    - contained::value
    - contained::set_has_value
    - construct_error
    - contained::error
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    - destruct_value
    - contained::destruct_error
    linkageType: ''
    returnType: void
    signature: "void swap( expected & other ) noexcept\n    (\n        std::is_nothrow_move_constructible<T>::value
      && std17::is_nothrow_swappable<T&>::value &&\n        std::is_nothrow_move_constructible<E>::value
      && std17::is_nothrow_swappable<E&>::value\n    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2158,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2158,1
    - Dst: value_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2157
        line_start: 2157
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2159
      start: 2156
    functionDepth: 0
    functionLinenumber: 2156
    functionLinenumberEnd: 2159
    functionName: '* operator ->() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - assert
    - value_ptr
    linkageType: ''
    returnType: value_type
    signature: value_type * operator ->() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2163,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2163,1
    - Dst: value_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2162
        line_start: 2162
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2164
      start: 2161
    functionDepth: 0
    functionLinenumber: 2161
    functionLinenumberEnd: 2164
    functionName: '* operator ->()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - assert
    - value_ptr
    linkageType: ''
    returnType: value_type
    signature: value_type * operator ->()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2168,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2168,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2167
        line_start: 2167
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2169
      start: 2166
    functionDepth: 1
    functionLinenumber: 2166
    functionLinenumberEnd: 2169
    functionName: '& operator *() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - assert
    linkageType: ''
    returnType: value_type
    signature: value_type & operator *() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2173,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2173,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2172
        line_start: 2172
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2174
      start: 2171
    functionDepth: 1
    functionLinenumber: 2171
    functionLinenumberEnd: 2174
    functionName: '& operator *() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - assert
    linkageType: ''
    returnType: value_type
    signature: value_type & operator *() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2180,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2180,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2180,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2180,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2179
        line_start: 2179
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2181
      start: 2178
    functionDepth: 1
    functionLinenumber: 2178
    functionLinenumberEnd: 2181
    functionName: '&& operator *() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value
    - has_value
    - assert
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && operator *() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2185,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2185,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2185,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2185,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2184
        line_start: 2184
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2186
      start: 2183
    functionDepth: 1
    functionLinenumber: 2183
    functionLinenumberEnd: 2186
    functionName: '&& operator *() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value
    - has_value
    - assert
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && operator *() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2193
      start: 2190
    functionDepth: 0
    functionLinenumber: 2190
    functionLinenumberEnd: 2193
    functionName: operator bool() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    linkageType: ''
    returnType: void
    signature: void operator bool() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2198
      start: 2195
    functionDepth: 1
    functionLinenumber: 2195
    functionLinenumberEnd: 2198
    functionName: nonstd::expected_lite::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 62
    functionsReached:
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: bool
    signature: bool has_value() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2204,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2205,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2206,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2206,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2207
      start: 2202
    functionDepth: 3
    functionLinenumber: 2202
    functionLinenumberEnd: 2207
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 26
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::value
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2211,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2212,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2213,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2213,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2214
      start: 2209
    functionDepth: 3
    functionLinenumber: 2209
    functionLinenumberEnd: 2214
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 27
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::value
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2221,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2221,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2222,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2223,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2223,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2223,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2224
      start: 2219
    functionDepth: 3
    functionLinenumber: 2219
    functionLinenumberEnd: 2224
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 28
    functionsReached:
    - std::move
    - nonstd::expected_lite::value
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2228,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2228,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2229,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2230,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2230,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2230,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2231
      start: 2226
    functionDepth: 3
    functionLinenumber: 2226
    functionLinenumberEnd: 2231
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 29
    functionsReached:
    - std::move
    - nonstd::expected_lite::value
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2237,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2237,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2236
        line_start: 2236
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2238
      start: 2235
    functionDepth: 2
    functionLinenumber: 2235
    functionLinenumberEnd: 2238
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 70
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2242,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2242,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2241
        line_start: 2241
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2243
      start: 2240
    functionDepth: 2
    functionLinenumber: 2240
    functionLinenumberEnd: 2243
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 71
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2249,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2249,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2249,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2249,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2248
        line_start: 2248
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2250
      start: 2247
    functionDepth: 2
    functionLinenumber: 2247
    functionLinenumberEnd: 2250
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 72
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2254,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2254,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2254,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2254,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2253
        line_start: 2253
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2255
      start: 2252
    functionDepth: 2
    functionLinenumber: 2252
    functionLinenumberEnd: 2255
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 73
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2261,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2262
      start: 2259
    functionDepth: 3
    functionLinenumber: 2259
    functionLinenumberEnd: 2262
    functionName: nonstd::expected_lite::get_unexpected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 7
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::make_unexpected
    linkageType: ''
    returnType: unexpected_type
    signature: unexpected_type get_unexpected() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2267,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2268,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2269
      start: 2265
    functionDepth: 4
    functionLinenumber: 2265
    functionLinenumberEnd: 2269
    functionName: nonstd::expected_lite::has_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool has_exception() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2279,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2280,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2281,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2281,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2282
      start: 2277
    functionDepth: 2
    functionLinenumber: 2277
    functionLinenumberEnd: 2282
    functionName: nonstd::expected_lite::value_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T>
    - std::forward<U>
    - nonstd::expected_lite::value
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: value_type
    signature: value_type value_or( U && v ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2292,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2293,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2293,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2294,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2294,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2295
      start: 2290
    functionDepth: 2
    functionLinenumber: 2290
    functionLinenumberEnd: 2295
    functionName: nonstd::expected_lite::value_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - nonstd::expected_lite::value
    - static_cast<T>
    - nonstd::expected_lite::has_value
    - std::forward<U>
    linkageType: ''
    returnType: value_type
    signature: value_type value_or( U && v ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2306,1
    - Dst: static_cast< E >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2307,1
    - Dst: std::forward< G >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2307,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - G
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2309
      start: 2304
    functionDepth: 3
    functionLinenumber: 2304
    functionLinenumberEnd: 2309
    functionName: nonstd::expected_lite::error_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward< G >
    - nonstd::expected_lite::error
    - static_cast< E >
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr error_or( G && e ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2319,1
    - Dst: static_cast< E >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2320,1
    - Dst: std::forward< G >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2320,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2321,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2321,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - G
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2322
      start: 2317
    functionDepth: 3
    functionLinenumber: 2317
    functionLinenumberEnd: 2322
    functionName: nonstd::expected_lite::error_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::forward< G >
    - static_cast< E >
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 error_or( G && e ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2336,1
    - Dst: detail::invoke_result_nocvref_t< F, value_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2337,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2337,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2337,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2337,1
    - Dst: detail::invoke_result_nocvref_t< F, value_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2338,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2338,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2339
      start: 2334
    functionDepth: 3
    functionLinenumber: 2334
    functionLinenumberEnd: 2339
    functionName: detail::invoke_result_nocvref_t< F, value_type & > and_then( F &&
      f ) &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, value_type & >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, value_type & >
      and_then( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2350,1
    - Dst: detail::invoke_result_nocvref_t< F, const value_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2351,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2351,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2351,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2351,1
    - Dst: detail::invoke_result_nocvref_t< F, const value_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2352,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2352,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2353
      start: 2348
    functionDepth: 3
    functionLinenumber: 2348
    functionLinenumberEnd: 2353
    functionName: detail::invoke_result_nocvref_t< F, const value_type & > and_then(
      F && f ) const &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - detail::invoke_result_nocvref_t< F, const value_type & >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const value_type
      & > and_then( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2365,1
    - Dst: detail::invoke_result_nocvref_t< F, value_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: detail::invoke_result_nocvref_t< F, value_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2367,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2367,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2367,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2368
      start: 2363
    functionDepth: 3
    functionLinenumber: 2363
    functionLinenumberEnd: 2368
    functionName: detail::invoke_result_nocvref_t< F, value_type && > and_then( F
      && f ) &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, value_type && >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, value_type &&
      > and_then( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2379,1
    - Dst: detail::invoke_result_nocvref_t< F, const value_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: detail::invoke_result_nocvref_t< F, const value_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2381,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2381,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2381,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2382
      start: 2377
    functionDepth: 3
    functionLinenumber: 2377
    functionLinenumberEnd: 2382
    functionName: detail::invoke_result_nocvref_t< F, const value_type && > and_then(
      F && f ) const &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, const value_type && >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const value_type
      && > and_then( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2394,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2395,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2395,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2396,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2396,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2396,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2396,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2397
      start: 2392
    functionDepth: 3
    functionLinenumber: 2392
    functionLinenumberEnd: 2397
    functionName: detail::invoke_result_nocvref_t< F, error_type & > or_else( F &&
      f ) &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - detail::invoke_result_nocvref_t< F, error_type & >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, error_type & >
      or_else( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2408,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2409,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2409,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2410,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2410,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2410,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2410,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2411
      start: 2406
    functionDepth: 3
    functionLinenumber: 2406
    functionLinenumberEnd: 2411
    functionName: detail::invoke_result_nocvref_t< F, const error_type & > or_else(
      F && f ) const &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, const error_type & >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const error_type
      & > or_else( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2423,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2424,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2424,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2424,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2426
      start: 2421
    functionDepth: 3
    functionLinenumber: 2421
    functionLinenumberEnd: 2426
    functionName: detail::invoke_result_nocvref_t< F, error_type && > or_else( F &&
      f ) &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - detail::invoke_result_nocvref_t< F, error_type && >
    - has_value
    - value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, error_type &&
      > or_else( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2437,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2438,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2438,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2438,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2440
      start: 2435
    functionDepth: 3
    functionLinenumber: 2435
    functionLinenumberEnd: 2440
    functionName: detail::invoke_result_nocvref_t< F, const error_type && > or_else(
      F && f ) const &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - detail::invoke_result_nocvref_t< F, const error_type && >
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const error_type
      && > or_else( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2452,1
    - Dst: expected< detail::transform_invoke_result_t< F, value_type & >, error_type
        >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2453,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2453,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2453,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2454,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2454,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2455
      start: 2450
    functionDepth: 3
    functionLinenumber: 2450
    functionLinenumberEnd: 2455
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F, value_type & >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F, value_type & >, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< detail::transform_invoke_result_t< F, value_type
      & >, error_type > transform( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2465,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2466,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2466,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2466,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2467,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2467,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2468
      start: 2463
    functionDepth: 3
    functionLinenumber: 2463
    functionLinenumberEnd: 2468
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, error_type > transform( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2479,1
    - Dst: expected< detail::transform_invoke_result_t< F, const value_type & >, error_type
        >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2480,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2480,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2480,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2481,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2481,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2482
      start: 2477
    functionDepth: 3
    functionLinenumber: 2477
    functionLinenumberEnd: 2482
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F, const value_type & >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F, const value_type & >, error_type
      >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< detail::transform_invoke_result_t< F, const
      value_type & >, error_type > transform( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2492,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2493,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2493,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2493,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2494,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2494,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2495
      start: 2490
    functionDepth: 3
    functionLinenumber: 2490
    functionLinenumberEnd: 2495
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, error_type > transform( F && f ) const
      &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2507,1
    - Dst: expected< detail::transform_invoke_result_t< F, value_type && >, error_type
        >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2508,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2508,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2508,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2508,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2509,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2509,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2509,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2510
      start: 2505
    functionDepth: 3
    functionLinenumber: 2505
    functionLinenumberEnd: 2510
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F, value_type && >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - expected< detail::transform_invoke_result_t< F, value_type && >, error_type
      >
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< detail::transform_invoke_result_t< F, value_type
      && >, error_type > transform( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2520,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2521,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2521,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2521,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2522,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2522,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2522,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2523
      start: 2518
    functionDepth: 3
    functionLinenumber: 2518
    functionLinenumberEnd: 2523
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, error_type > transform( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2534,1
    - Dst: expected< detail::transform_invoke_result_t< F, const value_type && >,
        error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2535,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2535,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2535,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2535,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2536,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2536,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2536,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2537
      start: 2532
    functionDepth: 3
    functionLinenumber: 2532
    functionLinenumberEnd: 2537
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F, const value_type && >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F, const value_type && >, error_type
      >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< detail::transform_invoke_result_t< F, const
      value_type && >, error_type > transform( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2547,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2548,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2548,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2548,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2549,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2549,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2549,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2550
      start: 2545
    functionDepth: 3
    functionLinenumber: 2545
    functionLinenumberEnd: 2550
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, error_type > transform( F && f ) const
      &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2561,1
    - Dst: expected< value_type, detail::transform_invoke_result_t< F, error_type
        & > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2562,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2563,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2563,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2563,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2563,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2564
      start: 2559
    functionDepth: 3
    functionLinenumber: 2559
    functionLinenumberEnd: 2564
    functionName: nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
      F, error_type & > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - expected< value_type, detail::transform_invoke_result_t< F, error_type & > >
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< value_type, detail::transform_invoke_result_t<
      F, error_type & > > transform_error( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2574,1
    - Dst: expected< value_type, detail::transform_invoke_result_t< F, const error_type
        & > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2575,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2576,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2576,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2576,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2576,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2577
      start: 2572
    functionDepth: 3
    functionLinenumber: 2572
    functionLinenumberEnd: 2577
    functionName: nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
      F, const error_type & > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< value_type, detail::transform_invoke_result_t< F, const error_type
      & > >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< value_type, detail::transform_invoke_result_t<
      F, const error_type & > > transform_error( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2588,1
    - Dst: expected< value_type, detail::transform_invoke_result_t< F, error_type
        && > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2589,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2589,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2591
      start: 2586
    functionDepth: 3
    functionLinenumber: 2586
    functionLinenumberEnd: 2591
    functionName: nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
      F, error_type && > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< value_type, detail::transform_invoke_result_t< F, error_type && >
      >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< value_type, detail::transform_invoke_result_t<
      F, error_type && > > transform_error( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2601,1
    - Dst: expected< value_type, detail::transform_invoke_result_t< F, const error_type
        && > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2602,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2602,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2604
      start: 2599
    functionDepth: 3
    functionLinenumber: 2599
    functionLinenumberEnd: 2604
    functionName: nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
      F, const error_type && > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - expected< value_type, detail::transform_invoke_result_t< F, const error_type
      && > >
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< value_type, detail::transform_invoke_result_t<
      F, const error_type && > > transform_error( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2666
      start: 2664
    functionDepth: 0
    functionLinenumber: 2664
    functionLinenumberEnd: 2666
    functionName: nonstd::expected_lite::expected<void, E>::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void expected() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2668
      start: 2668
    functionDepth: 0
    functionLinenumber: 2668
    functionLinenumberEnd: 2668
    functionName: nonstd::expected_lite::expected<void, E>::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected( expected const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - '      other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2669
      start: 2669
    functionDepth: 0
    functionLinenumber: 2669
    functionLinenumberEnd: 2669
    functionName: nonstd::expected_lite::expected<void, E>::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected( expected &&      other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2673
      start: 2671
    functionDepth: 0
    functionLinenumber: 2671
    functionLinenumberEnd: 2673
    functionName: nonstd::expected_lite::expected<void, E>::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void expected( nonstd_lite_in_place_t(void) )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2738,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2738,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2739
      start: 2735
    functionDepth: 0
    functionLinenumber: 2735
    functionLinenumberEnd: 2739
    functionName: nonstd::expected_lite::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 21
    functionsReached:
    - emplace_error
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void expected( unexpect_t, std::initializer_list<U> il, Args&&... args
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2745,1
    - Dst: destruct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2747,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2749
      start: 2743
    functionDepth: 0
    functionLinenumber: 2743
    functionLinenumberEnd: 2749
    functionName: ~expected()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - destruct_error
    linkageType: ''
    returnType: void
    signature: void ~expected()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2755,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2757
      start: 2753
    functionDepth: 0
    functionLinenumber: 2753
    functionLinenumberEnd: 2757
    functionName: '& operator=( expected const & other )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    linkageType: ''
    returnType: expected
    signature: expected & operator=( expected const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2764,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2764,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2766
      start: 2759
    functionDepth: 0
    functionLinenumber: 2759
    functionLinenumberEnd: 2766
    functionName: "& operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_assignable<E>::value
      &&\n        std::is_nothrow_move_constructible<E>::value )"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    - std::move
    linkageType: ''
    returnType: expected
    signature: "expected & operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_assignable<E>::value
      &&\n        std::is_nothrow_move_constructible<E>::value )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2770,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2771
      start: 2768
    functionDepth: 1
    functionLinenumber: 2768
    functionLinenumberEnd: 2771
    functionName: nonstd::expected_lite::emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    linkageType: ''
    returnType: void
    signature: void emplace()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2787,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2787,1
    - Dst: contained::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2787,1
    - Dst: construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2788,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2788,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2788,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2789,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2790,1
    - Dst: contained::set_has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2791,1
    - Dst: set_has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2792,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2794,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2795
      start: 2780
    functionDepth: 3
    functionLinenumber: 2780
    functionLinenumberEnd: 2795
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 18
    functionsReached:
    - std::move
    - nonstd::expected_lite::swap
    - set_has_value
    - construct_error
    - contained::error
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    - contained::set_has_value
    linkageType: ''
    returnType: void
    signature: "void swap( expected & other ) noexcept\n    (\n        std::is_nothrow_move_constructible<E>::value
      && std17::is_nothrow_swappable<E&>::value\n    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2801,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2802
      start: 2799
    functionDepth: 0
    functionLinenumber: 2799
    functionLinenumberEnd: 2802
    functionName: operator bool() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    linkageType: ''
    returnType: void
    signature: void operator bool() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2806,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2807
      start: 2804
    functionDepth: 1
    functionLinenumber: 2804
    functionLinenumberEnd: 2807
    functionName: nonstd::expected_lite::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 77
    functionsReached:
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: bool
    signature: bool has_value() const noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2811,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2813,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2813,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2815
      start: 2809
    functionDepth: 3
    functionLinenumber: 2809
    functionLinenumberEnd: 2815
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 31
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: void
    signature: void value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2819,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2819,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2819,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2818
        line_start: 2818
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2820
      start: 2817
    functionDepth: 2
    functionLinenumber: 2817
    functionLinenumberEnd: 2820
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 79
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2824,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2824,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2824,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2823
        line_start: 2823
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2825
      start: 2822
    functionDepth: 2
    functionLinenumber: 2822
    functionLinenumberEnd: 2825
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 80
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2831,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2831,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2831,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2831,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2830
        line_start: 2830
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2832
      start: 2829
    functionDepth: 2
    functionLinenumber: 2829
    functionLinenumberEnd: 2832
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 81
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2836,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2836,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2836,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2836,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2835
        line_start: 2835
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2837
      start: 2834
    functionDepth: 2
    functionLinenumber: 2834
    functionLinenumberEnd: 2837
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 82
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2843,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2843,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2844
      start: 2841
    functionDepth: 3
    functionLinenumber: 2841
    functionLinenumberEnd: 2844
    functionName: nonstd::expected_lite::get_unexpected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 8
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::make_unexpected
    linkageType: ''
    returnType: unexpected_type
    signature: unexpected_type get_unexpected() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2849,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2850,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2851
      start: 2847
    functionDepth: 4
    functionLinenumber: 2847
    functionLinenumberEnd: 2851
    functionName: nonstd::expected_lite::has_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool has_exception() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2862,1
    - Dst: static_cast< E >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2863,1
    - Dst: std::forward< G >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2863,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2864,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - G
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2865
      start: 2860
    functionDepth: 3
    functionLinenumber: 2860
    functionLinenumberEnd: 2865
    functionName: nonstd::expected_lite::error_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward< G >
    - nonstd::expected_lite::error
    - static_cast< E >
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr error_or( G && e ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2875,1
    - Dst: static_cast< E >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2876,1
    - Dst: std::forward< G >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2876,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2877,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2877,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - G
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2878
      start: 2873
    functionDepth: 3
    functionLinenumber: 2873
    functionLinenumberEnd: 2878
    functionName: nonstd::expected_lite::error_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::forward< G >
    - static_cast< E >
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 error_or( G && e ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2892,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2893,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2893,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2893,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2894,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2894,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2895
      start: 2890
    functionDepth: 3
    functionLinenumber: 2890
    functionLinenumberEnd: 2895
    functionName: detail::invoke_result_nocvref_t< F > and_then( F && f ) &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F > and_then( F &&
      f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2906,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2907,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2907,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2907,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2908,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2908,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2909
      start: 2904
    functionDepth: 3
    functionLinenumber: 2904
    functionLinenumberEnd: 2909
    functionName: detail::invoke_result_nocvref_t< F > and_then( F && f ) const &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F > and_then( F &&
      f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2921,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2922,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2922,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2922,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2923,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2923,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2923,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2924
      start: 2919
    functionDepth: 3
    functionLinenumber: 2919
    functionLinenumberEnd: 2924
    functionName: detail::invoke_result_nocvref_t< F > and_then( F && f ) &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F > and_then( F &&
      f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2935,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2936,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2936,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2936,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2937,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2937,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2937,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2938
      start: 2933
    functionDepth: 3
    functionLinenumber: 2933
    functionLinenumberEnd: 2938
    functionName: detail::invoke_result_nocvref_t< F > and_then( F && f ) const &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F > and_then( F &&
      f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2949,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2950,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2951,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2951,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2951,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2951,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2952
      start: 2947
    functionDepth: 3
    functionLinenumber: 2947
    functionLinenumberEnd: 2952
    functionName: detail::invoke_result_nocvref_t< F, error_type & > or_else( F &&
      f ) &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - detail::invoke_result_nocvref_t< F, error_type & >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, error_type & >
      or_else( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2962,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2963,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2964,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2964,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2964,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2964,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2965
      start: 2960
    functionDepth: 3
    functionLinenumber: 2960
    functionLinenumberEnd: 2965
    functionName: detail::invoke_result_nocvref_t< F, const error_type & > or_else(
      F && f ) const &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, const error_type & >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const error_type
      & > or_else( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2976,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2977,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2979
      start: 2974
    functionDepth: 3
    functionLinenumber: 2974
    functionLinenumberEnd: 2979
    functionName: detail::invoke_result_nocvref_t< F, error_type && > or_else( F &&
      f ) &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - detail::invoke_result_nocvref_t< F, error_type && >
    - has_value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, error_type &&
      > or_else( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2989,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2990,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2992
      start: 2987
    functionDepth: 3
    functionLinenumber: 2987
    functionLinenumberEnd: 2992
    functionName: detail::invoke_result_nocvref_t< F, const error_type && > or_else(
      F && f ) const &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - detail::invoke_result_nocvref_t< F, const error_type && >
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const error_type
      && > or_else( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3003,1
    - Dst: expected< detail::transform_invoke_result_t< F >, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3004,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3004,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3004,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3005,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3005,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3006
      start: 3001
    functionDepth: 3
    functionLinenumber: 3001
    functionLinenumberEnd: 3006
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F >, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< detail::transform_invoke_result_t< F >,
      error_type > transform( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3016,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3017,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3017,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3017,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3018,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3018,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3019
      start: 3014
    functionDepth: 3
    functionLinenumber: 3014
    functionLinenumberEnd: 3019
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, error_type > transform( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3029,1
    - Dst: expected< detail::transform_invoke_result_t< F >, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3030,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3030,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3030,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3031,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3031,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3032
      start: 3027
    functionDepth: 3
    functionLinenumber: 3027
    functionLinenumberEnd: 3032
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F >, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< detail::transform_invoke_result_t< F >, error_type
      > transform( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3042,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3043,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3043,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3043,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3044,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3044,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3045
      start: 3040
    functionDepth: 3
    functionLinenumber: 3040
    functionLinenumberEnd: 3045
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, error_type > transform( F && f ) const
      &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3056,1
    - Dst: expected< detail::transform_invoke_result_t< F >, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3057,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3057,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3057,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3058,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3058,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3059
      start: 3054
    functionDepth: 3
    functionLinenumber: 3054
    functionLinenumberEnd: 3059
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F >, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< detail::transform_invoke_result_t< F >,
      error_type > transform( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3069,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3070,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3070,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3070,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3071,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3071,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3072
      start: 3067
    functionDepth: 3
    functionLinenumber: 3067
    functionLinenumberEnd: 3072
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, error_type > transform( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3082,1
    - Dst: expected< detail::transform_invoke_result_t< F >, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3083,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3083,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3083,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3084,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3084,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3085
      start: 3080
    functionDepth: 3
    functionLinenumber: 3080
    functionLinenumberEnd: 3085
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F >, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< detail::transform_invoke_result_t< F >, error_type
      > transform( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3095,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3096,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3096,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3096,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3097,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3097,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3098
      start: 3093
    functionDepth: 3
    functionLinenumber: 3093
    functionLinenumberEnd: 3098
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, error_type > transform( F && f ) const
      &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3108,1
    - Dst: expected< void, detail::transform_invoke_result_t< F, error_type & > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3109,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3110,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3110,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3110,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3111
      start: 3106
    functionDepth: 3
    functionLinenumber: 3106
    functionLinenumberEnd: 3111
    functionName: nonstd::expected_lite::expected< void, detail::transform_invoke_result_t<
      F, error_type & > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - expected< void, detail::transform_invoke_result_t< F, error_type & > >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, detail::transform_invoke_result_t<
      F, error_type & > > transform_error( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3120,1
    - Dst: expected< void, detail::transform_invoke_result_t< F, const error_type
        & > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3121,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3122,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3122,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3122,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3123
      start: 3118
    functionDepth: 3
    functionLinenumber: 3118
    functionLinenumberEnd: 3123
    functionName: nonstd::expected_lite::expected< void, detail::transform_invoke_result_t<
      F, const error_type & > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - expected< void, detail::transform_invoke_result_t< F, const error_type & > >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, detail::transform_invoke_result_t< F,
      const error_type & > > transform_error( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3133,1
    - Dst: expected< void, detail::transform_invoke_result_t< F, error_type && > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3134,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3136
      start: 3131
    functionDepth: 3
    functionLinenumber: 3131
    functionLinenumberEnd: 3136
    functionName: nonstd::expected_lite::expected< void, detail::transform_invoke_result_t<
      F, error_type && > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, detail::transform_invoke_result_t< F, error_type && > >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, detail::transform_invoke_result_t<
      F, error_type && > > transform_error( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3145,1
    - Dst: expected< void, detail::transform_invoke_result_t< F, const error_type
        && > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3146,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3148
      start: 3143
    functionDepth: 3
    functionLinenumber: 3143
    functionLinenumberEnd: 3148
    functionName: nonstd::expected_lite::expected< void, detail::transform_invoke_result_t<
      F, const error_type && > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, detail::transform_invoke_result_t< F, const error_type && >
      >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, detail::transform_invoke_result_t< F,
      const error_type && > > transform_error( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3193,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T1,E1>
    - expected<T2,E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3194
      start: 3191
    functionDepth: 0
    functionLinenumber: 3191
    functionLinenumberEnd: 3194
    functionName: operator==( expected<T1,E1> const & x, expected<T2,E2> const & y
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error
    linkageType: ''
    returnType: bool
    signature: bool operator==( expected<T1,E1> const & x, expected<T2,E2> const &
      y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3203,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3203,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3203,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T1,E1>
    - expected<T2,E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3204
      start: 3201
    functionDepth: 0
    functionLinenumber: 3201
    functionLinenumberEnd: 3204
    functionName: operator==( expected<T1,E1> const & x, expected<T2,E2> const & y
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - static_cast<bool>
    - error
    linkageType: ''
    returnType: bool
    signature: bool operator==( expected<T1,E1> const & x, expected<T2,E2> const &
      y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T1,E1>
    - expected<T2,E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3210
      start: 3207
    functionDepth: 0
    functionLinenumber: 3207
    functionLinenumberEnd: 3210
    functionName: operator!=( expected<T1,E1> const & x, expected<T2,E2> const & y
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( expected<T1,E1> const & x, expected<T2,E2> const &
      y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3218
      start: 3215
    functionDepth: 0
    functionLinenumber: 3215
    functionLinenumberEnd: 3218
    functionName: operator<( expected<T,E> const & x, expected<T,E> const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<( expected<T,E> const & x, expected<T,E> const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3224
      start: 3221
    functionDepth: 0
    functionLinenumber: 3221
    functionLinenumberEnd: 3224
    functionName: operator>( expected<T,E> const & x, expected<T,E> const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( expected<T,E> const & x, expected<T,E> const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3230
      start: 3227
    functionDepth: 0
    functionLinenumber: 3227
    functionLinenumberEnd: 3230
    functionName: operator<=( expected<T,E> const & x, expected<T,E> const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( expected<T,E> const & x, expected<T,E> const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3236
      start: 3233
    functionDepth: 0
    functionLinenumber: 3233
    functionLinenumberEnd: 3236
    functionName: operator>=( expected<T,E> const & x, expected<T,E> const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( expected<T,E> const & x, expected<T,E> const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T1,E1>
    - T2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3250
      start: 3247
    functionDepth: 0
    functionLinenumber: 3247
    functionLinenumberEnd: 3250
    functionName: operator==( expected<T1,E1> const & x, T2 const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==( expected<T1,E1> const & x, T2 const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T2
    - expected<T1,E1>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3260
      start: 3257
    functionDepth: 0
    functionLinenumber: 3257
    functionLinenumberEnd: 3260
    functionName: operator==(T2 const & v, expected<T1,E1> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(T2 const & v, expected<T1,E1> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T1,E1>
    - T2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3266
      start: 3263
    functionDepth: 0
    functionLinenumber: 3263
    functionLinenumberEnd: 3266
    functionName: operator!=( expected<T1,E1> const & x, T2 const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( expected<T1,E1> const & x, T2 const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T2
    - expected<T1,E1>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3272
      start: 3269
    functionDepth: 0
    functionLinenumber: 3269
    functionLinenumberEnd: 3272
    functionName: operator!=( T2 const & v, expected<T1,E1> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( T2 const & v, expected<T1,E1> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T,E>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3280
      start: 3277
    functionDepth: 0
    functionLinenumber: 3277
    functionLinenumberEnd: 3280
    functionName: operator<( expected<T,E> const & x, T const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<( expected<T,E> const & x, T const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3286
      start: 3283
    functionDepth: 0
    functionLinenumber: 3283
    functionLinenumberEnd: 3286
    functionName: operator<( T const & v, expected<T,E> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<( T const & v, expected<T,E> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3292
      start: 3289
    functionDepth: 0
    functionLinenumber: 3289
    functionLinenumberEnd: 3292
    functionName: operator>( T const & v, expected<T,E> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( T const & v, expected<T,E> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T,E>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3298
      start: 3295
    functionDepth: 0
    functionLinenumber: 3295
    functionLinenumberEnd: 3298
    functionName: operator>( expected<T,E> const & x, T const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( expected<T,E> const & x, T const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3304
      start: 3301
    functionDepth: 0
    functionLinenumber: 3301
    functionLinenumberEnd: 3304
    functionName: operator<=( T const & v, expected<T,E> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( T const & v, expected<T,E> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T,E>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3310
      start: 3307
    functionDepth: 0
    functionLinenumber: 3307
    functionLinenumberEnd: 3310
    functionName: operator<=( expected<T,E> const & x, T const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( expected<T,E> const & x, T const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T,E>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3316
      start: 3313
    functionDepth: 0
    functionLinenumber: 3313
    functionLinenumberEnd: 3316
    functionName: operator>=( expected<T,E> const & x, T const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( expected<T,E> const & x, T const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3322
      start: 3319
    functionDepth: 0
    functionLinenumber: 3319
    functionLinenumberEnd: 3322
    functionName: operator>=( T const & v, expected<T,E> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( T const & v, expected<T,E> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T1,E1>
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3332
      start: 3329
    functionDepth: 0
    functionLinenumber: 3329
    functionLinenumberEnd: 3332
    functionName: operator==( expected<T1,E1> const & x, unexpected_type<E2> const
      & u )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool operator==( expected<T1,E1> const & x, unexpected_type<E2> const
      & u )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E2>
    - expected<T1,E1>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3338
      start: 3335
    functionDepth: 0
    functionLinenumber: 3335
    functionLinenumberEnd: 3338
    functionName: operator==( unexpected_type<E2> const & u, expected<T1,E1> const
      & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==( unexpected_type<E2> const & u, expected<T1,E1> const
      & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T1,E1>
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3344
      start: 3341
    functionDepth: 0
    functionLinenumber: 3341
    functionLinenumberEnd: 3344
    functionName: operator!=( expected<T1,E1> const & x, unexpected_type<E2> const
      & u )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( expected<T1,E1> const & x, unexpected_type<E2> const
      & u )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E2>
    - expected<T1,E1>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3350
      start: 3347
    functionDepth: 0
    functionLinenumber: 3347
    functionLinenumberEnd: 3350
    functionName: operator!=( unexpected_type<E2> const & u, expected<T1,E1> const
      & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( unexpected_type<E2> const & u, expected<T1,E1> const
      & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T,E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3358
      start: 3355
    functionDepth: 0
    functionLinenumber: 3355
    functionLinenumberEnd: 3358
    functionName: operator<( expected<T,E> const & x, unexpected_type<E> const & u
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool operator<( expected<T,E> const & x, unexpected_type<E> const &
      u )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3363,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3364
      start: 3361
    functionDepth: 0
    functionLinenumber: 3361
    functionLinenumberEnd: 3364
    functionName: operator<( unexpected_type<E> const & u, expected<T,E> const & x
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool operator<( unexpected_type<E> const & u, expected<T,E> const &
      x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T,E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3370
      start: 3367
    functionDepth: 0
    functionLinenumber: 3367
    functionLinenumberEnd: 3370
    functionName: operator>( expected<T,E> const & x, unexpected_type<E> const & u
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( expected<T,E> const & x, unexpected_type<E> const &
      u )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3376
      start: 3373
    functionDepth: 0
    functionLinenumber: 3373
    functionLinenumberEnd: 3376
    functionName: operator>( unexpected_type<E> const & u, expected<T,E> const & x
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( unexpected_type<E> const & u, expected<T,E> const &
      x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T,E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3382
      start: 3379
    functionDepth: 0
    functionLinenumber: 3379
    functionLinenumberEnd: 3382
    functionName: operator<=( expected<T,E> const & x, unexpected_type<E> const &
      u )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( expected<T,E> const & x, unexpected_type<E> const
      & u )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3388
      start: 3385
    functionDepth: 0
    functionLinenumber: 3385
    functionLinenumberEnd: 3388
    functionName: operator<=( unexpected_type<E> const & u, expected<T,E> const &
      x)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( unexpected_type<E> const & u, expected<T,E> const
      & x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T,E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3394
      start: 3391
    functionDepth: 0
    functionLinenumber: 3391
    functionLinenumberEnd: 3394
    functionName: operator>=( expected<T,E> const & x, unexpected_type<E> const &
      u  )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( expected<T,E> const & x, unexpected_type<E> const
      & u  )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3400
      start: 3397
    functionDepth: 0
    functionLinenumber: 3397
    functionLinenumberEnd: 3400
    functionName: operator>=( unexpected_type<E> const & u, expected<T,E> const &
      x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( unexpected_type<E> const & u, expected<T,E> const
      & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3413,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3413,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3416
      start: 3413
    functionDepth: 1
    functionLinenumber: 3413
    functionLinenumberEnd: 3416
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 19
    functionsReached:
    - noexcept
    - nonstd::expected_lite::swap
    linkageType: ''
    returnType: void
    signature: void swap( expected<T,E> & x, expected<T,E> & y ) noexcept ( noexcept
      ( x.swap(y) ) )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3423,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3423,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3424
      start: 3421
    functionDepth: 1
    functionLinenumber: 3421
    functionLinenumberEnd: 3424
    functionName: nonstd::expected_lite::make_expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 4
    functionsReached:
    - std::forward<T>
    - nonstd::expected_lite::expected
    linkageType: ''
    returnType: auto
    signature: auto make_expected( T && v ) -> expected< typename std::decay<T>::type
      >
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3431
      start: 3428
    functionDepth: 1
    functionLinenumber: 3428
    functionLinenumberEnd: 3431
    functionName: nonstd::expected_lite::make_expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 4
    functionsReached:
    - nonstd::expected_lite::expected
    linkageType: ''
    returnType: auto
    signature: auto make_expected() -> expected<void>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3436,1
    - Dst: nonstd::expected_lite::make_unexpected_from_current_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3436,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3437
      start: 3434
    functionDepth: 2
    functionLinenumber: 3434
    functionLinenumberEnd: 3437
    functionName: nonstd::expected_lite::make_expected_from_current_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    - nonstd::expected_lite::make_unexpected_from_current_exception
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_current_exception() -> expected<T>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3442,1
    - Dst: nonstd::expected_lite::unexpected_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3442,1
    - Dst: std::forward<std::exception_ptr>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::exception_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3443
      start: 3440
    functionDepth: 1
    functionLinenumber: 3440
    functionLinenumberEnd: 3443
    functionName: nonstd::expected_lite::make_expected_from_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    - std::forward<std::exception_ptr>
    - nonstd::expected_lite::unexpected_type
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_exception( std::exception_ptr v ) -> expected<T>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3448,1
    - Dst: nonstd::expected_lite::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - e
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3449
      start: 3446
    functionDepth: 2
    functionLinenumber: 3446
    functionLinenumberEnd: 3449
    functionName: nonstd::expected_lite::make_expected_from_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    - nonstd::expected_lite::make_unexpected
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_error( E e ) -> expected<T, typename std::decay<E>::type>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::make_expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3459,1
    - Dst: f
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3459,1
    - Dst: nonstd::expected_lite::make_unexpected_from_current_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3463,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - f
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3465
      start: 3455
    functionDepth: 2
    functionLinenumber: 3455
    functionLinenumberEnd: 3465
    functionName: nonstd::expected_lite::make_expected_from_call
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - f
    - nonstd::expected_lite::make_expected
    - nonstd::expected_lite::make_unexpected_from_current_exception
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_call( F f ) -> expected< typename std::result_of<F()>::type
      >
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3475,1
    - Dst: nonstd::expected_lite::make_expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3476,1
    - Dst: nonstd::expected_lite::make_unexpected_from_current_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3480,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - f
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3482
      start: 3471
    functionDepth: 2
    functionLinenumber: 3471
    functionLinenumberEnd: 3482
    functionName: nonstd::expected_lite::make_expected_from_call
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - f
    - nonstd::expected_lite::make_expected
    - nonstd::expected_lite::make_unexpected_from_current_exception
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_call( F f ) -> expected<void>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: contained
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1787,1
    - Dst: construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1789,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1790
      start: 1786
    functionDepth: 0
    functionLinenumber: 1786
    functionLinenumberEnd: 1790
    functionName: nonstd::expected_lite::expected::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - contained
    - construct_value
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1792
      start: 1792
    functionDepth: 0
    functionLinenumber: 1792
    functionLinenumberEnd: 1792
    functionName: nonstd::expected_lite::expected::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected( expected const & )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1793
      start: 1793
    functionDepth: 0
    functionLinenumber: 1793
    functionLinenumberEnd: 1793
    functionName: nonstd::expected_lite::expected::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected( expected &&      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1910,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1910,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1911
      start: 1898
    functionDepth: 0
    functionLinenumber: 1898
    functionLinenumberEnd: 1911
    functionName: nonstd::expected_lite::contained
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<U>
    - construct_value
    linkageType: ''
    returnType: ::value
    signature: "::value && !std::is_same<nonstd::unexpected_type<E>, typename std20::remove_cvref<U>::type>::value\n
      \           && !std::is_convertible<U&&,T>::value /*=> explicit */\n        )\n
      \   >\n    nsel_constexpr14 explicit expected( U && value ) noexcept\n    (\n
      \       std::is_nothrow_move_constructible<U>::value &&\n        std::is_nothrow_move_constructible<E>::value\n
      \   )\n    : contained( true )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1929,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:1929,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1930
      start: 1917
    functionDepth: 0
    functionLinenumber: 1917
    functionLinenumberEnd: 1930
    functionName: nonstd::expected_lite::contained
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<U>
    - construct_value
    linkageType: ''
    returnType: ::value
    signature: "::value && !std::is_same<nonstd::unexpected_type<E>, typename std20::remove_cvref<U>::type>::value\n
      \           &&  std::is_convertible<U&&,T>::value /*=> non-explicit */\n        )\n
      \   >\n    nsel_constexpr14 /*non-explicit*/ expected( U && value ) noexcept\n
      \   (\n        std::is_nothrow_move_constructible<U>::value &&\n        std::is_nothrow_move_constructible<E>::value\n
      \   )\n    : contained( true )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2003,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2003,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2004
      start: 2000
    functionDepth: 0
    functionLinenumber: 2000
    functionLinenumberEnd: 2004
    functionName: nonstd::expected_lite::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 27
    functionsReached:
    - emplace_value
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void expected( nonstd_lite_in_place_t(T), std::initializer_list<U>
      il, Args&&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2027,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2027,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2028
      start: 2024
    functionDepth: 0
    functionLinenumber: 2024
    functionLinenumberEnd: 2028
    functionName: nonstd::expected_lite::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 27
    functionsReached:
    - emplace_error
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void expected( unexpect_t, std::initializer_list<U> il, Args&&... args
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2038,1
    - Dst: destruct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2038,1
    - Dst: destruct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2039,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2040
      start: 2036
    functionDepth: 0
    functionLinenumber: 2036
    functionLinenumberEnd: 2040
    functionName: ~expected()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - destruct_error
    - destruct_value
    linkageType: ''
    returnType: void
    signature: void ~expected()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2046,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2048
      start: 2044
    functionDepth: 0
    functionLinenumber: 2044
    functionLinenumberEnd: 2048
    functionName: '& operator=( expected const & other )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    linkageType: ''
    returnType: expected
    signature: expected & operator=( expected const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2057,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2057,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2059
      start: 2050
    functionDepth: 0
    functionLinenumber: 2050
    functionLinenumberEnd: 2059
    functionName: "& operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_constructible<
      \  T>::value\n        && std::is_nothrow_move_assignable<   T>::value\n        &&
      std::is_nothrow_move_constructible<E>::value     // added for missing\n        &&
      std::is_nothrow_move_assignable<   E>::value )"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    - std::move
    linkageType: ''
    returnType: expected
    signature: "expected & operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_constructible<
      \  T>::value\n        && std::is_nothrow_move_assignable<   T>::value\n        &&
      std::is_nothrow_move_constructible<E>::value     // added for missing\n        &&
      std::is_nothrow_move_assignable<   E>::value )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2071,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2071,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' value'
    argTypes:
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2073
      start: 2069
    functionDepth: 0
    functionLinenumber: 2069
    functionLinenumberEnd: 2073
    functionName: '& operator=( U && value )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward<U>
    - expected
    linkageType: ''
    returnType: expected
    signature: expected & operator=( U && value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2084,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2084,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - nonstd::unexpected_type<G>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2086
      start: 2082
    functionDepth: 0
    functionLinenumber: 2082
    functionLinenumberEnd: 2086
    functionName: '& operator=( nonstd::unexpected_type<G> const & error )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    - error
    linkageType: ''
    returnType: expected
    signature: expected & operator=( nonstd::unexpected_type<G> const & error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2097,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2097,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2097,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - ' error'
    argTypes:
    - nonstd::unexpected_type<G>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2099
      start: 2095
    functionDepth: 0
    functionLinenumber: 2095
    functionLinenumberEnd: 2099
    functionName: '& operator=( nonstd::unexpected_type<G> && error )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    - std::move
    - error
    linkageType: ''
    returnType: expected
    signature: expected & operator=( nonstd::unexpected_type<G> && error )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2108,1
    - Dst: nonstd_lite_in_place
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2108,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2108,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2109,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2110
      start: 2106
    functionDepth: 1
    functionLinenumber: 2106
    functionLinenumberEnd: 2110
    functionName: nonstd::expected_lite::emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd_lite_in_place
    - nonstd::expected_lite::value
    - nonstd::expected_lite::expected
    - std::forward<Args>
    linkageType: ''
    returnType: value_type
    signature: value_type & emplace( Args &&... args )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2119,1
    - Dst: nonstd_lite_in_place
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2119,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2119,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2120,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2121
      start: 2117
    functionDepth: 1
    functionLinenumber: 2117
    functionLinenumberEnd: 2121
    functionName: nonstd::expected_lite::emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd_lite_in_place
    - nonstd::expected_lite::value
    - nonstd::expected_lite::expected
    - std::forward<Args>
    linkageType: ''
    returnType: value_type
    signature: value_type & emplace( std::initializer_list<U> il, Args &&... args
      )
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2139,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2139,1
    - Dst: contained::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2139,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2140,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2140,1
    - Dst: contained::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2140,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2141,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2141,1
    - Dst: contained::destruct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2142,1
    - Dst: contained::construct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2143,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2143,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2143,1
    - Dst: destruct_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2144,1
    - Dst: construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2145,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2145,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2146,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2147,1
    - Dst: contained::set_has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2148,1
    - Dst: set_has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2149,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2151,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 18
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2152
      start: 2131
    functionDepth: 3
    functionLinenumber: 2131
    functionLinenumberEnd: 2152
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 20
    functionsReached:
    - contained::construct_value
    - std::move
    - nonstd::expected_lite::swap
    - set_has_value
    - nonstd::expected_lite::value
    - contained::value
    - contained::set_has_value
    - construct_error
    - contained::error
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    - destruct_value
    - contained::destruct_error
    linkageType: ''
    returnType: void
    signature: "void swap( expected & other ) noexcept\n    (\n        std::is_nothrow_move_constructible<T>::value
      && std17::is_nothrow_swappable<T&>::value &&\n        std::is_nothrow_move_constructible<E>::value
      && std17::is_nothrow_swappable<E&>::value\n    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2158,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2158,1
    - Dst: value_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2157
        line_start: 2157
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2159
      start: 2156
    functionDepth: 0
    functionLinenumber: 2156
    functionLinenumberEnd: 2159
    functionName: '* operator ->() const'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - assert
    - value_ptr
    linkageType: ''
    returnType: value_type
    signature: value_type * operator ->() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2163,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2163,1
    - Dst: value_ptr
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2163,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2162
        line_start: 2162
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2164
      start: 2161
    functionDepth: 0
    functionLinenumber: 2161
    functionLinenumberEnd: 2164
    functionName: '* operator ->()'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - assert
    - value_ptr
    linkageType: ''
    returnType: value_type
    signature: value_type * operator ->()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2168,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2168,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2168,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2167
        line_start: 2167
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2169
      start: 2166
    functionDepth: 1
    functionLinenumber: 2166
    functionLinenumberEnd: 2169
    functionName: '& operator *() const &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - assert
    linkageType: ''
    returnType: value_type
    signature: value_type & operator *() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2173,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2173,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2172
        line_start: 2172
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2174
      start: 2171
    functionDepth: 1
    functionLinenumber: 2171
    functionLinenumberEnd: 2174
    functionName: '& operator *() &'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - assert
    linkageType: ''
    returnType: value_type
    signature: value_type & operator *() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2180,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2180,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2180,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2180,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2179
        line_start: 2179
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2181
      start: 2178
    functionDepth: 1
    functionLinenumber: 2178
    functionLinenumberEnd: 2181
    functionName: '&& operator *() const &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value
    - has_value
    - assert
    - std::move
    linkageType: ''
    returnType: value_type
    signature: value_type && operator *() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2185,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2185,1
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2185,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2185,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( has_value() )
      pos:
        line_end: 2184
        line_start: 2184
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2186
      start: 2183
    functionDepth: 1
    functionLinenumber: 2183
    functionLinenumberEnd: 2186
    functionName: '&& operator *() &&'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - value
    - has_value
    - assert
    - std::move
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && operator *() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2193
      start: 2190
    functionDepth: 0
    functionLinenumber: 2190
    functionLinenumberEnd: 2193
    functionName: operator bool() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    linkageType: ''
    returnType: void
    signature: void operator bool() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2198
      start: 2195
    functionDepth: 1
    functionLinenumber: 2195
    functionLinenumberEnd: 2198
    functionName: nonstd::expected_lite::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 87
    functionsReached:
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: bool
    signature: bool has_value() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2204,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2205,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2206,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2206,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2207
      start: 2202
    functionDepth: 3
    functionLinenumber: 2202
    functionLinenumberEnd: 2207
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 35
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::value
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: value_type
    signature: value_type & value() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2211,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2212,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2213,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2213,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2213,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2214
      start: 2209
    functionDepth: 3
    functionLinenumber: 2209
    functionLinenumberEnd: 2214
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 36
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::value
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: value_type
    signature: value_type & value() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2221,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2221,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2222,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2223,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2223,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2223,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2224
      start: 2219
    functionDepth: 3
    functionLinenumber: 2219
    functionLinenumberEnd: 2224
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 37
    functionsReached:
    - std::move
    - nonstd::expected_lite::value
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: value_type
    signature: value_type && value() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2228,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2228,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2229,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2230,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2230,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2230,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2231
      start: 2226
    functionDepth: 3
    functionLinenumber: 2226
    functionLinenumberEnd: 2231
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 38
    functionsReached:
    - std::move
    - nonstd::expected_lite::value
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 && value() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2237,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2237,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2237,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2236
        line_start: 2236
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2238
      start: 2235
    functionDepth: 2
    functionLinenumber: 2235
    functionLinenumberEnd: 2238
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 91
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2242,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2242,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2241
        line_start: 2241
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2243
      start: 2240
    functionDepth: 2
    functionLinenumber: 2240
    functionLinenumberEnd: 2243
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 92
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2249,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2249,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2249,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2249,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2248
        line_start: 2248
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2250
      start: 2247
    functionDepth: 2
    functionLinenumber: 2247
    functionLinenumberEnd: 2250
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 93
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2254,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2254,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2254,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2254,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2253
        line_start: 2253
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2255
      start: 2252
    functionDepth: 2
    functionLinenumber: 2252
    functionLinenumberEnd: 2255
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 94
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2261,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2261,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2262
      start: 2259
    functionDepth: 3
    functionLinenumber: 2259
    functionLinenumberEnd: 2262
    functionName: nonstd::expected_lite::get_unexpected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 9
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::make_unexpected
    linkageType: ''
    returnType: unexpected_type
    signature: unexpected_type get_unexpected() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2267,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2268,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2269
      start: 2265
    functionDepth: 4
    functionLinenumber: 2265
    functionLinenumberEnd: 2269
    functionName: nonstd::expected_lite::has_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool has_exception() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2279,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2280,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2281,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2281,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2282
      start: 2277
    functionDepth: 2
    functionLinenumber: 2277
    functionLinenumberEnd: 2282
    functionName: nonstd::expected_lite::value_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T>
    - std::forward<U>
    - nonstd::expected_lite::value
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: value_type
    signature: value_type value_or( U && v ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2292,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2293,1
    - Dst: nonstd::expected_lite::value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2293,1
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2294,1
    - Dst: std::forward<U>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2294,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - U
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2295
      start: 2290
    functionDepth: 2
    functionLinenumber: 2290
    functionLinenumberEnd: 2295
    functionName: nonstd::expected_lite::value_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - nonstd::expected_lite::value
    - static_cast<T>
    - nonstd::expected_lite::has_value
    - std::forward<U>
    linkageType: ''
    returnType: value_type
    signature: value_type value_or( U && v ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2306,1
    - Dst: static_cast< E >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2307,1
    - Dst: std::forward< G >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2307,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2308,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - G
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2309
      start: 2304
    functionDepth: 3
    functionLinenumber: 2304
    functionLinenumberEnd: 2309
    functionName: nonstd::expected_lite::error_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward< G >
    - nonstd::expected_lite::error
    - static_cast< E >
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr error_or( G && e ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2319,1
    - Dst: static_cast< E >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2320,1
    - Dst: std::forward< G >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2320,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2321,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2321,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - G
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2322
      start: 2317
    functionDepth: 3
    functionLinenumber: 2317
    functionLinenumberEnd: 2322
    functionName: nonstd::expected_lite::error_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::forward< G >
    - static_cast< E >
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 error_or( G && e ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2336,1
    - Dst: detail::invoke_result_nocvref_t< F, value_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2337,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2337,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2337,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2337,1
    - Dst: detail::invoke_result_nocvref_t< F, value_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2338,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2338,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2339
      start: 2334
    functionDepth: 3
    functionLinenumber: 2334
    functionLinenumberEnd: 2339
    functionName: detail::invoke_result_nocvref_t< F, value_type & > and_then( F &&
      f ) &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, value_type & >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, value_type & >
      and_then( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2350,1
    - Dst: detail::invoke_result_nocvref_t< F, const value_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2351,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2351,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2351,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2351,1
    - Dst: detail::invoke_result_nocvref_t< F, const value_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2352,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2352,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2353
      start: 2348
    functionDepth: 3
    functionLinenumber: 2348
    functionLinenumberEnd: 2353
    functionName: detail::invoke_result_nocvref_t< F, const value_type & > and_then(
      F && f ) const &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - detail::invoke_result_nocvref_t< F, const value_type & >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const value_type
      & > and_then( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2365,1
    - Dst: detail::invoke_result_nocvref_t< F, value_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2366,1
    - Dst: detail::invoke_result_nocvref_t< F, value_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2367,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2367,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2367,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2368
      start: 2363
    functionDepth: 3
    functionLinenumber: 2363
    functionLinenumberEnd: 2368
    functionName: detail::invoke_result_nocvref_t< F, value_type && > and_then( F
      && f ) &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, value_type && >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, value_type &&
      > and_then( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2379,1
    - Dst: detail::invoke_result_nocvref_t< F, const value_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2380,1
    - Dst: detail::invoke_result_nocvref_t< F, const value_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2381,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2381,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2381,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2382
      start: 2377
    functionDepth: 3
    functionLinenumber: 2377
    functionLinenumberEnd: 2382
    functionName: detail::invoke_result_nocvref_t< F, const value_type && > and_then(
      F && f ) const &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, const value_type && >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const value_type
      && > and_then( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2394,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2395,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2395,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2396,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2396,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2396,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2396,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2397
      start: 2392
    functionDepth: 3
    functionLinenumber: 2392
    functionLinenumberEnd: 2397
    functionName: detail::invoke_result_nocvref_t< F, error_type & > or_else( F &&
      f ) &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - detail::invoke_result_nocvref_t< F, error_type & >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, error_type & >
      or_else( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2408,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2409,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2409,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2410,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2410,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2410,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2410,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2411
      start: 2406
    functionDepth: 3
    functionLinenumber: 2406
    functionLinenumberEnd: 2411
    functionName: detail::invoke_result_nocvref_t< F, const error_type & > or_else(
      F && f ) const &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, const error_type & >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const error_type
      & > or_else( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2423,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2424,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2424,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2424,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2425,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2426
      start: 2421
    functionDepth: 3
    functionLinenumber: 2421
    functionLinenumberEnd: 2426
    functionName: detail::invoke_result_nocvref_t< F, error_type && > or_else( F &&
      f ) &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - detail::invoke_result_nocvref_t< F, error_type && >
    - has_value
    - value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, error_type &&
      > or_else( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2437,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2438,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2438,1
    - Dst: value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2438,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2439,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2440
      start: 2435
    functionDepth: 3
    functionLinenumber: 2435
    functionLinenumberEnd: 2440
    functionName: detail::invoke_result_nocvref_t< F, const error_type && > or_else(
      F && f ) const &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - detail::invoke_result_nocvref_t< F, const error_type && >
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const error_type
      && > or_else( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2452,1
    - Dst: expected< detail::transform_invoke_result_t< F, value_type & >, error_type
        >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2453,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2453,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2453,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2454,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2454,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2455
      start: 2450
    functionDepth: 3
    functionLinenumber: 2450
    functionLinenumberEnd: 2455
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F, value_type & >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F, value_type & >, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< detail::transform_invoke_result_t< F, value_type
      & >, error_type > transform( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2465,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2466,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2466,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2466,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2467,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2467,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2468
      start: 2463
    functionDepth: 3
    functionLinenumber: 2463
    functionLinenumberEnd: 2468
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, error_type > transform( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2479,1
    - Dst: expected< detail::transform_invoke_result_t< F, const value_type & >, error_type
        >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2480,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2480,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2480,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2481,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2481,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2482
      start: 2477
    functionDepth: 3
    functionLinenumber: 2477
    functionLinenumberEnd: 2482
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F, const value_type & >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F, const value_type & >, error_type
      >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< detail::transform_invoke_result_t< F, const
      value_type & >, error_type > transform( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2492,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2493,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2493,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2493,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2494,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2494,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2495
      start: 2490
    functionDepth: 3
    functionLinenumber: 2490
    functionLinenumberEnd: 2495
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, error_type > transform( F && f ) const
      &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2507,1
    - Dst: expected< detail::transform_invoke_result_t< F, value_type && >, error_type
        >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2508,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2508,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2508,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2508,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2509,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2509,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2509,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2510
      start: 2505
    functionDepth: 3
    functionLinenumber: 2505
    functionLinenumberEnd: 2510
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F, value_type && >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - expected< detail::transform_invoke_result_t< F, value_type && >, error_type
      >
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< detail::transform_invoke_result_t< F, value_type
      && >, error_type > transform( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2520,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2521,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2521,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2521,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2522,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2522,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2522,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2523
      start: 2518
    functionDepth: 3
    functionLinenumber: 2518
    functionLinenumberEnd: 2523
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, error_type > transform( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2534,1
    - Dst: expected< detail::transform_invoke_result_t< F, const value_type && >,
        error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2535,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2535,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2535,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2535,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2536,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2536,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2536,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2537
      start: 2532
    functionDepth: 3
    functionLinenumber: 2532
    functionLinenumberEnd: 2537
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F, const value_type && >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F, const value_type && >, error_type
      >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< detail::transform_invoke_result_t< F, const
      value_type && >, error_type > transform( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2547,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2548,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2548,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2548,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2549,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2549,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2549,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2550
      start: 2545
    functionDepth: 3
    functionLinenumber: 2545
    functionLinenumberEnd: 2550
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, error_type > transform( F && f ) const
      &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2561,1
    - Dst: expected< value_type, detail::transform_invoke_result_t< F, error_type
        & > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2562,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2563,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2563,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2563,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2563,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2564
      start: 2559
    functionDepth: 3
    functionLinenumber: 2559
    functionLinenumberEnd: 2564
    functionName: nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
      F, error_type & > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - expected< value_type, detail::transform_invoke_result_t< F, error_type & > >
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< value_type, detail::transform_invoke_result_t<
      F, error_type & > > transform_error( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2574,1
    - Dst: expected< value_type, detail::transform_invoke_result_t< F, const error_type
        & > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2575,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2576,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2576,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2576,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2576,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2577
      start: 2572
    functionDepth: 3
    functionLinenumber: 2572
    functionLinenumberEnd: 2577
    functionName: nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
      F, const error_type & > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< value_type, detail::transform_invoke_result_t< F, const error_type
      & > >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< value_type, detail::transform_invoke_result_t<
      F, const error_type & > > transform_error( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2588,1
    - Dst: expected< value_type, detail::transform_invoke_result_t< F, error_type
        && > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2589,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2589,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2590,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2591
      start: 2586
    functionDepth: 3
    functionLinenumber: 2586
    functionLinenumberEnd: 2591
    functionName: nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
      F, error_type && > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< value_type, detail::transform_invoke_result_t< F, error_type && >
      >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< value_type, detail::transform_invoke_result_t<
      F, error_type && > > transform_error( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2601,1
    - Dst: expected< value_type, detail::transform_invoke_result_t< F, const error_type
        && > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2602,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2602,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2603,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2604
      start: 2599
    functionDepth: 3
    functionLinenumber: 2599
    functionLinenumberEnd: 2604
    functionName: nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
      F, const error_type && > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - expected< value_type, detail::transform_invoke_result_t< F, const error_type
      && > >
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< value_type, detail::transform_invoke_result_t<
      F, const error_type && > > transform_error( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2666
      start: 2664
    functionDepth: 0
    functionLinenumber: 2664
    functionLinenumberEnd: 2666
    functionName: nonstd::expected_lite::expected<void, E>::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void expected() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2668
      start: 2668
    functionDepth: 0
    functionLinenumber: 2668
    functionLinenumberEnd: 2668
    functionName: nonstd::expected_lite::expected<void, E>::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected( expected const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - '      other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2669
      start: 2669
    functionDepth: 0
    functionLinenumber: 2669
    functionLinenumberEnd: 2669
    functionName: nonstd::expected_lite::expected<void, E>::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected( expected &&      other )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2673
      start: 2671
    functionDepth: 0
    functionLinenumber: 2671
    functionLinenumberEnd: 2673
    functionName: nonstd::expected_lite::expected<void, E>::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void expected( nonstd_lite_in_place_t(void) )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: emplace_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2738,1
    - Dst: std::forward<Args>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2738,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - il
    argTypes:
    - std::initializer_list<U>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2739
      start: 2735
    functionDepth: 0
    functionLinenumber: 2735
    functionLinenumberEnd: 2739
    functionName: nonstd::expected_lite::expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 29
    functionsReached:
    - emplace_error
    - std::forward<Args>
    linkageType: ''
    returnType: void
    signature: void expected( unexpect_t, std::initializer_list<U> il, Args&&... args
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2745,1
    - Dst: destruct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2747,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2749
      start: 2743
    functionDepth: 0
    functionLinenumber: 2743
    functionLinenumberEnd: 2749
    functionName: ~expected()
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - destruct_error
    linkageType: ''
    returnType: void
    signature: void ~expected()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2755,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2757
      start: 2753
    functionDepth: 0
    functionLinenumber: 2753
    functionLinenumberEnd: 2757
    functionName: '& operator=( expected const & other )'
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    linkageType: ''
    returnType: expected
    signature: expected & operator=( expected const & other )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2764,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2764,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2766
      start: 2759
    functionDepth: 0
    functionLinenumber: 2759
    functionLinenumberEnd: 2766
    functionName: "& operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_assignable<E>::value
      &&\n        std::is_nothrow_move_constructible<E>::value )"
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - expected
    - std::move
    linkageType: ''
    returnType: expected
    signature: "expected & operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_assignable<E>::value
      &&\n        std::is_nothrow_move_constructible<E>::value )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2770,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2771
      start: 2768
    functionDepth: 1
    functionLinenumber: 2768
    functionLinenumberEnd: 2771
    functionName: nonstd::expected_lite::emplace
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    linkageType: ''
    returnType: void
    signature: void emplace()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2787,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2787,1
    - Dst: contained::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2787,1
    - Dst: construct_error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2788,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2788,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2788,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2789,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2790,1
    - Dst: contained::set_has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2791,1
    - Dst: set_has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2792,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2794,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 12
    argCount: 1
    argNames:
    - ' other'
    argTypes:
    - expected
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2795
      start: 2780
    functionDepth: 3
    functionLinenumber: 2780
    functionLinenumberEnd: 2795
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 21
    functionsReached:
    - std::move
    - nonstd::expected_lite::swap
    - set_has_value
    - construct_error
    - contained::error
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    - contained::set_has_value
    linkageType: ''
    returnType: void
    signature: "void swap( expected & other ) noexcept\n    (\n        std::is_nothrow_move_constructible<E>::value
      && std17::is_nothrow_swappable<E&>::value\n    )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2801,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2802
      start: 2799
    functionDepth: 0
    functionLinenumber: 2799
    functionLinenumberEnd: 2802
    functionName: operator bool() const noexcept
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    linkageType: ''
    returnType: void
    signature: void operator bool() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2806,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2807
      start: 2804
    functionDepth: 1
    functionLinenumber: 2804
    functionLinenumberEnd: 2807
    functionName: nonstd::expected_lite::has_value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 102
    functionsReached:
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: bool
    signature: bool has_value() const noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2811,1
    - Dst: nonstd::expected_lite::rethrow
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2813,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2813,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2815
      start: 2809
    functionDepth: 3
    functionLinenumber: 2809
    functionLinenumberEnd: 2815
    functionName: nonstd::expected_lite::value
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 40
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::rethrow
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: void
    signature: void value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2819,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2819,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2819,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2818
        line_start: 2818
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2820
      start: 2817
    functionDepth: 2
    functionLinenumber: 2817
    functionLinenumberEnd: 2820
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 100
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type & error() const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2824,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2824,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2824,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2823
        line_start: 2823
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2825
      start: 2822
    functionDepth: 2
    functionLinenumber: 2822
    functionLinenumberEnd: 2825
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 101
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type & error() &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2831,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2831,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2831,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2831,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2830
        line_start: 2830
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2832
      start: 2829
    functionDepth: 2
    functionLinenumber: 2829
    functionLinenumberEnd: 2832
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 102
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type && error() const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2836,1
    - Dst: assert
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2836,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2836,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2836,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: ( ! has_value() )
      pos:
        line_end: 2835
        line_start: 2835
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    constantsTouched: []
    func_position:
      end: 2837
      start: 2834
    functionDepth: 2
    functionLinenumber: 2834
    functionLinenumberEnd: 2837
    functionName: nonstd::expected_lite::error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 103
    functionsReached:
    - nonstd::expected_lite::error
    - assert
    - std::move
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: error_type
    signature: error_type && error() &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2843,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2843,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2844
      start: 2841
    functionDepth: 3
    functionLinenumber: 2841
    functionLinenumberEnd: 2844
    functionName: nonstd::expected_lite::get_unexpected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 10
    functionsReached:
    - nonstd::expected_lite::error
    - nonstd::expected_lite::make_unexpected
    linkageType: ''
    returnType: unexpected_type
    signature: unexpected_type get_unexpected() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2849,1
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2850,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2851
      start: 2847
    functionDepth: 4
    functionLinenumber: 2847
    functionLinenumberEnd: 2851
    functionName: nonstd::expected_lite::has_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool has_exception() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2862,1
    - Dst: static_cast< E >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2863,1
    - Dst: std::forward< G >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2863,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2864,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - G
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2865
      start: 2860
    functionDepth: 3
    functionLinenumber: 2860
    functionLinenumberEnd: 2865
    functionName: nonstd::expected_lite::error_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::forward< G >
    - nonstd::expected_lite::error
    - static_cast< E >
    - nonstd::expected_lite::has_value
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr error_or( G && e ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2875,1
    - Dst: static_cast< E >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2876,1
    - Dst: std::forward< G >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2876,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2877,1
    - Dst: nonstd::expected_lite::error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2877,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - G
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2878
      start: 2873
    functionDepth: 3
    functionLinenumber: 2873
    functionLinenumberEnd: 2878
    functionName: nonstd::expected_lite::error_or
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - std::forward< G >
    - static_cast< E >
    - nonstd::expected_lite::has_value
    - nonstd::expected_lite::error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 error_or( G && e ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2892,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2893,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2893,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2893,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2894,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2894,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2895
      start: 2890
    functionDepth: 3
    functionLinenumber: 2890
    functionLinenumberEnd: 2895
    functionName: detail::invoke_result_nocvref_t< F > and_then( F && f ) &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F > and_then( F &&
      f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2906,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2907,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2907,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2907,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2908,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2908,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2909
      start: 2904
    functionDepth: 3
    functionLinenumber: 2904
    functionLinenumberEnd: 2909
    functionName: detail::invoke_result_nocvref_t< F > and_then( F && f ) const &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F > and_then( F &&
      f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2921,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2922,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2922,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2922,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2923,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2923,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2923,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2924
      start: 2919
    functionDepth: 3
    functionLinenumber: 2919
    functionLinenumberEnd: 2924
    functionName: detail::invoke_result_nocvref_t< F > and_then( F && f ) &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F > and_then( F &&
      f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2935,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2936,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2936,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2936,1
    - Dst: detail::invoke_result_nocvref_t< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2937,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2937,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2937,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2938
      start: 2933
    functionDepth: 3
    functionLinenumber: 2933
    functionLinenumberEnd: 2938
    functionName: detail::invoke_result_nocvref_t< F > and_then( F && f ) const &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F > and_then( F &&
      f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2949,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2950,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2951,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2951,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2951,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2951,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2952
      start: 2947
    functionDepth: 3
    functionLinenumber: 2947
    functionLinenumberEnd: 2952
    functionName: detail::invoke_result_nocvref_t< F, error_type & > or_else( F &&
      f ) &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - detail::invoke_result_nocvref_t< F, error_type & >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, error_type & >
      or_else( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2962,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2963,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type & >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2964,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2964,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2964,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2964,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2965
      start: 2960
    functionDepth: 3
    functionLinenumber: 2960
    functionLinenumberEnd: 2965
    functionName: detail::invoke_result_nocvref_t< F, const error_type & > or_else(
      F && f ) const &
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - detail::invoke_result_nocvref_t< F, const error_type & >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const error_type
      & > or_else( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2976,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2977,1
    - Dst: detail::invoke_result_nocvref_t< F, error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2978,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2979
      start: 2974
    functionDepth: 3
    functionLinenumber: 2974
    functionLinenumberEnd: 2979
    functionName: detail::invoke_result_nocvref_t< F, error_type && > or_else( F &&
      f ) &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - detail::invoke_result_nocvref_t< F, error_type && >
    - has_value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 detail::invoke_result_nocvref_t< F, error_type &&
      > or_else( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2989,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2990,1
    - Dst: detail::invoke_result_nocvref_t< F, const error_type && >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:2991,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2992
      start: 2987
    functionDepth: 3
    functionLinenumber: 2987
    functionLinenumberEnd: 2992
    functionName: detail::invoke_result_nocvref_t< F, const error_type && > or_else(
      F && f ) const &&
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - detail::invoke_result_nocvref_t< F, const error_type && >
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr detail::invoke_result_nocvref_t< F, const error_type
      && > or_else( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3003,1
    - Dst: expected< detail::transform_invoke_result_t< F >, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3004,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3004,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3004,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3005,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3005,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3006
      start: 3001
    functionDepth: 3
    functionLinenumber: 3001
    functionLinenumberEnd: 3006
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F >, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< detail::transform_invoke_result_t< F >,
      error_type > transform( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3016,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3017,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3017,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3017,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3018,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3018,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3019
      start: 3014
    functionDepth: 3
    functionLinenumber: 3014
    functionLinenumberEnd: 3019
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, error_type > transform( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3029,1
    - Dst: expected< detail::transform_invoke_result_t< F >, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3030,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3030,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3030,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3031,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3031,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3032
      start: 3027
    functionDepth: 3
    functionLinenumber: 3027
    functionLinenumberEnd: 3032
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F >, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< detail::transform_invoke_result_t< F >, error_type
      > transform( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3042,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3043,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3043,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3043,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3044,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3044,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3045
      start: 3040
    functionDepth: 3
    functionLinenumber: 3040
    functionLinenumberEnd: 3045
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, error_type > transform( F && f ) const
      &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3056,1
    - Dst: expected< detail::transform_invoke_result_t< F >, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3057,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3057,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3057,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3058,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3058,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3059
      start: 3054
    functionDepth: 3
    functionLinenumber: 3054
    functionLinenumberEnd: 3059
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F >, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< detail::transform_invoke_result_t< F >,
      error_type > transform( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3069,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3070,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3070,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3070,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3071,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3071,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3072
      start: 3067
    functionDepth: 3
    functionLinenumber: 3067
    functionLinenumberEnd: 3072
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, error_type > transform( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3082,1
    - Dst: expected< detail::transform_invoke_result_t< F >, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3083,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3083,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3083,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3084,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3084,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3085
      start: 3080
    functionDepth: 3
    functionLinenumber: 3080
    functionLinenumberEnd: 3085
    functionName: nonstd::expected_lite::expected< detail::transform_invoke_result_t<
      F >, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< detail::transform_invoke_result_t< F >, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< detail::transform_invoke_result_t< F >, error_type
      > transform( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3095,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3096,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3096,1
    - Dst: expected< void, error_type >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3096,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3097,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3097,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3098
      start: 3093
    functionDepth: 3
    functionLinenumber: 3093
    functionLinenumberEnd: 3098
    functionName: nonstd::expected_lite::expected< void, error_type >::transform
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, error_type >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, error_type > transform( F && f ) const
      &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3108,1
    - Dst: expected< void, detail::transform_invoke_result_t< F, error_type & > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3109,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3110,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3110,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3110,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3110,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3111
      start: 3106
    functionDepth: 3
    functionLinenumber: 3106
    functionLinenumberEnd: 3111
    functionName: nonstd::expected_lite::expected< void, detail::transform_invoke_result_t<
      F, error_type & > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - expected< void, detail::transform_invoke_result_t< F, error_type & > >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, detail::transform_invoke_result_t<
      F, error_type & > > transform_error( F && f ) &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3120,1
    - Dst: expected< void, detail::transform_invoke_result_t< F, const error_type
        & > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3121,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3122,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3122,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3122,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3122,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3123
      start: 3118
    functionDepth: 3
    functionLinenumber: 3118
    functionLinenumberEnd: 3123
    functionName: nonstd::expected_lite::expected< void, detail::transform_invoke_result_t<
      F, const error_type & > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - expected< void, detail::transform_invoke_result_t< F, const error_type & > >
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, detail::transform_invoke_result_t< F,
      const error_type & > > transform_error( F && f ) const &
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3133,1
    - Dst: expected< void, detail::transform_invoke_result_t< F, error_type && > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3134,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3135,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3136
      start: 3131
    functionDepth: 3
    functionLinenumber: 3131
    functionLinenumberEnd: 3136
    functionName: nonstd::expected_lite::expected< void, detail::transform_invoke_result_t<
      F, error_type && > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, detail::transform_invoke_result_t< F, error_type && > >
    linkageType: ''
    returnType: nsel_constexpr14
    signature: nsel_constexpr14 expected< void, detail::transform_invoke_result_t<
      F, error_type && > > transform_error( F && f ) &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: has_value
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3145,1
    - Dst: expected< void, detail::transform_invoke_result_t< F, const error_type
        && > >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3146,1
    - Dst: make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    - Dst: nonstd::expected_lite::detail::invoke
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    - Dst: std::forward< F >
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    - Dst: std::move
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3147,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 2
    argCount: 1
    argNames:
    - ' f'
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3148
      start: 3143
    functionDepth: 3
    functionLinenumber: 3143
    functionLinenumberEnd: 3148
    functionName: nonstd::expected_lite::expected< void, detail::transform_invoke_result_t<
      F, const error_type && > >::transform_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - has_value
    - make_unexpected
    - std::move
    - std::forward< F >
    - nonstd::expected_lite::detail::invoke
    - error
    - expected< void, detail::transform_invoke_result_t< F, const error_type && >
      >
    linkageType: ''
    returnType: nsel_constexpr
    signature: nsel_constexpr expected< void, detail::transform_invoke_result_t< F,
      const error_type && > > transform_error( F && f ) const &&
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3193,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3193,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T1,E1>
    - expected<T2,E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3194
      start: 3191
    functionDepth: 0
    functionLinenumber: 3191
    functionLinenumberEnd: 3194
    functionName: operator==( expected<T1,E1> const & x, expected<T2,E2> const & y
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - error
    linkageType: ''
    returnType: bool
    signature: bool operator==( expected<T1,E1> const & x, expected<T2,E2> const &
      y )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<bool>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3203,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3203,1
    - Dst: error
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3203,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T1,E1>
    - expected<T2,E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3204
      start: 3201
    functionDepth: 0
    functionLinenumber: 3201
    functionLinenumberEnd: 3204
    functionName: operator==( expected<T1,E1> const & x, expected<T2,E2> const & y
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - static_cast<bool>
    - error
    linkageType: ''
    returnType: bool
    signature: bool operator==( expected<T1,E1> const & x, expected<T2,E2> const &
      y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T1,E1>
    - expected<T2,E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3210
      start: 3207
    functionDepth: 0
    functionLinenumber: 3207
    functionLinenumberEnd: 3210
    functionName: operator!=( expected<T1,E1> const & x, expected<T2,E2> const & y
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( expected<T1,E1> const & x, expected<T2,E2> const &
      y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3218
      start: 3215
    functionDepth: 0
    functionLinenumber: 3215
    functionLinenumberEnd: 3218
    functionName: operator<( expected<T,E> const & x, expected<T,E> const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<( expected<T,E> const & x, expected<T,E> const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3224
      start: 3221
    functionDepth: 0
    functionLinenumber: 3221
    functionLinenumberEnd: 3224
    functionName: operator>( expected<T,E> const & x, expected<T,E> const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( expected<T,E> const & x, expected<T,E> const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3230
      start: 3227
    functionDepth: 0
    functionLinenumber: 3227
    functionLinenumberEnd: 3230
    functionName: operator<=( expected<T,E> const & x, expected<T,E> const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( expected<T,E> const & x, expected<T,E> const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3236
      start: 3233
    functionDepth: 0
    functionLinenumber: 3233
    functionLinenumberEnd: 3236
    functionName: operator>=( expected<T,E> const & x, expected<T,E> const & y )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( expected<T,E> const & x, expected<T,E> const & y )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T1,E1>
    - T2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3250
      start: 3247
    functionDepth: 0
    functionLinenumber: 3247
    functionLinenumberEnd: 3250
    functionName: operator==( expected<T1,E1> const & x, T2 const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==( expected<T1,E1> const & x, T2 const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T2
    - expected<T1,E1>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3260
      start: 3257
    functionDepth: 0
    functionLinenumber: 3257
    functionLinenumberEnd: 3260
    functionName: operator==(T2 const & v, expected<T1,E1> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(T2 const & v, expected<T1,E1> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T1,E1>
    - T2
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3266
      start: 3263
    functionDepth: 0
    functionLinenumber: 3263
    functionLinenumberEnd: 3266
    functionName: operator!=( expected<T1,E1> const & x, T2 const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( expected<T1,E1> const & x, T2 const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T2
    - expected<T1,E1>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3272
      start: 3269
    functionDepth: 0
    functionLinenumber: 3269
    functionLinenumberEnd: 3272
    functionName: operator!=( T2 const & v, expected<T1,E1> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( T2 const & v, expected<T1,E1> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T,E>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3280
      start: 3277
    functionDepth: 0
    functionLinenumber: 3277
    functionLinenumberEnd: 3280
    functionName: operator<( expected<T,E> const & x, T const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<( expected<T,E> const & x, T const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3286
      start: 3283
    functionDepth: 0
    functionLinenumber: 3283
    functionLinenumberEnd: 3286
    functionName: operator<( T const & v, expected<T,E> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<( T const & v, expected<T,E> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3292
      start: 3289
    functionDepth: 0
    functionLinenumber: 3289
    functionLinenumberEnd: 3292
    functionName: operator>( T const & v, expected<T,E> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( T const & v, expected<T,E> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T,E>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3298
      start: 3295
    functionDepth: 0
    functionLinenumber: 3295
    functionLinenumberEnd: 3298
    functionName: operator>( expected<T,E> const & x, T const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( expected<T,E> const & x, T const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3304
      start: 3301
    functionDepth: 0
    functionLinenumber: 3301
    functionLinenumberEnd: 3304
    functionName: operator<=( T const & v, expected<T,E> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( T const & v, expected<T,E> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T,E>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3310
      start: 3307
    functionDepth: 0
    functionLinenumber: 3307
    functionLinenumberEnd: 3310
    functionName: operator<=( expected<T,E> const & x, T const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( expected<T,E> const & x, T const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' v'
    argTypes:
    - expected<T,E>
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3316
      start: 3313
    functionDepth: 0
    functionLinenumber: 3313
    functionLinenumberEnd: 3316
    functionName: operator>=( expected<T,E> const & x, T const & v )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( expected<T,E> const & x, T const & v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' v'
    - ' x'
    argTypes:
    - T
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3322
      start: 3319
    functionDepth: 0
    functionLinenumber: 3319
    functionLinenumberEnd: 3322
    functionName: operator>=( T const & v, expected<T,E> const & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( T const & v, expected<T,E> const & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3331,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T1,E1>
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3332
      start: 3329
    functionDepth: 0
    functionLinenumber: 3329
    functionLinenumberEnd: 3332
    functionName: operator==( expected<T1,E1> const & x, unexpected_type<E2> const
      & u )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool operator==( expected<T1,E1> const & x, unexpected_type<E2> const
      & u )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E2>
    - expected<T1,E1>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3338
      start: 3335
    functionDepth: 0
    functionLinenumber: 3335
    functionLinenumberEnd: 3338
    functionName: operator==( unexpected_type<E2> const & u, expected<T1,E1> const
      & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==( unexpected_type<E2> const & u, expected<T1,E1> const
      & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T1,E1>
    - unexpected_type<E2>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3344
      start: 3341
    functionDepth: 0
    functionLinenumber: 3341
    functionLinenumberEnd: 3344
    functionName: operator!=( expected<T1,E1> const & x, unexpected_type<E2> const
      & u )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( expected<T1,E1> const & x, unexpected_type<E2> const
      & u )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E2>
    - expected<T1,E1>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3350
      start: 3347
    functionDepth: 0
    functionLinenumber: 3347
    functionLinenumberEnd: 3350
    functionName: operator!=( unexpected_type<E2> const & u, expected<T1,E1> const
      & x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=( unexpected_type<E2> const & u, expected<T1,E1> const
      & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T,E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3358
      start: 3355
    functionDepth: 0
    functionLinenumber: 3355
    functionLinenumberEnd: 3358
    functionName: operator<( expected<T,E> const & x, unexpected_type<E> const & u
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool operator<( expected<T,E> const & x, unexpected_type<E> const &
      u )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3363,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3364
      start: 3361
    functionDepth: 0
    functionLinenumber: 3361
    functionLinenumberEnd: 3364
    functionName: operator<( unexpected_type<E> const & u, expected<T,E> const & x
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - get_unexpected
    linkageType: ''
    returnType: bool
    signature: bool operator<( unexpected_type<E> const & u, expected<T,E> const &
      x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T,E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3370
      start: 3367
    functionDepth: 0
    functionLinenumber: 3367
    functionLinenumberEnd: 3370
    functionName: operator>( expected<T,E> const & x, unexpected_type<E> const & u
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( expected<T,E> const & x, unexpected_type<E> const &
      u )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3376
      start: 3373
    functionDepth: 0
    functionLinenumber: 3373
    functionLinenumberEnd: 3376
    functionName: operator>( unexpected_type<E> const & u, expected<T,E> const & x
      )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>( unexpected_type<E> const & u, expected<T,E> const &
      x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T,E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3382
      start: 3379
    functionDepth: 0
    functionLinenumber: 3379
    functionLinenumberEnd: 3382
    functionName: operator<=( expected<T,E> const & x, unexpected_type<E> const &
      u )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( expected<T,E> const & x, unexpected_type<E> const
      & u )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3388
      start: 3385
    functionDepth: 0
    functionLinenumber: 3385
    functionLinenumberEnd: 3388
    functionName: operator<=( unexpected_type<E> const & u, expected<T,E> const &
      x)
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=( unexpected_type<E> const & u, expected<T,E> const
      & x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' u'
    argTypes:
    - expected<T,E>
    - unexpected_type<E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3394
      start: 3391
    functionDepth: 0
    functionLinenumber: 3391
    functionLinenumberEnd: 3394
    functionName: operator>=( expected<T,E> const & x, unexpected_type<E> const &
      u  )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( expected<T,E> const & x, unexpected_type<E> const
      & u  )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' u'
    - ' x'
    argTypes:
    - unexpected_type<E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3400
      start: 3397
    functionDepth: 0
    functionLinenumber: 3397
    functionLinenumberEnd: 3400
    functionName: operator>=( unexpected_type<E> const & u, expected<T,E> const &
      x )
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=( unexpected_type<E> const & u, expected<T,E> const
      & x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: noexcept
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3413,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3413,1
    - Dst: nonstd::expected_lite::swap
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' x'
    - ' y'
    argTypes:
    - expected<T,E>
    - expected<T,E>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3416
      start: 3413
    functionDepth: 1
    functionLinenumber: 3413
    functionLinenumberEnd: 3416
    functionName: nonstd::expected_lite::swap
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 22
    functionsReached:
    - noexcept
    - nonstd::expected_lite::swap
    linkageType: ''
    returnType: void
    signature: void swap( expected<T,E> & x, expected<T,E> & y ) noexcept ( noexcept
      ( x.swap(y) ) )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3423,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3423,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' v'
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3424
      start: 3421
    functionDepth: 1
    functionLinenumber: 3421
    functionLinenumberEnd: 3424
    functionName: nonstd::expected_lite::make_expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - std::forward<T>
    - nonstd::expected_lite::expected
    linkageType: ''
    returnType: auto
    signature: auto make_expected( T && v ) -> expected< typename std::decay<T>::type
      >
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3431
      start: 3428
    functionDepth: 1
    functionLinenumber: 3428
    functionLinenumberEnd: 3431
    functionName: nonstd::expected_lite::make_expected
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 6
    functionsReached:
    - nonstd::expected_lite::expected
    linkageType: ''
    returnType: auto
    signature: auto make_expected() -> expected<void>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3436,1
    - Dst: nonstd::expected_lite::make_unexpected_from_current_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3436,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3437
      start: 3434
    functionDepth: 2
    functionLinenumber: 3434
    functionLinenumberEnd: 3437
    functionName: nonstd::expected_lite::make_expected_from_current_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    - nonstd::expected_lite::make_unexpected_from_current_exception
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_current_exception() -> expected<T>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3442,1
    - Dst: nonstd::expected_lite::unexpected_type
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3442,1
    - Dst: std::forward<std::exception_ptr>
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - std::exception_ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3443
      start: 3440
    functionDepth: 1
    functionLinenumber: 3440
    functionLinenumberEnd: 3443
    functionName: nonstd::expected_lite::make_expected_from_exception
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    - std::forward<std::exception_ptr>
    - nonstd::expected_lite::unexpected_type
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_exception( std::exception_ptr v ) -> expected<T>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3448,1
    - Dst: nonstd::expected_lite::make_unexpected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - e
    argTypes:
    - E
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3449
      start: 3446
    functionDepth: 2
    functionLinenumber: 3446
    functionLinenumberEnd: 3449
    functionName: nonstd::expected_lite::make_expected_from_error
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - nonstd::expected_lite::expected
    - nonstd::expected_lite::make_unexpected
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_error( E e ) -> expected<T, typename std::decay<E>::type>
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: nonstd::expected_lite::make_expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3459,1
    - Dst: f
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3459,1
    - Dst: nonstd::expected_lite::make_unexpected_from_current_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3463,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - f
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3465
      start: 3455
    functionDepth: 2
    functionLinenumber: 3455
    functionLinenumberEnd: 3465
    functionName: nonstd::expected_lite::make_expected_from_call
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - f
    - nonstd::expected_lite::make_expected
    - nonstd::expected_lite::make_unexpected_from_current_exception
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_call( F f ) -> expected< typename std::result_of<F()>::type
      >
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: f
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3475,1
    - Dst: nonstd::expected_lite::make_expected
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3476,1
    - Dst: nonstd::expected_lite::make_unexpected_from_current_exception
      Src: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp:3480,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - f
    argTypes:
    - F
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3482
      start: 3471
    functionDepth: 2
    functionLinenumber: 3471
    functionLinenumberEnd: 3482
    functionName: nonstd::expected_lite::make_expected_from_call
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached:
    - f
    - nonstd::expected_lite::make_expected
    - nonstd::expected_lite::make_unexpected_from_current_exception
    linkageType: ''
    returnType: auto
    signature: auto make_expected_from_call( F f ) -> expected<void>
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' arg'
    argTypes:
    - argument_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3508
      start: 3505
    functionDepth: 0
    functionLinenumber: 3505
    functionLinenumberEnd: 3508
    functionName: operator()(argument_type const & arg) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: result_type
    signature: result_type operator()(argument_type const & arg) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' arg'
    argTypes:
    - argument_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3521
      start: 3518
    functionDepth: 0
    functionLinenumber: 3518
    functionLinenumberEnd: 3521
    functionName: operator()(argument_type const & arg) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: result_type
    signature: result_type operator()(argument_type const & arg) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' arg'
    argTypes:
    - argument_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3508
      start: 3505
    functionDepth: 0
    functionLinenumber: 3505
    functionLinenumberEnd: 3508
    functionName: operator()(argument_type const & arg) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: result_type
    signature: result_type operator()(argument_type const & arg) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' arg'
    argTypes:
    - argument_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3521
      start: 3518
    functionDepth: 0
    functionLinenumber: 3518
    functionLinenumberEnd: 3521
    functionName: operator()(argument_type const & arg) const
    functionSourceFile: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: result_type
    signature: result_type operator()(argument_type const & arg) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/examples/t07_load_multiple_xml.cpp:48,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t07_load_multiple_xml.cpp:49,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/examples/t07_load_multiple_xml.cpp:53,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/examples/t07_load_multiple_xml.cpp:54,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/examples/t07_load_multiple_xml.cpp:55,1
    - Dst: BT::BehaviorTreeFactory::registeredBehaviorTrees
      Src: /src/behaviortreecpp/examples/t07_load_multiple_xml.cpp:59,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/examples/t07_load_multiple_xml.cpp:66,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t07_load_multiple_xml.cpp:67,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/examples/t07_load_multiple_xml.cpp:71,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t07_load_multiple_xml.cpp:72,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 75
      start: 46
    functionDepth: 1
    functionLinenumber: 46
    functionLinenumberEnd: 75
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t07_load_multiple_xml.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTree
    - auto::tickWhileRunning
    - BT::BehaviorTreeFactory::registerNodeType
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - BT::BehaviorTreeFactory::registeredBehaviorTrees
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerSimpleCondition
      Src: /src/behaviortreecpp/examples/t04_reactive_sequence.cpp:64,1
    - Dst: std::bind
      Src: /src/behaviortreecpp/examples/t04_reactive_sequence.cpp:64,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t04_reactive_sequence.cpp:65,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t04_reactive_sequence.cpp:66,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/examples/t04_reactive_sequence.cpp:79,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t04_reactive_sequence.cpp:86,1
    - Dst: toStr
      Src: /src/behaviortreecpp/examples/t04_reactive_sequence.cpp:87,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/examples/t04_reactive_sequence.cpp:94,1
    - Dst: toStr
      Src: /src/behaviortreecpp/examples/t04_reactive_sequence.cpp:95,1
    - Dst: auto::sleep
      Src: /src/behaviortreecpp/examples/t04_reactive_sequence.cpp:100,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/examples/t04_reactive_sequence.cpp:100,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 106
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t04_reactive_sequence.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerSimpleCondition
    - auto::tickWhileRunning
    - toStr
    - BehaviorTreeFactory::registerNodeType
    - auto::tickOnce
    - std::bind
    - std::chrono::milliseconds
    - auto::sleep
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:22,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:22,1
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:25,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:26,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:28,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:33,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:34,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 20
    functionDepth: 2
    functionLinenumber: 20
    functionLinenumberEnd: 37
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/examples/t03_generic_ports.cpp
    functionUses: 36
    functionsReached:
    - StringView::data
    - BT::convertFromString
    - BT::splitString
    - RuntimeError
    - printf
    - auto::size
    linkageType: ''
    returnType: Position2D
    signature: Position2D convertFromString(StringView str)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:22,1
    - Dst: StringView::data
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:22,1
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:25,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:26,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:28,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:33,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:34,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 37
      start: 20
    functionDepth: 2
    functionLinenumber: 20
    functionLinenumberEnd: 37
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/examples/t03_generic_ports.cpp
    functionUses: 37
    functionsReached:
    - StringView::data
    - BT::convertFromString
    - BT::splitString
    - RuntimeError
    - printf
    - auto::size
    linkageType: ''
    returnType: Position2D
    signature: Position2D convertFromString(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 45
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 45
    functionName: CalculateGoal::CalculateGoal
    functionSourceFile: /src/behaviortreecpp/examples/t03_generic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CalculateGoal(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setOutput
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:50,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 47
    functionDepth: 0
    functionLinenumber: 47
    functionLinenumberEnd: 52
    functionName: CalculateGoal::tick
    functionSourceFile: /src/behaviortreecpp/examples/t03_generic_ports.cpp
    functionUses: 0
    functionsReached:
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OutputPort<Position2D>
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 56
    functionName: CalculateGoal::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/t03_generic_ports.cpp
    functionUses: 0
    functionsReached:
    - OutputPort<Position2D>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 64
    functionName: PrintTarget::PrintTarget
    functionSourceFile: /src/behaviortreecpp/examples/t03_generic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PrintTarget(const std::string& name, const NodeConfig& config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<Position2D>
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:68,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:71,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:71,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:73,1
    - Dst: printf
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:74,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 66
    functionDepth: 1
    functionLinenumber: 66
    functionLinenumberEnd: 76
    functionName: PrintTarget::tick
    functionSourceFile: /src/behaviortreecpp/examples/t03_generic_ports.cpp
    functionUses: 0
    functionsReached:
    - auto::value
    - auto::error
    - RuntimeError
    - printf
    - getInput<Position2D>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<Position2D>
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:82,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 83
    functionName: PrintTarget::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/t03_generic_ports.cpp
    functionUses: 0
    functionsReached:
    - InputPort<Position2D>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:125,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:126,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:128,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t03_generic_ports.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 139
      start: 120
    functionDepth: 0
    functionLinenumber: 120
    functionLinenumberEnd: 139
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t03_generic_ports.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    - auto::tickWhileRunning
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t09_scripting.cpp:38,1
    - Dst: BehaviorTreeFactory::registerScriptingEnums
      Src: /src/behaviortreecpp/examples/t09_scripting.cpp:47,1
    - Dst: BehaviorTreeFactory::registerScriptingEnum
      Src: /src/behaviortreecpp/examples/t09_scripting.cpp:50,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/examples/t09_scripting.cpp:52,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t09_scripting.cpp:53,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 35
    functionDepth: 0
    functionLinenumber: 35
    functionLinenumberEnd: 56
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t09_scripting.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::registerScriptingEnum
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - BehaviorTreeFactory::registerScriptingEnums
    - BehaviorTreeFactory::registerNodeType
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 48
    functionDepth: 0
    functionLinenumber: 48
    functionLinenumberEnd: 50
    functionName: ThinkWhatToSay::ThinkWhatToSay
    functionSourceFile: /src/behaviortreecpp/examples/t02_basic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ThinkWhatToSay(const std::string& name, const BT::NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setOutput
      Src: /src/behaviortreecpp/examples/t02_basic_ports.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: ThinkWhatToSay::tick
    functionSourceFile: /src/behaviortreecpp/examples/t02_basic_ports.cpp
    functionUses: 0
    functionsReached:
    - setOutput
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::OutputPort<std::string>
      Src: /src/behaviortreecpp/examples/t02_basic_ports.cpp:62,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 63
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 63
    functionName: ThinkWhatToSay::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/t02_basic_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::OutputPort<std::string>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t02_basic_ports.cpp:74,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t02_basic_ports.cpp:78,1
    - Dst: InputPort<std::string>
      Src: /src/behaviortreecpp/examples/t02_basic_ports.cpp:83,1
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/examples/t02_basic_ports.cpp:84,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/examples/t02_basic_ports.cpp:96,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t02_basic_ports.cpp:98,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 66
    functionDepth: 0
    functionLinenumber: 66
    functionLinenumberEnd: 114
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t02_basic_ports.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - BehaviorTreeFactory::registerNodeType
    - InputPort<std::string>
    - BehaviorTreeFactory::registerSimpleAction
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/ex03_ncurses_manual_selector.cpp:33,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/examples/ex03_ncurses_manual_selector.cpp:35,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/ex03_ncurses_manual_selector.cpp:36,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 41
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/ex03_ncurses_manual_selector.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    - auto::tickWhileRunning
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 56
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 56
    functionName: PrintNumber::PrintNumber
    functionSourceFile: /src/behaviortreecpp/examples/t16_global_blackboard.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PrintNumber(const std::string& name, const BT::NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getInput<int>
      Src: /src/behaviortreecpp/examples/t16_global_blackboard.cpp:60,1
    - Dst: name
      Src: /src/behaviortreecpp/examples/t16_global_blackboard.cpp:65,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 67
    functionName: PrintNumber::tick
    functionSourceFile: /src/behaviortreecpp/examples/t16_global_blackboard.cpp
    functionUses: 0
    functionsReached:
    - getInput<int>
    - name
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<int>
      Src: /src/behaviortreecpp/examples/t16_global_blackboard.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 72
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 72
    functionName: PrintNumber::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/t16_global_blackboard.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<int>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t16_global_blackboard.cpp:80,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/examples/t16_global_blackboard.cpp:81,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/examples/t16_global_blackboard.cpp:84,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/examples/t16_global_blackboard.cpp:86,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/examples/t16_global_blackboard.cpp:88,1
    - Dst: auto::set
      Src: /src/behaviortreecpp/examples/t16_global_blackboard.cpp:93,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/examples/t16_global_blackboard.cpp:94,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/examples/t16_global_blackboard.cpp:95,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 76
    functionDepth: 1
    functionLinenumber: 76
    functionLinenumberEnd: 100
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t16_global_blackboard.cpp
    functionUses: 0
    functionsReached:
    - auto::set
    - BT::Blackboard::create
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - auto::get
    - auto::tickOnce
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t01_build_your_first_tree.cpp:58,1
    - Dst: BehaviorTreeFactory::registerSimpleCondition
      Src: /src/behaviortreecpp/examples/t01_build_your_first_tree.cpp:62,1
    - Dst: CheckBattery
      Src: /src/behaviortreecpp/examples/t01_build_your_first_tree.cpp:63,1
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/examples/t01_build_your_first_tree.cpp:67,1
    - Dst: GripperInterface::open
      Src: /src/behaviortreecpp/examples/t01_build_your_first_tree.cpp:67,1
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/examples/t01_build_your_first_tree.cpp:68,1
    - Dst: GripperInterface::close
      Src: /src/behaviortreecpp/examples/t01_build_your_first_tree.cpp:69,1
    - Dst: BehaviorTreeFactory::registerFromPlugin
      Src: /src/behaviortreecpp/examples/t01_build_your_first_tree.cpp:74,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/examples/t01_build_your_first_tree.cpp:80,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t01_build_your_first_tree.cpp:86,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 89
      start: 39
    functionDepth: 0
    functionLinenumber: 39
    functionLinenumberEnd: 89
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t01_build_your_first_tree.cpp
    functionUses: 0
    functionsReached:
    - GripperInterface::open
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerSimpleCondition
    - auto::tickWhileRunning
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerFromPlugin
    - BehaviorTreeFactory::registerSimpleAction
    - CheckBattery
    - GripperInterface::close
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: add_field
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:32,1
    - Dst: add_field
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:33,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 34
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 34
    functionName: BT_JSON_CONVERTER
    functionSourceFile: /src/behaviortreecpp/examples/t11_groot_howto.cpp
    functionUses: 0
    functionsReached:
    - add_field
    linkageType: ''
    returnType: void
    signature: void BT_JSON_CONVERTER(Position2D, pos)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: add_field
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:46,1
    - Dst: add_field
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:47,1
    - Dst: add_field
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:48,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 49
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 49
    functionName: BT_JSON_CONVERTER
    functionSourceFile: /src/behaviortreecpp/examples/t11_groot_howto.cpp
    functionUses: 0
    functionsReached:
    - add_field
    linkageType: ''
    returnType: void
    signature: void BT_JSON_CONVERTER(Waypoint, wp)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 58
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 58
    functionName: UpdatePosition::UpdatePosition
    functionSourceFile: /src/behaviortreecpp/examples/t11_groot_howto.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void UpdatePosition(const std::string& name, const BT::NodeConfig&
      config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: setOutput
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:64,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:68,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:71,1
    - Dst: static_cast<double>
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:76,1
    - Dst: std::rand
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:76,1
    - Dst: randOffset
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:85,1
    - Dst: randOffset
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:85,1
    - Dst: randOffset
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:85,1
    - Dst: randOffset
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:87,1
    - Dst: randOffset
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:87,1
    - Dst: randOffset
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:88,1
    - Dst: randOffset
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:95,1
    - Dst: randOffset
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:95,1
    - Dst: randOffset
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:95,1
    - Dst: randOffset
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:97,1
    - Dst: randOffset
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:97,1
    - Dst: randOffset
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:98,1
    - Dst: randOffset
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:100,1
    - Dst: randOffset
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:100,1
    - Dst: randOffset
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:101,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:104,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 60
    functionDepth: 0
    functionLinenumber: 60
    functionLinenumberEnd: 108
    functionName: UpdatePosition::tick
    functionSourceFile: /src/behaviortreecpp/examples/t11_groot_howto.cpp
    functionUses: 0
    functionsReached:
    - std::rand
    - static_cast<double>
    - setOutput
    - randOffset
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::OutputPort<Position2D>
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:113,1
    - Dst: BT::OutputPort<std::vector<double>>
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:114,1
    - Dst: BT::OutputPort<std::vector<std::string>>
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:115,1
    - Dst: BT::OutputPort<std::vector<Waypoint>>
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 118
    functionName: UpdatePosition::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/t11_groot_howto.cpp
    functionUses: 0
    functionsReached:
    - BT::OutputPort<std::vector<double>>
    - BT::OutputPort<Position2D>
    - BT::OutputPort<std::vector<Waypoint>>
    - BT::OutputPort<std::vector<std::string>>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:162,1
    - Dst: CrossDoor::registerNodes
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:166,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:167,1
    - Dst: BT::writeTreeNodesModelXML
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:172,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:174,1
    - Dst: BT::RegisterJsonDefinition<Position2D>
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:177,1
    - Dst: BT::RegisterJsonDefinition<Waypoint>
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:178,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:180,1
    - Dst: BT::WriteTreeToXML
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:183,1
    - Dst: CrossDoor::reset
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:201,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:202,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:203,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/examples/t11_groot_howto.cpp:203,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 207
      start: 160
    functionDepth: 4
    functionLinenumber: 160
    functionLinenumberEnd: 207
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t11_groot_howto.cpp
    functionUses: 0
    functionsReached:
    - BT::RegisterJsonDefinition<Position2D>
    - BT::BehaviorTreeFactory::createTree
    - auto::tickWhileRunning
    - CrossDoor::reset
    - BT::WriteTreeToXML
    - BT::writeTreeNodesModelXML
    - CrossDoor::registerNodes
    - BT::BehaviorTreeFactory::registerNodeType
    - std::this_thread::sleep_for
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - std::chrono::milliseconds
    - BT::RegisterJsonDefinition<Waypoint>
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 28
    functionDepth: 0
    functionLinenumber: 28
    functionLinenumberEnd: 28
    functionName: ~Animal()
    functionSourceFile: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~Animal()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 33
      start: 30
    functionDepth: 0
    functionLinenumber: 30
    functionLinenumberEnd: 33
    functionName: Animal::name
    functionSourceFile: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 41
    functionDepth: 0
    functionLinenumber: 41
    functionLinenumberEnd: 44
    functionName: Cat::name
    functionSourceFile: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 55
      start: 52
    functionDepth: 0
    functionLinenumber: 52
    functionLinenumberEnd: 55
    functionName: Sphynx::name
    functionSourceFile: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: std::string
    signature: std::string name() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 67
    functionName: CreateCat::CreateCat
    functionSourceFile: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CreateCat(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setOutput
      Src: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp:71,1
    - Dst: std::make_shared<Cat>
      Src: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp:71,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 73
    functionName: CreateCat::tick
    functionSourceFile: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<Cat>
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OutputPort<Cat::Ptr>
      Src: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 78
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 78
    functionName: CreateCat::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - OutputPort<Cat::Ptr>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 86
      start: 84
    functionDepth: 0
    functionLinenumber: 84
    functionLinenumberEnd: 86
    functionName: CreateSphynx::CreateSphynx
    functionSourceFile: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void CreateSphynx(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setOutput
      Src: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp:90,1
    - Dst: std::make_shared<Sphynx>
      Src: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp:90,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 88
    functionDepth: 0
    functionLinenumber: 88
    functionLinenumberEnd: 92
    functionName: CreateSphynx::tick
    functionSourceFile: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - std::make_shared<Sphynx>
    - setOutput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OutputPort<Sphynx::Ptr>
      Src: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp:96,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 97
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 97
    functionName: CreateSphynx::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - OutputPort<Sphynx::Ptr>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 108
    functionName: SayHi::SayHi
    functionSourceFile: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SayHi(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getInput<Animal::Ptr>
      Src: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp:112,1
    - Dst: auto::name
      Src: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp:113,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 115
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 115
    functionName: SayHi::tick
    functionSourceFile: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - auto::name
    - getInput<Animal::Ptr>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<Animal::Ptr>
      Src: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp:119,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 120
    functionName: SayHi::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - InputPort<Animal::Ptr>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerPolymorphicCast
      Src: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp:146,1
    - Dst: BehaviorTreeFactory::registerPolymorphicCast
      Src: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp:147,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp:149,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp:150,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp:151,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp:153,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 162
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 162
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerPolymorphicCast
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionName: GenerateWaypoints::GenerateWaypoints
    functionSourceFile: /src/behaviortreecpp/examples/t18_waypoints.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void GenerateWaypoints(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::make_shared<std::deque<Pose2D>>
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:31,1
    - Dst: auto::push_back
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:34,1
    - Dst: setOutput
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:36,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 38
      start: 29
    functionDepth: 2
    functionLinenumber: 29
    functionLinenumberEnd: 38
    functionName: GenerateWaypoints::tick
    functionSourceFile: /src/behaviortreecpp/examples/t18_waypoints.cpp
    functionUses: 0
    functionsReached:
    - setOutput
    - auto::push_back
    - std::make_shared<std::deque<Pose2D>>
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: OutputPort<SharedQueue<Pose2D>>
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:42,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 43
      start: 40
    functionDepth: 0
    functionLinenumber: 40
    functionLinenumberEnd: 43
    functionName: GenerateWaypoints::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/t18_waypoints.cpp
    functionUses: 0
    functionsReached:
    - OutputPort<SharedQueue<Pose2D>>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 51
    functionName: PrintNumber::PrintNumber
    functionSourceFile: /src/behaviortreecpp/examples/t18_waypoints.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PrintNumber(const std::string& name, const NodeConfig& config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:56,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 62
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 62
    functionName: PrintNumber::tick
    functionSourceFile: /src/behaviortreecpp/examples/t18_waypoints.cpp
    functionUses: 0
    functionsReached:
    - getInput
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<double>
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:66,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 67
    functionName: PrintNumber::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/t18_waypoints.cpp
    functionUses: 0
    functionsReached:
    - InputPort<double>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 80
      start: 78
    functionDepth: 0
    functionLinenumber: 78
    functionLinenumberEnd: 80
    functionName: UseWaypoint::UseWaypoint
    functionSourceFile: /src/behaviortreecpp/examples/t18_waypoints.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void UseWaypoint(const std::string& name, const NodeConfig& config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:85,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:87,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:87,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 82
    functionDepth: 0
    functionLinenumber: 82
    functionLinenumberEnd: 95
    functionName: UseWaypoint::tick
    functionSourceFile: /src/behaviortreecpp/examples/t18_waypoints.cpp
    functionUses: 0
    functionsReached:
    - std::this_thread::sleep_for
    - getInput
    - std::chrono::milliseconds
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InputPort<Pose2D>
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:99,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 100
      start: 97
    functionDepth: 0
    functionLinenumber: 97
    functionLinenumberEnd: 100
    functionName: UseWaypoint::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/t18_waypoints.cpp
    functionUses: 0
    functionsReached:
    - InputPort<Pose2D>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:133,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:135,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:136,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:137,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:139,1
    - Dst: StdCoutLogger::enableTransitionToIdle
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:142,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t18_waypoints.cpp:144,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 147
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t18_waypoints.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - StdCoutLogger::enableTransitionToIdle
    - BehaviorTreeFactory::registerNodeType
    - auto::tickWhileRunning
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Point2D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18
      start: 15
    functionDepth: 0
    functionLinenumber: 15
    functionLinenumberEnd: 18
    functionName: operator==(const Point2D& p) const
    functionSourceFile: /src/behaviortreecpp/examples/t12_default_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator==(const Point2D& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' p'
    argTypes:
    - Point2D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 19
    functionDepth: 0
    functionLinenumber: 19
    functionLinenumberEnd: 22
    functionName: operator!=(const Point2D& p) const
    functionSourceFile: /src/behaviortreecpp/examples/t12_default_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const Point2D& p) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: add_field
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:28,1
    - Dst: add_field
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:29,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 30
      start: 26
    functionDepth: 0
    functionLinenumber: 26
    functionLinenumberEnd: 30
    functionName: BT_JSON_CONVERTER
    functionSourceFile: /src/behaviortreecpp/examples/t12_default_ports.cpp
    functionUses: 0
    functionsReached:
    - add_field
    linkageType: ''
    returnType: void
    signature: void BT_JSON_CONVERTER(Point2D, point)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::StartWith
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:37,1
    - Dst: StringView::remove_prefix
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:39,1
    - Dst: BT::convertFromJSON
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:40,1
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:42,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:43,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:45,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:47,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:48,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - str
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 50
      start: 35
    functionDepth: 2
    functionLinenumber: 35
    functionLinenumberEnd: 50
    functionName: BT::convertFromString<Point2D>(StringView str)
    functionSourceFile: /src/behaviortreecpp/examples/t12_default_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::StartWith
    - throwRuntimeError
    - BT::convertFromString
    - BT::splitString
    - BT::convertFromJSON
    - StringView::remove_prefix
    - auto::size
    linkageType: ''
    returnType: Point2D
    signature: Point2D BT::convertFromString<Point2D>(StringView str)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 60
      start: 58
    functionDepth: 0
    functionLinenumber: 58
    functionLinenumberEnd: 60
    functionName: NodeWithDefaultPoints::NodeWithDefaultPoints
    functionSourceFile: /src/behaviortreecpp/examples/t12_default_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NodeWithDefaultPoints(const std::string& name, const NodeConfig&
      config)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:67,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:69,1
    - Dst: getInput
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:71,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:73,1
    - Dst: getInput
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:75,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:77,1
    - Dst: getInput
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:79,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:81,1
    - Dst: getInput
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:83,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:85,1
    - Dst: getInput
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:87,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:89,1
    CyclomaticComplexity: 18
    EdgeCount: 18
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 92
      start: 62
    functionDepth: 0
    functionLinenumber: 62
    functionLinenumberEnd: 92
    functionName: NodeWithDefaultPoints::tick
    functionSourceFile: /src/behaviortreecpp/examples/t12_default_ports.cpp
    functionUses: 0
    functionsReached:
    - getInput
    - std::runtime_error
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<Point2D>
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:96,1
    - Dst: BT::InputPort<Point2D>
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:97,1
    - Dst: BT::InputPort<Point2D>
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:98,1
    - Dst: BT::InputPort<Point2D>
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:100,1
    - Dst: BT::InputPort<Point2D>
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:101,1
    - Dst: BT::InputPort<Point2D>
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 94
    functionDepth: 0
    functionLinenumber: 94
    functionLinenumberEnd: 105
    functionName: NodeWithDefaultPoints::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/t12_default_ports.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<Point2D>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::get
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:117,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:120,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:121,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:123,1
    - Dst: set
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:123,1
    - Dst: auto::subtrees::front
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:124,1
    - Dst: set
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:124,1
    - Dst: auto::tickOnce
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:126,1
    - Dst: toStr
      Src: /src/behaviortreecpp/examples/t12_default_ports.cpp:127,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 130
      start: 108
    functionDepth: 2
    functionLinenumber: 108
    functionLinenumberEnd: 130
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t12_default_ports.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::subtrees::front
    - toStr
    - set
    - BehaviorTreeFactory::registerNodeType
    - auto::tickOnce
    - BT::Blackboard::get
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t06_subtree_port_remapping.cpp:58,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t06_subtree_port_remapping.cpp:59,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/examples/t06_subtree_port_remapping.cpp:61,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/examples/t06_subtree_port_remapping.cpp:62,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t06_subtree_port_remapping.cpp:64,1
    - Dst: blackboard::debugMessage
      Src: /src/behaviortreecpp/examples/t06_subtree_port_remapping.cpp:68,1
    - Dst: blackboard::debugMessage
      Src: /src/behaviortreecpp/examples/t06_subtree_port_remapping.cpp:70,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 54
    functionDepth: 0
    functionLinenumber: 54
    functionLinenumberEnd: 73
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t06_subtree_port_remapping.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - blackboard::debugMessage
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - val
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 11
      start: 10
    functionDepth: 0
    functionLinenumber: 10
    functionLinenumberEnd: 11
    functionName: NoCopyObj::NoCopyObj
    functionSourceFile: /src/behaviortreecpp/examples/t08_additional_node_args.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NoCopyObj(int val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 13
      start: 13
    functionDepth: 0
    functionLinenumber: 13
    functionLinenumberEnd: 13
    functionName: NoCopyObj::NoCopyObj
    functionSourceFile: /src/behaviortreecpp/examples/t08_additional_node_args.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void NoCopyObj(const NoCopyObj&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 14
      start: 14
    functionDepth: 0
    functionLinenumber: 14
    functionLinenumberEnd: 14
    functionName: '& operator=(const NoCopyObj&)'
    functionSourceFile: /src/behaviortreecpp/examples/t08_additional_node_args.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: NoCopyObj
    signature: NoCopyObj & operator=(const NoCopyObj&)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 18
      start: 15
    functionDepth: 0
    functionLinenumber: 15
    functionLinenumberEnd: 18
    functionName: NoCopyObj::value
    functionSourceFile: /src/behaviortreecpp/examples/t08_additional_node_args.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int value()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 5
    argNames:
    - ' name'
    - ' config'
    - arg_int
    - arg_str
    - ' nc'
    argTypes:
    - std::string
    - NodeConfig
    - int
    - std::string
    - NoCopyObj
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 38
    functionDepth: 0
    functionLinenumber: 38
    functionLinenumberEnd: 41
    functionName: Action_A::Action_A
    functionSourceFile: /src/behaviortreecpp/examples/t08_additional_node_args.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void Action_A(const std::string& name, const NodeConfig& config, int
      arg_int,\n           std::string arg_str, NoCopyObj& nc)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name
      Src: /src/behaviortreecpp/examples/t08_additional_node_args.cpp:45,1
    - Dst: value
      Src: /src/behaviortreecpp/examples/t08_additional_node_args.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 48
    functionName: Action_A::tick
    functionSourceFile: /src/behaviortreecpp/examples/t08_additional_node_args.cpp
    functionUses: 0
    functionsReached:
    - value
    - name
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 52
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 52
    functionName: Action_A::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/t08_additional_node_args.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 64
    functionDepth: 0
    functionLinenumber: 64
    functionLinenumberEnd: 66
    functionName: Action_B::Action_B
    functionSourceFile: /src/behaviortreecpp/examples/t08_additional_node_args.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Action_B(const std::string& name, const NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - arg_int
    - arg_str
    argTypes:
    - int
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 73
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 73
    functionName: Action_B::initialize
    functionSourceFile: /src/behaviortreecpp/examples/t08_additional_node_args.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void initialize(int arg_int, std::string arg_str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: name
      Src: /src/behaviortreecpp/examples/t08_additional_node_args.cpp:77,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 79
    functionName: Action_B::tick
    functionSourceFile: /src/behaviortreecpp/examples/t08_additional_node_args.cpp
    functionUses: 0
    functionsReached:
    - name
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 83
      start: 80
    functionDepth: 0
    functionLinenumber: 80
    functionLinenumberEnd: 83
    functionName: Action_B::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/t08_additional_node_args.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t08_additional_node_args.cpp:112,1
    - Dst: std::ref
      Src: /src/behaviortreecpp/examples/t08_additional_node_args.cpp:113,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t08_additional_node_args.cpp:116,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/examples/t08_additional_node_args.cpp:118,1
    - Dst: dynamic_cast<Action_B*>
      Src: /src/behaviortreecpp/examples/t08_additional_node_args.cpp:121,1
    - Dst: auto::initialize
      Src: /src/behaviortreecpp/examples/t08_additional_node_args.cpp:123,1
    - Dst: auto::applyVisitor
      Src: /src/behaviortreecpp/examples/t08_additional_node_args.cpp:127,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t08_additional_node_args.cpp:129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 103
    functionDepth: 0
    functionLinenumber: 103
    functionLinenumberEnd: 136
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t08_additional_node_args.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - std::ref
    - auto::tickWhileRunning
    - BehaviorTreeFactory::registerNodeType
    - auto::initialize
    - dynamic_cast<Action_B*>
    - auto::applyVisitor
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 27
      start: 25
    functionDepth: 0
    functionLinenumber: 25
    functionLinenumberEnd: 27
    functionName: SetTask::SetTask
    functionSourceFile: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SetTask(const std::string& name, const BT::NodeConfig& config)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: getInput<std::string>
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:31,1
    - Dst: setOutput<Command>
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:34,1
    - Dst: setOutput<Command>
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:38,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 29
    functionDepth: 0
    functionLinenumber: 29
    functionLinenumberEnd: 41
    functionName: SetTask::tick
    functionSourceFile: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp
    functionUses: 0
    functionsReached:
    - setOutput<Command>
    - getInput<std::string>
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:45,1
    - Dst: BT::OutputPort<Command>
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:45,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 46
    functionName: SetTask::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<std::string>
    - BT::OutputPort<Command>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:91,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:94,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:95,1
    - Dst: BT::writeTreeNodesModelXML
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:100,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:102,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:104,1
    - Dst: BT::WriteTreeToXML
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:107,1
    - Dst: BT::isStatusCompleted
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:119,1
    - Dst: name
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:121,1
    - Dst: config
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:123,1
    - Dst: get
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:123,1
    - Dst: std::get<TaskA>
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:124,1
    - Dst: nlohmann::json::dump
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:127,1
    - Dst: name
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:129,1
    - Dst: config
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:131,1
    - Dst: get
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:131,1
    - Dst: std::get<TaskB>
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:132,1
    - Dst: nlohmann::json::dump
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:135,1
    - Dst: BT::SqliteLogger::setAdditionalCallback
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:140,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:145,1
    - Dst: std::this_thread::sleep_for
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:146,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp:146,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 24
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 89
    functionDepth: 4
    functionLinenumber: 89
    functionLinenumberEnd: 150
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp
    functionUses: 0
    functionsReached:
    - get
    - BT::isStatusCompleted
    - BT::BehaviorTreeFactory::createTree
    - auto::tickWhileRunning
    - config
    - nlohmann::json::dump
    - BT::WriteTreeToXML
    - BT::writeTreeNodesModelXML
    - name
    - BT::BehaviorTreeFactory::registerNodeType
    - BT::SqliteLogger::setAdditionalCallback
    - std::this_thread::sleep_for
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - std::chrono::milliseconds
    - std::get<TaskA>
    - std::get<TaskB>
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/examples/t14_subtree_model.cpp:74,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/examples/t14_subtree_model.cpp:75,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/examples/t14_subtree_model.cpp:77,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t14_subtree_model.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 91
      start: 71
    functionDepth: 0
    functionLinenumber: 71
    functionLinenumberEnd: 91
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t14_subtree_model.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTree
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - auto::tickWhileRunning
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:22,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - goal
    argTypes:
    - Point3D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 24
    functionName: MyLegacyMoveTo::go
    functionSourceFile: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp
    functionUses: 0
    functionsReached:
    - printf
    linkageType: ''
    returnType: bool
    signature: bool go(Point3D goal)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:35,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:36,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:38,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:43,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:44,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:45,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - key
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 48
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp
    functionUses: 39
    functionsReached:
    - RuntimeError
    - auto::size
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: Point3D
    signature: Point3D convertFromString(StringView key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:35,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:36,1
    - Dst: RuntimeError
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:38,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:43,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:44,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:45,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - key
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 32
    functionDepth: 2
    functionLinenumber: 32
    functionLinenumberEnd: 48
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp
    functionUses: 40
    functionsReached:
    - RuntimeError
    - auto::size
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: Point3D
    signature: Point3D convertFromString(StringView key)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getInput
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:79,1
    - Dst: MyLegacyMoveTo::go
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:81,1
    - Dst: BT::InputPort<Point3D>
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:90,1
    - Dst: BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:91,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:93,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp:95,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 69
    functionDepth: 1
    functionLinenumber: 69
    functionLinenumberEnd: 98
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - auto::tickWhileRunning
    - getInput
    - MyLegacyMoveTo::go
    - BehaviorTreeFactory::registerSimpleAction
    - BT::InputPort<Point3D>
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:51,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:52,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:53,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:57,1
    - Dst: auto::applyVisitor
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:61,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:62,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:65,1
    - Dst: BT::BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:76,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:77,1
    - Dst: BT::BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:82,1
    - Dst: getInput
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:83,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:84,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:96,1
    - Dst: BT::BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:113,1
    - Dst: BT::BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:116,1
    - Dst: BT::BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:120,1
    - Dst: BT::BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:123,1
    - Dst: BT::BehaviorTreeFactory::loadSubstitutionRuleFromJSON
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:149,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:156,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp:158,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 161
      start: 48
    functionDepth: 3
    functionLinenumber: 48
    functionLinenumberEnd: 161
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::addSubstitutionRule
    - BT::BehaviorTreeFactory::createTree
    - BT::BehaviorTreeFactory::loadSubstitutionRuleFromJSON
    - auto::tickWhileRunning
    - BT::BehaviorTreeFactory::registerSimpleAction
    - auto::value
    - getInput
    - BT::BehaviorTreeFactory::registerNodeType
    - fullPath
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - std::chrono::milliseconds
    - auto::applyVisitor
    linkageType: ''
    returnType: int
    signature: int main(int /*argc*/, char** /*argv*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/examples/t05_crossdoor.cpp:45,1
    - Dst: CrossDoor::registerNodes
      Src: /src/behaviortreecpp/examples/t05_crossdoor.cpp:48,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/examples/t05_crossdoor.cpp:54,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/examples/t05_crossdoor.cpp:55,1
    - Dst: BT::printTreeRecursively
      Src: /src/behaviortreecpp/examples/t05_crossdoor.cpp:58,1
    - Dst: auto::rootNode
      Src: /src/behaviortreecpp/examples/t05_crossdoor.cpp:58,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t05_crossdoor.cpp:61,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 43
    functionDepth: 1
    functionLinenumber: 43
    functionLinenumberEnd: 64
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t05_crossdoor.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTree
    - auto::tickWhileRunning
    - auto::rootNode
    - CrossDoor::registerNodes
    - BT::printTreeRecursively
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t17_blackboard_backup.cpp:35,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/examples/t17_blackboard_backup.cpp:36,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/examples/t17_blackboard_backup.cpp:38,1
    - Dst: BlackboardBackup
      Src: /src/behaviortreecpp/examples/t17_blackboard_backup.cpp:46,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t17_blackboard_backup.cpp:47,1
    - Dst: BlackboardRestore
      Src: /src/behaviortreecpp/examples/t17_blackboard_backup.cpp:50,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t17_blackboard_backup.cpp:51,1
    - Dst: ExportTreeToJSON
      Src: /src/behaviortreecpp/examples/t17_blackboard_backup.cpp:55,1
    - Dst: nlohmann::json::dump
      Src: /src/behaviortreecpp/examples/t17_blackboard_backup.cpp:61,1
    - Dst: ImportTreeFromJSON
      Src: /src/behaviortreecpp/examples/t17_blackboard_backup.cpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 67
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 67
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t17_blackboard_backup.cpp
    functionUses: 0
    functionsReached:
    - ImportTreeFromJSON
    - auto::tickWhileRunning
    - nlohmann::json::dump
    - BehaviorTreeFactory::registerNodeType
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - BlackboardRestore
    - ExportTreeToJSON
    - BlackboardBackup
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 22
    functionName: ThinkRuntimePort::ThinkRuntimePort
    functionSourceFile: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ThinkRuntimePort(const std::string& name, const BT::NodeConfig&
      config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: setOutput
      Src: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp:26,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 28
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 28
    functionName: ThinkRuntimePort::tick
    functionSourceFile: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp
    functionUses: 0
    functionsReached:
    - setOutput
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 36
      start: 34
    functionDepth: 0
    functionLinenumber: 34
    functionLinenumberEnd: 36
    functionName: SayRuntimePort::SayRuntimePort
    functionSourceFile: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SayRuntimePort(const std::string& name, const BT::NodeConfig&
      config)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getInput<std::string>
      Src: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp:41,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp:44,1
    - Dst: auto::error
      Src: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp:44,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp:46,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 48
      start: 39
    functionDepth: 2
    functionLinenumber: 39
    functionLinenumberEnd: 48
    functionName: SayRuntimePort::tick
    functionSourceFile: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp
    functionUses: 0
    functionsReached:
    - auto::error
    - throwRuntimeError
    - getInput<std::string>
    - auto::value
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::OutputPort<std::string>
      Src: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp:57,1
    - Dst: BehaviorTreeFactory::registerBuilder
      Src: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp:58,1
    - Dst: CreateManifest<ThinkRuntimePort>
      Src: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp:59,1
    - Dst: CreateBuilder<ThinkRuntimePort>
      Src: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp:60,1
    - Dst: BT::InputPort<std::string>
      Src: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp:62,1
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp:63,1
    - Dst: BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp:65,1
    - Dst: BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp:66,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp:67,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 51
    functionDepth: 0
    functionLinenumber: 51
    functionLinenumberEnd: 70
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp
    functionUses: 0
    functionsReached:
    - auto::tickWhileRunning
    - CreateManifest<ThinkRuntimePort>
    - BehaviorTreeFactory::registerNodeType
    - BT::InputPort<std::string>
    - BT::OutputPort<std::string>
    - BehaviorTreeFactory::registerBehaviorTreeFromText
    - BehaviorTreeFactory::createTree
    - CreateBuilder<ThinkRuntimePort>
    - BehaviorTreeFactory::registerBuilder
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:52,1
    - Dst: BT::BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:53,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:54,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:57,1
    - Dst: auto::applyVisitor
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:60,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:61,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:64,1
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:65,1
    - Dst: BT::BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:68,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:69,1
    - Dst: BT::BehaviorTreeFactory::registerSimpleAction
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:74,1
    - Dst: getInput
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:75,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:76,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:82,1
    - Dst: BT::BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:89,1
    - Dst: BT::BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:90,1
    - Dst: BT::BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:91,1
    - Dst: BT::BehaviorTreeFactory::addSubstitutionRule
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:92,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:94,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:95,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:97,1
    - Dst: BT::toStr
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:98,1
    - Dst: auto::getEntry
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:99,1
    - Dst: auto::get
      Src: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp:101,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 49
    functionDepth: 2
    functionLinenumber: 49
    functionLinenumberEnd: 106
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::addSubstitutionRule
    - BT::BehaviorTreeFactory::createTree
    - auto::tickWhileRunning
    - BT::BehaviorTreeFactory::registerSimpleAction
    - auto::value
    - BT::Blackboard::create
    - BT::toStr
    - getInput
    - BT::BehaviorTreeFactory::registerNodeType
    - auto::get
    - auto::getEntry
    - fullPath
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - std::chrono::milliseconds
    - auto::applyVisitor
    linkageType: ''
    returnType: int
    signature: int main(int /*argc*/, char** /*argv*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/examples/t10_observer.cpp:41,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/examples/t10_observer.cpp:43,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/examples/t10_observer.cpp:44,1
    - Dst: BT::printTreeRecursively
      Src: /src/behaviortreecpp/examples/t10_observer.cpp:47,1
    - Dst: auto::rootNode
      Src: /src/behaviortreecpp/examples/t10_observer.cpp:47,1
    - Dst: auto::applyVisitor
      Src: /src/behaviortreecpp/examples/t10_observer.cpp:59,1
    - Dst: UID
      Src: /src/behaviortreecpp/examples/t10_observer.cpp:60,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/examples/t10_observer.cpp:60,1
    - Dst: UID
      Src: /src/behaviortreecpp/examples/t10_observer.cpp:61,1
    - Dst: fullPath
      Src: /src/behaviortreecpp/examples/t10_observer.cpp:61,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t10_observer.cpp:64,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/examples/t10_observer.cpp:67,1
    - Dst: assert
      Src: /src/behaviortreecpp/examples/t10_observer.cpp:68,1
    - Dst: BT::TreeObserver::getStatistics
      Src: /src/behaviortreecpp/examples/t10_observer.cpp:74,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 13
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (last_action_stats.transitions_count > 0)
      pos:
        line_end: 67
        line_start: 67
        source_file: /src/behaviortreecpp/examples/t10_observer.cpp
    constantsTouched: []
    func_position:
      end: 81
      start: 39
    functionDepth: 1
    functionLinenumber: 39
    functionLinenumberEnd: 81
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t10_observer.cpp
    functionUses: 0
    functionsReached:
    - UID
    - BT::BehaviorTreeFactory::createTree
    - auto::tickWhileRunning
    - auto::rootNode
    - assert
    - BT::printTreeRecursively
    - BT::TreeObserver::getStatistics
    - fullPath
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - auto::applyVisitor
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 15
      start: 13
    functionDepth: 0
    functionLinenumber: 13
    functionLinenumberEnd: 15
    functionName: PushIntoVector::PushIntoVector
    functionSourceFile: /src/behaviortreecpp/examples/t13_access_by_ref.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PushIntoVector(const std::string& name, const NodeConfig& config)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: getInput<int>
      Src: /src/behaviortreecpp/examples/t13_access_by_ref.cpp:19,1
    - Dst: getLockedPortContent
      Src: /src/behaviortreecpp/examples/t13_access_by_ref.cpp:20,1
    - Dst: auto::empty
      Src: /src/behaviortreecpp/examples/t13_access_by_ref.cpp:26,1
    - Dst: auto::assign
      Src: /src/behaviortreecpp/examples/t13_access_by_ref.cpp:31,1
    - Dst: auto::castPtr
      Src: /src/behaviortreecpp/examples/t13_access_by_ref.cpp:34,1
    - Dst: auto*::push_back
      Src: /src/behaviortreecpp/examples/t13_access_by_ref.cpp:37,1
    - Dst: auto*::size
      Src: /src/behaviortreecpp/examples/t13_access_by_ref.cpp:39,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 14
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 47
      start: 17
    functionDepth: 2
    functionLinenumber: 17
    functionLinenumberEnd: 47
    functionName: PushIntoVector::tick
    functionSourceFile: /src/behaviortreecpp/examples/t13_access_by_ref.cpp
    functionUses: 0
    functionsReached:
    - getLockedPortContent
    - getInput<int>
    - auto*::size
    - auto*::push_back
    - auto::castPtr
    - auto::assign
    - auto::empty
    linkageType: ''
    returnType: NodeStatus
    signature: NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::BidirectionalPort<std::vector<int>>
      Src: /src/behaviortreecpp/examples/t13_access_by_ref.cpp:51,1
    - Dst: BT::InputPort<int>
      Src: /src/behaviortreecpp/examples/t13_access_by_ref.cpp:51,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 53
      start: 49
    functionDepth: 0
    functionLinenumber: 49
    functionLinenumberEnd: 53
    functionName: PushIntoVector::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/t13_access_by_ref.cpp
    functionUses: 0
    functionsReached:
    - BT::BidirectionalPort<std::vector<int>>
    - BT::InputPort<int>
    linkageType: ''
    returnType: PortsList
    signature: PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerNodeType
      Src: /src/behaviortreecpp/examples/t13_access_by_ref.cpp:76,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/examples/t13_access_by_ref.cpp:78,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/t13_access_by_ref.cpp:79,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 81
      start: 73
    functionDepth: 0
    functionLinenumber: 73
    functionLinenumberEnd: 81
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/t13_access_by_ref.cpp
    functionUses: 0
    functionsReached:
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerNodeType
    - auto::tickWhileRunning
    linkageType: ''
    returnType: int
    signature: int main()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BehaviorTreeFactory::registerFromPlugin
      Src: /src/behaviortreecpp/examples/plugin_example/plugin_executor.cpp:37,1
    - Dst: writeTreeNodesModelXML
      Src: /src/behaviortreecpp/examples/plugin_example/plugin_executor.cpp:40,1
    - Dst: BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/examples/plugin_example/plugin_executor.cpp:42,1
    - Dst: auto::tickWhileRunning
      Src: /src/behaviortreecpp/examples/plugin_example/plugin_executor.cpp:43,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - argc
    - argv
    argTypes:
    - int
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 46
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 46
    functionName: main
    functionSourceFile: /src/behaviortreecpp/examples/plugin_example/plugin_executor.cpp
    functionUses: 0
    functionsReached:
    - writeTreeNodesModelXML
    - BehaviorTreeFactory::createTreeFromText
    - BehaviorTreeFactory::registerFromPlugin
    - auto::tickWhileRunning
    linkageType: ''
    returnType: int
    signature: int main(int argc, char** argv)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 2
    argNames:
    - ' dest'
    - ' pose'
    argTypes:
    - nlohmann::json
    - Vector4D
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 18
    functionDepth: 0
    functionLinenumber: 18
    functionLinenumberEnd: 24
    functionName: ToJson
    functionSourceFile: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ToJson(nlohmann::json& dest, const Vector4D& pose)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp:32,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp:33,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp:35,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp:39,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp:40,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp:41,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp:42,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - key
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 44
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp
    functionUses: 41
    functionsReached:
    - throwRuntimeError
    - auto::size
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: Vector4D
    signature: Vector4D convertFromString(StringView key)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: BT::splitString
      Src: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp:32,1
    - Dst: auto::size
      Src: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp:33,1
    - Dst: throwRuntimeError
      Src: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp:35,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp:39,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp:40,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp:41,1
    - Dst: BT::convertFromString
      Src: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp:42,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - key
    argTypes:
    - StringView
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 30
    functionDepth: 2
    functionLinenumber: 30
    functionLinenumberEnd: 44
    functionName: BT::convertFromString
    functionSourceFile: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp
    functionUses: 42
    functionsReached:
    - throwRuntimeError
    - auto::size
    - BT::convertFromString
    - BT::splitString
    linkageType: ''
    returnType: Vector4D
    signature: Vector4D convertFromString(StringView key)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - ' name'
    - ' config'
    argTypes:
    - std::string
    - BT::NodeConfig
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 10
      start: 8
    functionDepth: 0
    functionLinenumber: 8
    functionLinenumberEnd: 10
    functionName: PrintVector::PrintVector
    functionSourceFile: /src/behaviortreecpp/examples/plugin_example/plugin_action.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void PrintVector(const std::string& name, const BT::NodeConfig& config)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getInput<Vector4D>
      Src: /src/behaviortreecpp/examples/plugin_example/plugin_action.cpp:14,1
    - Dst: printf
      Src: /src/behaviortreecpp/examples/plugin_example/plugin_action.cpp:15,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 17
      start: 12
    functionDepth: 0
    functionLinenumber: 12
    functionLinenumberEnd: 17
    functionName: PrintVector::tick
    functionSourceFile: /src/behaviortreecpp/examples/plugin_example/plugin_action.cpp
    functionUses: 0
    functionsReached:
    - getInput<Vector4D>
    - printf
    linkageType: ''
    returnType: BT::NodeStatus
    signature: BT::NodeStatus tick() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: BT::InputPort<Vector4D>
      Src: /src/behaviortreecpp/examples/plugin_example/plugin_action.cpp:22,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 20
    functionDepth: 0
    functionLinenumber: 20
    functionLinenumberEnd: 23
    functionName: PrintVector::providedPorts
    functionSourceFile: /src/behaviortreecpp/examples/plugin_example/plugin_action.cpp
    functionUses: 0
    functionsReached:
    - BT::InputPort<Vector4D>
    linkageType: ''
    returnType: BT::PortsList
    signature: BT::PortsList providedPorts()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: registerNodeType
      Src: /src/behaviortreecpp/examples/plugin_example/plugin_action.cpp:34,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 35
      start: 32
    functionDepth: 0
    functionLinenumber: 32
    functionLinenumberEnd: 35
    functionName: BT_REGISTER_NODES
    functionSourceFile: /src/behaviortreecpp/examples/plugin_example/plugin_action.cpp
    functionUses: 0
    functionsReached:
    - registerNodeType
    linkageType: ''
    returnType: void
    signature: void BT_REGISTER_NODES(factory)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 108
    functionDepth: 0
    functionLinenumber: 108
    functionLinenumberEnd: 108
    functionName: operator T*() const
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator T*() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - X
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 145
    functionDepth: 0
    functionLinenumber: 145
    functionLinenumberEnd: 146
    functionName: FLATBUFFERS_STRING_EXPAND
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLATBUFFERS_STRING_EXPAND(X)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - X
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 147
      start: 146
    functionDepth: 0
    functionLinenumber: 146
    functionLinenumberEnd: 147
    functionName: FLATBUFFERS_STRING
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLATBUFFERS_STRING(X)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - func
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 198
    functionName: FLATBUFFERS_DELETE_FUNC
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLATBUFFERS_DELETE_FUNC(func)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - func
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 200
    functionName: FLATBUFFERS_DELETE_FUNC
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLATBUFFERS_DELETE_FUNC(func)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - type
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 286
      start: 285
    functionDepth: 0
    functionLinenumber: 285
    functionLinenumberEnd: 286
    functionName: FLATBUFFERS_SUPPRESS_UBSAN
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLATBUFFERS_SUPPRESS_UBSAN(type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - type
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 287
    functionDepth: 0
    functionLinenumber: 287
    functionLinenumberEnd: 288
    functionName: FLATBUFFERS_SUPPRESS_UBSAN
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLATBUFFERS_SUPPRESS_UBSAN(type)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionName: flatbuffers::IsConstTrue
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FLATBUFFERS_CONSTEXPR
    signature: FLATBUFFERS_CONSTEXPR IsConstTrue(T t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - t
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 297
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 297
    functionName: flatbuffers::IsConstTrue
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: FLATBUFFERS_CONSTEXPR
    signature: FLATBUFFERS_CONSTEXPR IsConstTrue(T t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - attr
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 305
      start: 304
    functionDepth: 0
    functionLinenumber: 304
    functionLinenumberEnd: 305
    functionName: FLATBUFFERS_ATTRIBUTE
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLATBUFFERS_ATTRIBUTE(attr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 307
      start: 306
    functionDepth: 0
    functionLinenumber: 306
    functionLinenumberEnd: 307
    functionName: FLATBUFFERS_FALLTHROUGH
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLATBUFFERS_FALLTHROUGH()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 311
    functionDepth: 0
    functionLinenumber: 311
    functionLinenumberEnd: 312
    functionName: FLATBUFFERS_FALLTHROUGH
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLATBUFFERS_FALLTHROUGH()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 314
      start: 313
    functionDepth: 0
    functionLinenumber: 313
    functionLinenumberEnd: 314
    functionName: FLATBUFFERS_FALLTHROUGH
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLATBUFFERS_FALLTHROUGH()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - align
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 360
    functionDepth: 0
    functionLinenumber: 360
    functionLinenumberEnd: 363
    functionName: flatbuffers::VerifyAlignmentRequirements
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool VerifyAlignmentRequirements(size_t align, size_t min_align = 1)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLATBUFFERS_BYTESWAP16
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:395,1
    - Dst: FLATBUFFERS_BYTESWAP32
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:399,1
    - Dst: FLATBUFFERS_BYTESWAP64
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:403,1
    - Dst: FLATBUFFERS_ASSERT
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:406,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - t
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 370
    functionDepth: 1
    functionLinenumber: 370
    functionLinenumberEnd: 409
    functionName: flatbuffers::EndianSwap
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached:
    - FLATBUFFERS_BYTESWAP16
    - FLATBUFFERS_BYTESWAP32
    - FLATBUFFERS_ASSERT
    - FLATBUFFERS_BYTESWAP64
    linkageType: ''
    returnType: T
    signature: T EndianSwap(T t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 380
    functionName: FLATBUFFERS_BYTESWAP64
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLATBUFFERS_BYTESWAP64(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 383
    functionDepth: 0
    functionLinenumber: 383
    functionLinenumberEnd: 385
    functionName: FLATBUFFERS_BYTESWAP16
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLATBUFFERS_BYTESWAP16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: flatbuffers::EndianSwap
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 416
    functionDepth: 2
    functionLinenumber: 416
    functionLinenumberEnd: 422
    functionName: flatbuffers::EndianScalar
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached:
    - flatbuffers::EndianSwap
    linkageType: ''
    returnType: T
    signature: T EndianScalar(T t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: flatbuffers::EndianScalar
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:428,1
    - Dst: reinterpret_cast<const T *>
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 427
    functionDepth: 3
    functionLinenumber: 427
    functionLinenumberEnd: 429
    functionName: flatbuffers::ReadScalar
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached:
    - reinterpret_cast<const T *>
    - flatbuffers::EndianScalar
    linkageType: ''
    returnType: T
    signature: T ReadScalar(const void *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<T *>
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:442,1
    - Dst: flatbuffers::EndianScalar
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - t
    argTypes:
    - void*
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 441
    functionDepth: 3
    functionLinenumber: 441
    functionLinenumberEnd: 443
    functionName: flatbuffers::WriteScalar
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 4
    functionsReached:
    - reinterpret_cast<T *>
    - flatbuffers::EndianScalar
    linkageType: ''
    returnType: void
    signature: void WriteScalar(void *p, T t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<uoffset_t *>
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:447,1
    - Dst: flatbuffers::EndianScalar
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - t
    argTypes:
    - void*
    - Offset<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 446
    functionDepth: 3
    functionLinenumber: 446
    functionLinenumberEnd: 448
    functionName: flatbuffers::WriteScalar
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 4
    functionsReached:
    - reinterpret_cast<uoffset_t *>
    - flatbuffers::EndianScalar
    linkageType: ''
    returnType: void
    signature: void WriteScalar(void *p, Offset<T> t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buf_size
    - scalar_size
    argTypes:
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 458
    functionDepth: 0
    functionLinenumber: 458
    functionLinenumberEnd: 460
    functionName: flatbuffers::PaddingBytes
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t PaddingBytes(size_t buf_size, size_t scalar_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - e
    - def
    argTypes:
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 465
    functionName: flatbuffers::IsTheSameAs
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool IsTheSameAs(T e, T def)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - e
    - def
    argTypes:
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 470
    functionDepth: 0
    functionLinenumber: 470
    functionLinenumberEnd: 472
    functionName: flatbuffers::IsFloatTheSameAs
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool IsFloatTheSameAs(T e, T def)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: flatbuffers::IsFloatTheSameAs
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:474,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - e
    - def
    argTypes:
    - float
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 473
    functionDepth: 1
    functionLinenumber: 473
    functionLinenumberEnd: 475
    functionName: flatbuffers::IsTheSameAs
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached:
    - flatbuffers::IsFloatTheSameAs
    linkageType: ''
    returnType: bool
    signature: bool IsTheSameAs<float>(float e, float def)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: flatbuffers::IsFloatTheSameAs
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:477,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - e
    - def
    argTypes:
    - double
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 476
    functionDepth: 1
    functionLinenumber: 476
    functionLinenumberEnd: 478
    functionName: flatbuffers::IsTheSameAs
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached:
    - flatbuffers::IsFloatTheSameAs
    linkageType: ''
    returnType: bool
    signature: bool IsTheSameAs<double>(double e, double def)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - v
    - low
    - high
    argTypes:
    - T
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 487
    functionName: flatbuffers::IsOutRange
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool IsOutRange(const T &v, const T &low, const T &high)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: flatbuffers::IsOutRange
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:492,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - low
    - high
    argTypes:
    - T
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 491
    functionDepth: 1
    functionLinenumber: 491
    functionLinenumberEnd: 493
    functionName: flatbuffers::IsInRange
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached:
    - flatbuffers::IsOutRange
    linkageType: ''
    returnType: bool
    signature: bool IsInRange(const T &v, const T &low, const T &high)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 1
    argNames:
    - align
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 363
      start: 360
    functionDepth: 0
    functionLinenumber: 360
    functionLinenumberEnd: 363
    functionName: flatbuffers::VerifyAlignmentRequirements
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool VerifyAlignmentRequirements(size_t align, size_t min_align = 1)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: FLATBUFFERS_BYTESWAP16
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:395,1
    - Dst: FLATBUFFERS_BYTESWAP32
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:399,1
    - Dst: FLATBUFFERS_BYTESWAP64
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:403,1
    - Dst: FLATBUFFERS_ASSERT
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:406,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 19
    argCount: 1
    argNames:
    - t
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 409
      start: 370
    functionDepth: 1
    functionLinenumber: 370
    functionLinenumberEnd: 409
    functionName: flatbuffers::EndianSwap
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 1
    functionsReached:
    - FLATBUFFERS_BYTESWAP16
    - FLATBUFFERS_BYTESWAP32
    - FLATBUFFERS_ASSERT
    - FLATBUFFERS_BYTESWAP64
    linkageType: ''
    returnType: T
    signature: T EndianSwap(T t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 380
      start: 378
    functionDepth: 0
    functionLinenumber: 378
    functionLinenumberEnd: 380
    functionName: FLATBUFFERS_BYTESWAP64
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLATBUFFERS_BYTESWAP64(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 385
      start: 383
    functionDepth: 0
    functionLinenumber: 383
    functionLinenumberEnd: 385
    functionName: FLATBUFFERS_BYTESWAP16
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: FLATBUFFERS_BYTESWAP16(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: flatbuffers::EndianSwap
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - t
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 416
    functionDepth: 2
    functionLinenumber: 416
    functionLinenumberEnd: 422
    functionName: flatbuffers::EndianScalar
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 3
    functionsReached:
    - flatbuffers::EndianSwap
    linkageType: ''
    returnType: T
    signature: T EndianScalar(T t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: flatbuffers::EndianScalar
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:428,1
    - Dst: reinterpret_cast<const T *>
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 429
      start: 427
    functionDepth: 3
    functionLinenumber: 427
    functionLinenumberEnd: 429
    functionName: flatbuffers::ReadScalar
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached:
    - reinterpret_cast<const T *>
    - flatbuffers::EndianScalar
    linkageType: ''
    returnType: T
    signature: T ReadScalar(const void *p)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<T *>
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:442,1
    - Dst: flatbuffers::EndianScalar
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - t
    argTypes:
    - void*
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 443
      start: 441
    functionDepth: 3
    functionLinenumber: 441
    functionLinenumberEnd: 443
    functionName: flatbuffers::WriteScalar
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 4
    functionsReached:
    - reinterpret_cast<T *>
    - flatbuffers::EndianScalar
    linkageType: ''
    returnType: void
    signature: void WriteScalar(void *p, T t)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<uoffset_t *>
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:447,1
    - Dst: flatbuffers::EndianScalar
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - t
    argTypes:
    - void*
    - Offset<T>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 446
    functionDepth: 3
    functionLinenumber: 446
    functionLinenumberEnd: 448
    functionName: flatbuffers::WriteScalar
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 4
    functionsReached:
    - reinterpret_cast<uoffset_t *>
    - flatbuffers::EndianScalar
    linkageType: ''
    returnType: void
    signature: void WriteScalar(void *p, Offset<T> t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - buf_size
    - scalar_size
    argTypes:
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 460
      start: 458
    functionDepth: 0
    functionLinenumber: 458
    functionLinenumberEnd: 460
    functionName: flatbuffers::PaddingBytes
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t PaddingBytes(size_t buf_size, size_t scalar_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - e
    - def
    argTypes:
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 465
      start: 465
    functionDepth: 0
    functionLinenumber: 465
    functionLinenumberEnd: 465
    functionName: flatbuffers::IsTheSameAs
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool IsTheSameAs(T e, T def)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 2
    argCount: 2
    argNames:
    - e
    - def
    argTypes:
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 470
    functionDepth: 0
    functionLinenumber: 470
    functionLinenumberEnd: 472
    functionName: flatbuffers::IsFloatTheSameAs
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool IsFloatTheSameAs(T e, T def)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: flatbuffers::IsFloatTheSameAs
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:474,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - e
    - def
    argTypes:
    - float
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 475
      start: 473
    functionDepth: 1
    functionLinenumber: 473
    functionLinenumberEnd: 475
    functionName: flatbuffers::IsTheSameAs
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached:
    - flatbuffers::IsFloatTheSameAs
    linkageType: ''
    returnType: bool
    signature: bool IsTheSameAs<float>(float e, float def)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: flatbuffers::IsFloatTheSameAs
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:477,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - e
    - def
    argTypes:
    - double
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 478
      start: 476
    functionDepth: 1
    functionLinenumber: 476
    functionLinenumberEnd: 478
    functionName: flatbuffers::IsTheSameAs
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached:
    - flatbuffers::IsFloatTheSameAs
    linkageType: ''
    returnType: bool
    signature: bool IsTheSameAs<double>(double e, double def)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 3
    argNames:
    - v
    - low
    - high
    argTypes:
    - T
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 487
      start: 485
    functionDepth: 0
    functionLinenumber: 485
    functionLinenumberEnd: 487
    functionName: flatbuffers::IsOutRange
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool IsOutRange(const T &v, const T &low, const T &high)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: flatbuffers::IsOutRange
      Src: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h:492,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - low
    - high
    argTypes:
    - T
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 493
      start: 491
    functionDepth: 1
    functionLinenumber: 491
    functionLinenumberEnd: 493
    functionName: flatbuffers::IsInRange
    functionSourceFile: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    functionUses: 0
    functionsReached:
    - flatbuffers::IsOutRange
    linkageType: ''
    returnType: bool
    signature: bool IsInRange(const T &v, const T &low, const T &high)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - a
    - ','
    - b
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 22
      start: 21
    functionDepth: 0
    functionLinenumber: 21
    functionLinenumberEnd: 22
    functionName: pthread_mutex_init
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: pthread_mutex_init(a, b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 23
      start: 22
    functionDepth: 0
    functionLinenumber: 22
    functionLinenumberEnd: 23
    functionName: pthread_mutex_lock
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: pthread_mutex_lock(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 24
      start: 23
    functionDepth: 0
    functionLinenumber: 23
    functionLinenumberEnd: 24
    functionName: pthread_mutex_unlock
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: pthread_mutex_unlock(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - a
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 25
      start: 24
    functionDepth: 0
    functionLinenumber: 24
    functionLinenumberEnd: 25
    functionName: pthread_mutex_destroy
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: pthread_mutex_destroy(a)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 44
      start: 43
    functionDepth: 0
    functionLinenumber: 43
    functionLinenumberEnd: 44
    functionName: ARRAY_SIZE
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ARRAY_SIZE(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetCurrentThreadId
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:94,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 95
      start: 93
    functionDepth: 0
    functionLinenumber: 93
    functionLinenumberEnd: 95
    functionName: get_cur_thread_id
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached:
    - GetCurrentThreadId
    linkageType: ''
    returnType: int
    signature: int get_cur_thread_id()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetCurrentProcessId
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 98
      start: 96
    functionDepth: 0
    functionLinenumber: 96
    functionLinenumberEnd: 98
    functionName: get_cur_process_id
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached:
    - GetCurrentProcessId
    linkageType: ''
    returnType: int
    signature: int get_cur_process_id()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: QueryPerformanceFrequency
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:104,1
    - Dst: QueryPerformanceCounter
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:105,1
    - Dst: QueryPerformanceCounter
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:108,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 110
      start: 102
    functionDepth: 0
    functionLinenumber: 102
    functionLinenumberEnd: 110
    functionName: mtr_time_s
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached:
    - QueryPerformanceCounter
    - QueryPerformanceFrequency
    linkageType: ''
    returnType: double
    signature: double mtr_time_s()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:115,1
    - Dst: mtr_flush
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:116,1
    - Dst: mtr_shutdown
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:117,1
    - Dst: ExitProcess
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:119,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - fdwCtrlType
    argTypes:
    - DWORD
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 120
      start: 113
    functionDepth: 1
    functionLinenumber: 113
    functionLinenumberEnd: 120
    functionName: CtrlHandler
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached:
    - ExitProcess
    - mtr_flush
    - printf
    - mtr_shutdown
    linkageType: ''
    returnType: BOOL
    signature: BOOL CtrlHandler(DWORD fdwCtrlType)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SetConsoleCtrlHandler
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 125
      start: 122
    functionDepth: 0
    functionLinenumber: 122
    functionLinenumberEnd: 125
    functionName: mtr_register_sigint_handler
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 2
    functionsReached:
    - SetConsoleCtrlHandler
    linkageType: ''
    returnType: void
    signature: void mtr_register_sigint_handler()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pthread_self
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 131
    functionName: get_cur_thread_id
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached:
    - pthread_self
    linkageType: ''
    returnType: int
    signature: int get_cur_thread_id()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: getpid
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 134
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 134
    functionName: get_cur_process_id
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached:
    - getpid
    linkageType: ''
    returnType: int
    signature: int get_cur_process_id()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clock_gettime
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:139,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 137
    functionDepth: 0
    functionLinenumber: 137
    functionLinenumberEnd: 141
    functionName: mtr_time_s
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached:
    - clock_gettime
    linkageType: ''
    returnType: double
    signature: double mtr_time_s()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: gettimeofday
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:146,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 152
      start: 143
    functionDepth: 0
    functionLinenumber: 143
    functionLinenumberEnd: 152
    functionName: mtr_time_s
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached:
    - gettimeofday
    linkageType: ''
    returnType: double
    signature: double mtr_time_s()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:159,1
    - Dst: mtr_flush
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:160,1
    - Dst: fwrite
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:161,1
    - Dst: fclose
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:162,1
    - Dst: exit
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:164,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - signum
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 156
    functionDepth: 1
    functionLinenumber: 156
    functionLinenumberEnd: 165
    functionName: termination_handler
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached:
    - fwrite
    - exit
    - fclose
    - mtr_flush
    - printf
    linkageType: ''
    returnType: void
    signature: void termination_handler(int signum)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: signal
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:172,1
    - Dst: signal
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:173,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 174
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 174
    functionName: mtr_register_sigint_handler
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 2
    functionsReached:
    - signal
    linkageType: ''
    returnType: void
    signature: void mtr_register_sigint_handler()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:182,1
    - Dst: malloc
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:183,1
    - Dst: fwrite
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:188,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:188,1
    - Dst: mtr_time_s
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:189,1
    - Dst: pthread_mutex_init
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:191,1
    - Dst: pthread_mutex_init
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:192,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 1
    argNames:
    - stream
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 193
      start: 178
    functionDepth: 1
    functionLinenumber: 178
    functionLinenumberEnd: 193
    functionName: mtr_init_from_stream
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached:
    - fwrite
    - pthread_mutex_init
    - mtr_time_s
    - strlen
    - malloc
    linkageType: ''
    returnType: void
    signature: void mtr_init_from_stream(void *stream)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mtr_init_from_stream
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:199,1
    - Dst: fopen
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:199,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - json_file
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 195
    functionDepth: 2
    functionLinenumber: 195
    functionLinenumberEnd: 200
    functionName: mtr_init
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 2
    functionsReached:
    - fopen
    - mtr_init_from_stream
    linkageType: ''
    returnType: void
    signature: void mtr_init(const char *json_file)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: pthread_mutex_lock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:207,1
    - Dst: pthread_mutex_unlock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:209,1
    - Dst: mtr_flush_with_state
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:210,1
    - Dst: fwrite
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:212,1
    - Dst: fclose
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:213,1
    - Dst: pthread_mutex_destroy
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:214,1
    - Dst: pthread_mutex_destroy
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:215,1
    - Dst: free
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:217,1
    - Dst: free
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:221,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 202
    functionDepth: 1
    functionLinenumber: 202
    functionLinenumberEnd: 225
    functionName: mtr_shutdown
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 3
    functionsReached:
    - fwrite
    - pthread_mutex_unlock
    - mtr_flush_with_state
    - free
    - fclose
    - pthread_mutex_destroy
    - pthread_mutex_lock
    linkageType: ''
    returnType: void
    signature: void mtr_shutdown()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: malloc
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:231,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:231,1
    - Dst: strcpy
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:232,1
    - Dst: strcmp
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:235,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 240
      start: 227
    functionDepth: 0
    functionLinenumber: 227
    functionLinenumberEnd: 240
    functionName: mtr_pool_string
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached:
    - strlen
    - strcmp
    - strcpy
    - malloc
    linkageType: ''
    returnType: char
    signature: char *mtr_pool_string(const char *str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pthread_mutex_lock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:246,1
    - Dst: pthread_mutex_unlock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 242
    functionDepth: 1
    functionLinenumber: 242
    functionLinenumberEnd: 249
    functionName: mtr_start
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached:
    - pthread_mutex_unlock
    - pthread_mutex_lock
    linkageType: ''
    returnType: void
    signature: void mtr_start()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: pthread_mutex_lock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:255,1
    - Dst: pthread_mutex_unlock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 258
      start: 251
    functionDepth: 1
    functionLinenumber: 251
    functionLinenumberEnd: 258
    functionName: mtr_stop
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached:
    - pthread_mutex_unlock
    - pthread_mutex_lock
    linkageType: ''
    returnType: void
    signature: void mtr_stop()
  - BBCount: 14
    BranchProfiles: []
    Callsites:
    - Dst: pthread_mutex_lock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:281,1
    - Dst: pthread_mutex_unlock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:284,1
    - Dst: pthread_mutex_lock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:295,1
    - Dst: pthread_mutex_unlock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:297,1
    - Dst: pthread_mutex_unlock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:299,1
    - Dst: snprintf
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:306,1
    - Dst: ARRAY_SIZE
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:306,1
    - Dst: snprintf
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:309,1
    - Dst: ARRAY_SIZE
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:309,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:312,1
    - Dst: snprintf
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:313,1
    - Dst: ARRAY_SIZE
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:313,1
    - Dst: snprintf
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:315,1
    - Dst: ARRAY_SIZE
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:315,1
    - Dst: snprintf
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:328,1
    - Dst: ARRAY_SIZE
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:328,1
    - Dst: snprintf
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:331,1
    - Dst: ARRAY_SIZE
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:331,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:342,1
    - Dst: snprintf
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:353,1
    - Dst: ARRAY_SIZE
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:353,1
    - Dst: fwrite
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:356,1
    - Dst: free
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:360,1
    - Dst: free
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:363,1
    - Dst: free
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:364,1
    - Dst: pthread_mutex_lock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:368,1
    - Dst: pthread_mutex_unlock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:370,1
    CyclomaticComplexity: 16
    EdgeCount: 16
    ICount: 72
    argCount: 1
    argNames:
    - is_last
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 371
      start: 265
    functionDepth: 1
    functionLinenumber: 265
    functionLinenumberEnd: 371
    functionName: mtr_flush_with_state
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 1
    functionsReached:
    - snprintf
    - fwrite
    - pthread_mutex_unlock
    - ARRAY_SIZE
    - strlen
    - free
    - pthread_mutex_lock
    linkageType: ''
    returnType: void
    signature: void mtr_flush_with_state(int is_last)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mtr_flush_with_state
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:374,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 375
      start: 373
    functionDepth: 2
    functionLinenumber: 373
    functionLinenumberEnd: 375
    functionName: mtr_flush
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 8
    functionsReached:
    - mtr_flush_with_state
    linkageType: ''
    returnType: void
    signature: void mtr_flush()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: pthread_mutex_lock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:381,1
    - Dst: pthread_mutex_unlock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:383,1
    - Dst: pthread_mutex_lock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:388,1
    - Dst: pthread_mutex_unlock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:390,1
    - Dst: pthread_mutex_unlock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:391,1
    - Dst: mtr_time_s
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:393,1
    - Dst: get_cur_thread_id
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:395,1
    - Dst: get_cur_process_id
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:398,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:402,1
    - Dst: malloc
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:403,1
    - Dst: strcpy
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:404,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:406,1
    - Dst: malloc
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:407,1
    - Dst: strcpy
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:408,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:419,1
    - Dst: pthread_mutex_lock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:429,1
    - Dst: pthread_mutex_unlock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:431,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 39
    argCount: 4
    argNames:
    - category
    - name
    - ph
    - id
    argTypes:
    - char*
    - char*
    - char
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 377
    functionDepth: 1
    functionLinenumber: 377
    functionLinenumberEnd: 432
    functionName: internal_mtr_raw_event
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached:
    - memcpy
    - pthread_mutex_unlock
    - strcpy
    - get_cur_thread_id
    - mtr_time_s
    - strlen
    - malloc
    - pthread_mutex_lock
    - get_cur_process_id
    linkageType: ''
    returnType: void
    signature: void internal_mtr_raw_event(const char *category, const char *name,
      char ph, void *id)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: pthread_mutex_lock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:438,1
    - Dst: pthread_mutex_unlock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:440,1
    - Dst: pthread_mutex_lock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:445,1
    - Dst: pthread_mutex_unlock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:447,1
    - Dst: pthread_mutex_unlock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:448,1
    - Dst: get_cur_thread_id
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:451,1
    - Dst: get_cur_process_id
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:454,1
    - Dst: mtr_time_s
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:456,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:459,1
    - Dst: malloc
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:460,1
    - Dst: strcpy
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:461,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:463,1
    - Dst: malloc
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:464,1
    - Dst: strcpy
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:465,1
    - Dst: strdup
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:482,1
    - Dst: pthread_mutex_lock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:486,1
    - Dst: pthread_mutex_unlock
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp:488,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 47
    argCount: 7
    argNames:
    - category
    - name
    - ph
    - id
    - arg_type
    - arg_name
    - arg_value
    argTypes:
    - char*
    - char*
    - char
    - void*
    - mtr_arg_type
    - char*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 434
    functionDepth: 1
    functionLinenumber: 434
    functionLinenumberEnd: 489
    functionName: internal_mtr_raw_event_arg
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    functionUses: 0
    functionsReached:
    - pthread_mutex_unlock
    - strcpy
    - get_cur_thread_id
    - strdup
    - mtr_time_s
    - strlen
    - malloc
    - pthread_mutex_lock
    - get_cur_process_id
    linkageType: ''
    returnType: void
    signature: void internal_mtr_raw_event_arg(const char *category, const char *name,
      char ph, void *id, mtr_arg_type arg_type, const char *arg_name, void *arg_value)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - c
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 105
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 105
    functionName: MTR_BEGIN
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_BEGIN(c, n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - c
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 106
      start: 105
    functionDepth: 0
    functionLinenumber: 105
    functionLinenumberEnd: 106
    functionName: MTR_END
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_END(c, n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - c
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 107
      start: 106
    functionDepth: 0
    functionLinenumber: 106
    functionLinenumberEnd: 107
    functionName: MTR_SCOPE
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_SCOPE(c, n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - l
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 108
      start: 107
    functionDepth: 0
    functionLinenumber: 107
    functionLinenumberEnd: 108
    functionName: MTR_SCOPE_LIMIT
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_SCOPE_LIMIT(c, n, l)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - id
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 111
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 111
    functionName: MTR_START
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_START(c, n, id)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - id
    - ','
    - step
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 112
      start: 111
    functionDepth: 0
    functionLinenumber: 111
    functionLinenumberEnd: 112
    functionName: MTR_STEP
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_STEP(c, n, id, step)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - id
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 113
      start: 112
    functionDepth: 0
    functionLinenumber: 112
    functionLinenumberEnd: 113
    functionName: MTR_FINISH
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_FINISH(c, n, id)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - id
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 116
      start: 115
    functionDepth: 0
    functionLinenumber: 115
    functionLinenumberEnd: 116
    functionName: MTR_FLOW_START
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_FLOW_START(c, n, id)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - id
    - ','
    - step
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 117
      start: 116
    functionDepth: 0
    functionLinenumber: 116
    functionLinenumberEnd: 117
    functionName: MTR_FLOW_STEP
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_FLOW_STEP(c, n, id, step)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - id
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 118
      start: 117
    functionDepth: 0
    functionLinenumber: 117
    functionLinenumberEnd: 118
    functionName: MTR_FLOW_FINISH
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_FLOW_FINISH(c, n, id)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - aname
    - ','
    - astrval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 127
    functionName: MTR_BEGIN_C
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_BEGIN_C(c, n, aname, astrval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - aname
    - ','
    - astrval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 128
      start: 127
    functionDepth: 0
    functionLinenumber: 127
    functionLinenumberEnd: 128
    functionName: MTR_END_C
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_END_C(c, n, aname, astrval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - aname
    - ','
    - astrval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 129
    functionName: MTR_SCOPE_C
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_SCOPE_C(c, n, aname, astrval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - aname
    - ','
    - astrval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 131
      start: 130
    functionDepth: 0
    functionLinenumber: 130
    functionLinenumberEnd: 131
    functionName: MTR_BEGIN_S
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_BEGIN_S(c, n, aname, astrval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - aname
    - ','
    - astrval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 132
      start: 131
    functionDepth: 0
    functionLinenumber: 131
    functionLinenumberEnd: 132
    functionName: MTR_END_S
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_END_S(c, n, aname, astrval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - aname
    - ','
    - astrval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 132
    functionDepth: 0
    functionLinenumber: 132
    functionLinenumberEnd: 133
    functionName: MTR_SCOPE_S
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_SCOPE_S(c, n, aname, astrval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - aname
    - ','
    - aintval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 135
      start: 134
    functionDepth: 0
    functionLinenumber: 134
    functionLinenumberEnd: 135
    functionName: MTR_BEGIN_I
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_BEGIN_I(c, n, aname, aintval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - aname
    - ','
    - aintval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 136
      start: 135
    functionDepth: 0
    functionLinenumber: 135
    functionLinenumberEnd: 136
    functionName: MTR_END_I
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_END_I(c, n, aname, aintval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - aname
    - ','
    - aintval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 137
      start: 136
    functionDepth: 0
    functionLinenumber: 136
    functionLinenumberEnd: 137
    functionName: MTR_SCOPE_I
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_SCOPE_I(c, n, aname, aintval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - c
    - ','
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 140
      start: 139
    functionDepth: 0
    functionLinenumber: 139
    functionLinenumberEnd: 140
    functionName: MTR_INSTANT
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_INSTANT(c, n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - aname
    - ','
    - astrval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 141
      start: 140
    functionDepth: 0
    functionLinenumber: 140
    functionLinenumberEnd: 141
    functionName: MTR_INSTANT_C
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_INSTANT_C(c, n, aname, astrval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 9
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - aname
    - ','
    - aintval
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 142
      start: 141
    functionDepth: 0
    functionLinenumber: 141
    functionLinenumberEnd: 142
    functionName: MTR_INSTANT_I
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_INSTANT_I(c, n, aname, aintval)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - c
    - ','
    - n
    - ','
    - val
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 145
      start: 144
    functionDepth: 0
    functionLinenumber: 144
    functionLinenumberEnd: 145
    functionName: MTR_COUNTER
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_COUNTER(c, n, val)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 148
    functionDepth: 0
    functionLinenumber: 148
    functionLinenumberEnd: 149
    functionName: MTR_META_PROCESS_NAME
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_META_PROCESS_NAME(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - n
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 150
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 150
    functionName: MTR_META_THREAD_NAME
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_META_THREAD_NAME(n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - i
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 151
      start: 150
    functionDepth: 0
    functionLinenumber: 150
    functionLinenumberEnd: 151
    functionName: MTR_META_THREAD_SORT_INDEX
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_META_THREAD_SORT_INDEX(i)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 196
      start: 195
    functionDepth: 0
    functionLinenumber: 195
    functionLinenumberEnd: 196
    functionName: MTR_BEGIN_FUNC
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_BEGIN_FUNC()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 197
      start: 196
    functionDepth: 0
    functionLinenumber: 196
    functionLinenumberEnd: 197
    functionName: MTR_END_FUNC
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_END_FUNC()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 198
    functionName: MTR_SCOPE_FUNC
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_SCOPE_FUNC()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 2
    argNames:
    - (
    - )
    argTypes:
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 199
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 199
    functionName: MTR_INSTANT_FUNC
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_INSTANT_FUNC()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - l
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 200
      start: 199
    functionDepth: 0
    functionLinenumber: 199
    functionLinenumberEnd: 200
    functionName: MTR_SCOPE_FUNC_LIMIT_S
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_SCOPE_FUNC_LIMIT_S(l)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - l
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 201
      start: 200
    functionDepth: 0
    functionLinenumber: 200
    functionLinenumberEnd: 201
    functionName: MTR_SCOPE_FUNC_LIMIT_MS
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_SCOPE_FUNC_LIMIT_MS(l)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - aname
    - ','
    - arg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 203
    functionDepth: 0
    functionLinenumber: 203
    functionLinenumberEnd: 204
    functionName: MTR_BEGIN_FUNC_S
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_BEGIN_FUNC_S(aname, arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - aname
    - ','
    - arg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 205
      start: 204
    functionDepth: 0
    functionLinenumber: 204
    functionLinenumberEnd: 205
    functionName: MTR_END_FUNC_S
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_END_FUNC_S(aname, arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - aname
    - ','
    - arg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 206
      start: 205
    functionDepth: 0
    functionLinenumber: 205
    functionLinenumberEnd: 206
    functionName: MTR_SCOPE_FUNC_S
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_SCOPE_FUNC_S(aname, arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - aname
    - ','
    - arg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 208
      start: 207
    functionDepth: 0
    functionLinenumber: 207
    functionLinenumberEnd: 208
    functionName: MTR_BEGIN_FUNC_C
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_BEGIN_FUNC_C(aname, arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - aname
    - ','
    - arg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 209
      start: 208
    functionDepth: 0
    functionLinenumber: 208
    functionLinenumberEnd: 209
    functionName: MTR_END_FUNC_C
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_END_FUNC_C(aname, arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - aname
    - ','
    - arg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 210
      start: 209
    functionDepth: 0
    functionLinenumber: 209
    functionLinenumberEnd: 210
    functionName: MTR_SCOPE_FUNC_C
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_SCOPE_FUNC_C(aname, arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - aname
    - ','
    - arg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 212
      start: 211
    functionDepth: 0
    functionLinenumber: 211
    functionLinenumberEnd: 212
    functionName: MTR_BEGIN_FUNC_I
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_BEGIN_FUNC_I(aname, arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - aname
    - ','
    - arg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 213
      start: 212
    functionDepth: 0
    functionLinenumber: 212
    functionLinenumberEnd: 213
    functionName: MTR_END_FUNC_I
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_END_FUNC_I(aname, arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - aname
    - ','
    - arg
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 214
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 214
    functionName: MTR_SCOPE_FUNC_I
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MTR_SCOPE_FUNC_I(aname, arg)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mtr_time_s
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h:224,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - category
    - name
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 222
    functionDepth: 1
    functionLinenumber: 222
    functionLinenumberEnd: 225
    functionName: MTRScopedTrace::MTRScopedTrace
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached:
    - mtr_time_s
    linkageType: ''
    returnType: void
    signature: void MTRScopedTrace(const char *category, const char *name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: internal_mtr_raw_event
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h:227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 226
    functionDepth: 2
    functionLinenumber: 226
    functionLinenumberEnd: 228
    functionName: ~MTRScopedTrace()
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached:
    - internal_mtr_raw_event
    linkageType: ''
    returnType: void
    signature: void ~MTRScopedTrace()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mtr_time_s
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h:242,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - category
    - name
    - limit_s
    argTypes:
    - char*
    - char*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 243
      start: 240
    functionDepth: 1
    functionLinenumber: 240
    functionLinenumberEnd: 243
    functionName: MTRScopedTraceLimit::MTRScopedTraceLimit
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached:
    - mtr_time_s
    linkageType: ''
    returnType: void
    signature: void MTRScopedTraceLimit(const char *category, const char *name, double
      limit_s)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: mtr_time_s
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h:245,1
    - Dst: internal_mtr_raw_event
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h:247,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 244
    functionDepth: 2
    functionLinenumber: 244
    functionLinenumberEnd: 249
    functionName: ~MTRScopedTraceLimit()
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached:
    - mtr_time_s
    - internal_mtr_raw_event
    linkageType: ''
    returnType: void
    signature: void ~MTRScopedTraceLimit()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: internal_mtr_raw_event_arg
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h:262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 5
    argNames:
    - category
    - name
    - arg_type
    - arg_name
    - arg_value
    argTypes:
    - char*
    - char*
    - mtr_arg_type
    - char*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 263
      start: 260
    functionDepth: 2
    functionLinenumber: 260
    functionLinenumberEnd: 263
    functionName: MTRScopedTraceArg::MTRScopedTraceArg
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached:
    - internal_mtr_raw_event_arg
    linkageType: ''
    returnType: void
    signature: void MTRScopedTraceArg(const char *category, const char *name, mtr_arg_type
      arg_type, const char *arg_name, void *arg_value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: internal_mtr_raw_event
      Src: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h:265,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 264
    functionDepth: 2
    functionLinenumber: 264
    functionLinenumberEnd: 266
    functionName: ~MTRScopedTraceArg()
    functionSourceFile: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
    functionUses: 0
    functionsReached:
    - internal_mtr_raw_event
    linkageType: ''
    returnType: void
    signature: void ~MTRScopedTraceArg()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 359
      start: 358
    functionDepth: 0
    functionLinenumber: 358
    functionLinenumberEnd: 359
    functionName: _MCO_UNUSED
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: _MCO_UNUSED(x)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - s
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 368
      start: 367
    functionDepth: 0
    functionLinenumber: 367
    functionLinenumberEnd: 368
    functionName: MCO_LOG
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MCO_LOG(s)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - c
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 376
    functionDepth: 0
    functionLinenumber: 376
    functionLinenumberEnd: 377
    functionName: MCO_ASSERT
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: MCO_ASSERT(c)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _MCO_UNUSED
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:434,1
    - Dst: MCO_MALLOC
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:435,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - size
    - allocator_data
    argTypes:
    - size_t
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 433
    functionDepth: 1
    functionLinenumber: 433
    functionLinenumberEnd: 436
    functionName: mco_malloc
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - MCO_MALLOC
    - _MCO_UNUSED
    linkageType: ''
    returnType: void
    signature: void * mco_malloc(size_t size, void* allocator_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _MCO_UNUSED
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:438,1
    - Dst: MCO_FREE
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:439,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - ptr
    - allocator_data
    argTypes:
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 437
    functionDepth: 1
    functionLinenumber: 437
    functionLinenumberEnd: 440
    functionName: mco_free
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _MCO_UNUSED
    - MCO_FREE
    linkageType: ''
    returnType: void
    signature: void mco_free(void* ptr, void* allocator_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - addr
    - align
    argTypes:
    - size_t
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 473
      start: 471
    functionDepth: 0
    functionLinenumber: 471
    functionLinenumberEnd: 473
    functionName: _mco_align_forward
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MCO_FORCE_INLINE
    signature: MCO_FORCE_INLINE _mco_align_forward(size_t addr, size_t align)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: mco_running
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:480,1
    - Dst: MCO_ASSERT
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:481,1
    - Dst: MCO_ASSERT
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:484,1
    - Dst: __sanitizer_finish_switch_fiber
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:492,1
    - Dst: __sanitizer_start_switch_fiber
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:495,1
    - Dst: __tsan_get_current_fiber
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:498,1
    - Dst: __tsan_switch_to_fiber
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:499,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 15
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 501
      start: 478
    functionDepth: 1
    functionLinenumber: 478
    functionLinenumberEnd: 501
    functionName: _mco_prepare_jumpin
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - __sanitizer_start_switch_fiber
    - __tsan_get_current_fiber
    - __tsan_switch_to_fiber
    - mco_running
    - MCO_ASSERT
    - __sanitizer_finish_switch_fiber
    linkageType: ''
    returnType: MCO_FORCE_INLINE
    signature: MCO_FORCE_INLINE _mco_prepare_jumpin(mco_coro* co)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: __sanitizer_finish_switch_fiber
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:516,1
    - Dst: __sanitizer_start_switch_fiber
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:519,1
    - Dst: __tsan_switch_to_fiber
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:525,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 527
      start: 503
    functionDepth: 0
    functionLinenumber: 503
    functionLinenumberEnd: 527
    functionName: _mco_prepare_jumpout
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - __tsan_switch_to_fiber
    - __sanitizer_start_switch_fiber
    - __sanitizer_finish_switch_fiber
    linkageType: ''
    returnType: MCO_FORCE_INLINE
    signature: MCO_FORCE_INLINE _mco_prepare_jumpout(mco_coro* co)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mco_coro*::func
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:533,1
    - Dst: _mco_jumpout
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:535,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 536
      start: 532
    functionDepth: 1
    functionLinenumber: 532
    functionLinenumberEnd: 536
    functionName: _mco_main
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _mco_jumpout
    - mco_coro*::func
    linkageType: ''
    returnType: MCO_NO_INLINE
    signature: MCO_NO_INLINE _mco_main(mco_coro* co)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 4
    argNames:
    - co
    - ctx
    - stack_base
    - stack_size
    argTypes:
    - mco_coro*
    - _mco_ctxbuf*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 666
    functionDepth: 0
    functionLinenumber: 666
    functionLinenumberEnd: 679
    functionName: _mco_makectx
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: mco_result
    signature: mco_result _mco_makectx(mco_coro* co, _mco_ctxbuf* ctx, void* stack_base,
      size_t stack_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - co
    - ctx
    - stack_base
    - stack_size
    argTypes:
    - mco_coro*
    - _mco_ctxbuf*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 751
      start: 742
    functionDepth: 0
    functionLinenumber: 742
    functionLinenumberEnd: 751
    functionName: _mco_makectx
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: mco_result
    signature: mco_result _mco_makectx(mco_coro* co, _mco_ctxbuf* ctx, void* stack_base,
      size_t stack_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 4
    argNames:
    - co
    - ctx
    - stack_base
    - stack_size
    argTypes:
    - mco_coro*
    - _mco_ctxbuf*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 957
      start: 946
    functionDepth: 0
    functionLinenumber: 946
    functionLinenumberEnd: 957
    functionName: _mco_makectx
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: mco_result
    signature: mco_result _mco_makectx(mco_coro* co, _mco_ctxbuf* ctx, void* stack_base,
      size_t stack_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 4
    argNames:
    - co
    - ctx
    - stack_base
    - stack_size
    argTypes:
    - mco_coro*
    - _mco_ctxbuf*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1009
      start: 1002
    functionDepth: 0
    functionLinenumber: 1002
    functionLinenumberEnd: 1009
    functionName: _mco_makectx
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: mco_result
    signature: mco_result _mco_makectx(mco_coro* co, _mco_ctxbuf* ctx, void* stack_base,
      size_t stack_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - co
    - ctx
    - stack_base
    - stack_size
    argTypes:
    - mco_coro*
    - _mco_ctxbuf*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1079
      start: 1072
    functionDepth: 0
    functionLinenumber: 1072
    functionLinenumberEnd: 1079
    functionName: _mco_makectx
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: mco_result
    signature: mco_result _mco_makectx(mco_coro* co, _mco_ctxbuf* ctx, void* stack_base,
      size_t stack_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 4
    argNames:
    - co
    - ctx
    - stack_base
    - stack_size
    argTypes:
    - mco_coro*
    - _mco_ctxbuf*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1162
      start: 1155
    functionDepth: 0
    functionLinenumber: 1155
    functionLinenumberEnd: 1162
    functionName: _mco_makectx
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: mco_result
    signature: mco_result _mco_makectx(mco_coro* co, _mco_ctxbuf* ctx, void* stack_base,
      size_t stack_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mco_main
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - lo
    - hi
    argTypes:
    - unsigned int
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1180
      start: 1177
    functionDepth: 2
    functionLinenumber: 1177
    functionLinenumberEnd: 1180
    functionName: _mco_wrap_main
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _mco_main
    linkageType: ''
    returnType: void
    signature: void _mco_wrap_main(unsigned int lo, unsigned int hi)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mco_main
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - lo
    argTypes:
    - unsigned int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1185
      start: 1182
    functionDepth: 2
    functionLinenumber: 1182
    functionLinenumberEnd: 1185
    functionName: _mco_wrap_main
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _mco_main
    linkageType: ''
    returnType: void
    signature: void _mco_wrap_main(unsigned int lo)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swapcontext
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1189,1
    - Dst: _MCO_UNUSED
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1190,1
    - Dst: MCO_ASSERT
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - from
    - to
    argTypes:
    - _mco_ctxbuf*
    - _mco_ctxbuf*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1192
      start: 1188
    functionDepth: 1
    functionLinenumber: 1188
    functionLinenumberEnd: 1192
    functionName: _mco_switch
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _MCO_UNUSED
    - swapcontext
    - MCO_ASSERT
    linkageType: ''
    returnType: MCO_FORCE_INLINE
    signature: MCO_FORCE_INLINE _mco_switch(_mco_ctxbuf* from, _mco_ctxbuf* to)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: getcontext
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1196,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1197,1
    - Dst: makecontext
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1206,1
    - Dst: makecontext
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1208,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 11
    argCount: 4
    argNames:
    - co
    - ctx
    - stack_base
    - stack_size
    argTypes:
    - mco_coro*
    - _mco_ctxbuf*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1211
      start: 1194
    functionDepth: 1
    functionLinenumber: 1194
    functionLinenumberEnd: 1211
    functionName: _mco_makectx
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - getcontext
    - MCO_LOG
    - makecontext
    linkageType: ''
    returnType: mco_result
    signature: mco_result _mco_makectx(mco_coro* co, _mco_ctxbuf* ctx, void* stack_base,
      size_t stack_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mco_prepare_jumpin
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1229,1
    - Dst: _mco_switch
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1230,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1231
      start: 1227
    functionDepth: 2
    functionLinenumber: 1227
    functionLinenumberEnd: 1231
    functionName: _mco_jumpin
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _mco_switch
    - _mco_prepare_jumpin
    linkageType: ''
    returnType: void
    signature: void _mco_jumpin(mco_coro* co)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mco_prepare_jumpout
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1235,1
    - Dst: _mco_switch
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1236,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1237
      start: 1233
    functionDepth: 2
    functionLinenumber: 1233
    functionLinenumberEnd: 1237
    functionName: _mco_jumpout
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 1
    functionsReached:
    - _mco_prepare_jumpout
    - _mco_switch
    linkageType: ''
    returnType: void
    signature: void _mco_jumpout(mco_coro* co)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1242,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1243,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1244,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1247,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1250,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1255,1
    - Dst: _mco_makectx
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1258,1
    - Dst: VALGRIND_STACK_REGISTER
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1263,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - co
    - desc
    argTypes:
    - mco_coro*
    - mco_desc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1271
      start: 1239
    functionDepth: 1
    functionLinenumber: 1239
    functionLinenumberEnd: 1271
    functionName: _mco_create_context
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - memset
    - _mco_align_forward
    - _mco_makectx
    - VALGRIND_STACK_REGISTER
    linkageType: ''
    returnType: mco_result
    signature: mco_result _mco_create_context(mco_coro* co, mco_desc* desc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: VALGRIND_STACK_DEREGISTER
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1277,1
    - Dst: _MCO_UNUSED
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1281,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1283
      start: 1273
    functionDepth: 1
    functionLinenumber: 1273
    functionLinenumberEnd: 1283
    functionName: _mco_destroy_context
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - VALGRIND_STACK_DEREGISTER
    - _MCO_UNUSED
    linkageType: ''
    returnType: void
    signature: void _mco_destroy_context(mco_coro* co)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1286,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1287,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1288,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - desc
    - stack_size
    argTypes:
    - mco_desc*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1291
      start: 1285
    functionDepth: 1
    functionLinenumber: 1285
    functionLinenumberEnd: 1291
    functionName: _mco_init_desc_sizes
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _mco_align_forward
    linkageType: ''
    returnType: MCO_FORCE_INLINE
    signature: MCO_FORCE_INLINE _mco_init_desc_sizes(mco_desc* desc, size_t stack_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: GetCurrentFiber
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1315,1
    - Dst: ConvertThreadToFiber
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1317,1
    - Dst: MCO_ASSERT
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1319,1
    - Dst: _mco_prepare_jumpin
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1322,1
    - Dst: SwitchToFiber
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1323,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1324
      start: 1314
    functionDepth: 2
    functionLinenumber: 1314
    functionLinenumberEnd: 1324
    functionName: _mco_jumpin
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - GetCurrentFiber
    - MCO_ASSERT
    - SwitchToFiber
    - _mco_prepare_jumpin
    - ConvertThreadToFiber
    linkageType: ''
    returnType: void
    signature: void _mco_jumpin(mco_coro* co)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mco_main
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1327,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - co
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1328
      start: 1326
    functionDepth: 2
    functionLinenumber: 1326
    functionLinenumberEnd: 1328
    functionName: _mco_wrap_main
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _mco_main
    linkageType: ''
    returnType: void
    signature: void _mco_wrap_main(void* co)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: MCO_ASSERT
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1333,1
    - Dst: _mco_prepare_jumpout
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1335,1
    - Dst: SwitchToFiber
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1337
      start: 1330
    functionDepth: 1
    functionLinenumber: 1330
    functionLinenumberEnd: 1337
    functionName: _mco_jumpout
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 1
    functionsReached:
    - SwitchToFiber
    - _mco_prepare_jumpout
    - MCO_ASSERT
    linkageType: ''
    returnType: void
    signature: void _mco_jumpout(mco_coro* co)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1355,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1356,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1359,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1362,1
    - Dst: CreateFiberEx
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1364,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1366,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 14
    argCount: 2
    argNames:
    - co
    - desc
    argTypes:
    - mco_coro*
    - mco_desc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1376
      start: 1352
    functionDepth: 1
    functionLinenumber: 1352
    functionLinenumberEnd: 1376
    functionName: _mco_create_context
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - memset
    - _mco_align_forward
    - MCO_LOG
    - CreateFiberEx
    linkageType: ''
    returnType: mco_result
    signature: mco_result _mco_create_context(mco_coro* co, mco_desc* desc)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteFiber
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1381,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1384
      start: 1378
    functionDepth: 0
    functionLinenumber: 1378
    functionLinenumberEnd: 1384
    functionName: _mco_destroy_context
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - DeleteFiber
    linkageType: ''
    returnType: void
    signature: void _mco_destroy_context(mco_coro* co)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1387,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1388,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1389,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - desc
    - stack_size
    argTypes:
    - mco_desc*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1392
      start: 1386
    functionDepth: 1
    functionLinenumber: 1386
    functionLinenumberEnd: 1392
    functionName: _mco_init_desc_sizes
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _mco_align_forward
    linkageType: ''
    returnType: MCO_FORCE_INLINE
    signature: MCO_FORCE_INLINE _mco_init_desc_sizes(mco_desc* desc, size_t stack_size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mco_main
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1412,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - co
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1413
      start: 1411
    functionDepth: 2
    functionLinenumber: 1411
    functionLinenumberEnd: 1413
    functionName: _mco_wrap_main
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _mco_main
    linkageType: ''
    returnType: void
    signature: void _mco_wrap_main(void* co)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: emscripten_fiber_init_from_current_context
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1420,1
    - Dst: _mco_prepare_jumpin
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1424,1
    - Dst: emscripten_fiber_swap
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1425,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1426
      start: 1415
    functionDepth: 2
    functionLinenumber: 1415
    functionLinenumberEnd: 1426
    functionName: _mco_jumpin
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - emscripten_fiber_swap
    - _mco_prepare_jumpin
    - emscripten_fiber_init_from_current_context
    linkageType: ''
    returnType: void
    signature: void _mco_jumpin(mco_coro* co)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mco_prepare_jumpout
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1431,1
    - Dst: emscripten_fiber_swap
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1432,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1433
      start: 1428
    functionDepth: 1
    functionLinenumber: 1428
    functionLinenumberEnd: 1433
    functionName: _mco_jumpout
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 1
    functionsReached:
    - _mco_prepare_jumpout
    - emscripten_fiber_swap
    linkageType: ''
    returnType: void
    signature: void _mco_jumpout(mco_coro* co)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: emscripten_has_asyncify
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1436,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1437,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1442,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1443,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1444,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1445,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1448,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1451,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1458,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1459,1
    - Dst: emscripten_fiber_init
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1462,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 16
    argCount: 2
    argNames:
    - co
    - desc
    argTypes:
    - mco_coro*
    - mco_desc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1469
      start: 1435
    functionDepth: 1
    functionLinenumber: 1435
    functionLinenumberEnd: 1469
    functionName: _mco_create_context
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - MCO_LOG
    - emscripten_fiber_init
    - memset
    - _mco_align_forward
    - emscripten_has_asyncify
    linkageType: ''
    returnType: mco_result
    signature: mco_result _mco_create_context(mco_coro* co, mco_desc* desc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _MCO_UNUSED
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1473,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1474
      start: 1471
    functionDepth: 1
    functionLinenumber: 1471
    functionLinenumberEnd: 1474
    functionName: _mco_destroy_context
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _MCO_UNUSED
    linkageType: ''
    returnType: void
    signature: void _mco_destroy_context(mco_coro* co)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1477,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1478,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1479,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1480,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1481,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - desc
    - stack_size
    argTypes:
    - mco_desc*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1484
      start: 1476
    functionDepth: 1
    functionLinenumber: 1476
    functionLinenumberEnd: 1484
    functionName: _mco_init_desc_sizes
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _mco_align_forward
    linkageType: ''
    returnType: MCO_FORCE_INLINE
    signature: MCO_FORCE_INLINE _mco_init_desc_sizes(mco_desc* desc, size_t stack_size)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: _mco_prepare_jumpin
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1515,1
    - Dst: _asyncify_start_rewind
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1517,1
    - Dst: _mco_main
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1519,1
    - Dst: _asyncify_stop_unwind
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1520,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1521
      start: 1513
    functionDepth: 2
    functionLinenumber: 1513
    functionLinenumberEnd: 1521
    functionName: _mco_jumpin
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _asyncify_start_rewind
    - _mco_prepare_jumpin
    - _asyncify_stop_unwind
    - _mco_main
    linkageType: ''
    returnType: MCO_NO_INLINE
    signature: MCO_NO_INLINE _mco_jumpin(mco_coro* co)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _mco_prepare_jumpout
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1527,1
    - Dst: _asyncify_start_unwind
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1529,1
    - Dst: _asyncify_stop_rewind
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1531,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 2
    argNames:
    - co
    - rewind_id
    argTypes:
    - mco_coro*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1534
      start: 1523
    functionDepth: 1
    functionLinenumber: 1523
    functionLinenumberEnd: 1534
    functionName: _mco_finish_jumpout
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _asyncify_stop_rewind
    - _mco_prepare_jumpout
    - _asyncify_start_unwind
    linkageType: ''
    returnType: MCO_NO_INLINE
    signature: MCO_NO_INLINE _mco_finish_jumpout(mco_coro* co, volatile int rewind_id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mco_finish_jumpout
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1544,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1545
      start: 1536
    functionDepth: 2
    functionLinenumber: 1536
    functionLinenumberEnd: 1545
    functionName: _mco_jumpout
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 1
    functionsReached:
    - _mco_finish_jumpout
    linkageType: ''
    returnType: MCO_NO_INLINE
    signature: MCO_NO_INLINE _mco_jumpout(mco_coro* co)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1550,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1551,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1552,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1555,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1558,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1563,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 12
    argCount: 2
    argNames:
    - co
    - desc
    argTypes:
    - mco_coro*
    - mco_desc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1573
      start: 1547
    functionDepth: 1
    functionLinenumber: 1547
    functionLinenumberEnd: 1573
    functionName: _mco_create_context
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - memset
    - _mco_align_forward
    linkageType: ''
    returnType: mco_result
    signature: mco_result _mco_create_context(mco_coro* co, mco_desc* desc)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _MCO_UNUSED
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1577,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1578
      start: 1575
    functionDepth: 1
    functionLinenumber: 1575
    functionLinenumberEnd: 1578
    functionName: _mco_destroy_context
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _MCO_UNUSED
    linkageType: ''
    returnType: void
    signature: void _mco_destroy_context(mco_coro* co)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1581,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1582,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1583,1
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1584,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - desc
    - stack_size
    argTypes:
    - mco_desc*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1587
      start: 1580
    functionDepth: 1
    functionLinenumber: 1580
    functionLinenumberEnd: 1587
    functionName: _mco_init_desc_sizes
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _mco_align_forward
    linkageType: ''
    returnType: MCO_FORCE_INLINE
    signature: MCO_FORCE_INLINE _mco_init_desc_sizes(mco_desc* desc, size_t stack_size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: _mco_align_forward
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1602,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1604,1
    - Dst: _mco_init_desc_sizes
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1612,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 1
    argNames:
    - stack_size
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1614
      start: 1593
    functionDepth: 2
    functionLinenumber: 1593
    functionLinenumberEnd: 1614
    functionName: mco_desc_init
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 1
    functionsReached:
    - memset
    - _mco_align_forward
    - _mco_init_desc_sizes
    linkageType: ''
    returnType: mco_desc
    signature: mco_desc mco_desc_init(void (*func)(mco_coro* co), size_t stack_size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1618,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1622,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1626,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1630,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 1
    argNames:
    - desc
    argTypes:
    - mco_desc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1634
      start: 1616
    functionDepth: 1
    functionLinenumber: 1616
    functionLinenumberEnd: 1634
    functionName: _mco_validate_desc
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - MCO_LOG
    linkageType: ''
    returnType: mco_result
    signature: mco_result _mco_validate_desc(mco_desc* desc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1638,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1641,1
    - Dst: _mco_validate_desc
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1643,1
    - Dst: _mco_create_context
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1647,1
    - Dst: __tsan_create_fiber
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1656,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 19
    argCount: 2
    argNames:
    - co
    - desc
    argTypes:
    - mco_coro*
    - mco_desc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1660
      start: 1636
    functionDepth: 2
    functionLinenumber: 1636
    functionLinenumberEnd: 1660
    functionName: mco_init
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - MCO_LOG
    - memset
    - _mco_validate_desc
    - _mco_create_context
    - __tsan_create_fiber
    linkageType: ''
    returnType: mco_result
    signature: mco_result mco_init(mco_coro* co, mco_desc* desc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1664,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1669,1
    - Dst: __tsan_destroy_fiber
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1676,1
    - Dst: _mco_destroy_context
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1680,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 16
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1682
      start: 1662
    functionDepth: 2
    functionLinenumber: 1662
    functionLinenumberEnd: 1682
    functionName: mco_uninit
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - _mco_destroy_context
    - MCO_LOG
    - __tsan_destroy_fiber
    linkageType: ''
    returnType: mco_result
    signature: mco_result mco_uninit(mco_coro* co)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1687,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1692,1
    - Dst: mco_desc*::malloc_cb
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1696,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1698,1
    - Dst: mco_init
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1703,1
    - Dst: mco_desc*::free_cb
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1705,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 22
    argCount: 2
    argNames:
    - out_co
    - desc
    argTypes:
    - mco_coro**
    - mco_desc*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1711
      start: 1684
    functionDepth: 3
    functionLinenumber: 1684
    functionLinenumberEnd: 1711
    functionName: mco_create
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 1
    functionsReached:
    - mco_desc*::free_cb
    - MCO_LOG
    - mco_desc*::malloc_cb
    - mco_init
    linkageType: ''
    returnType: mco_result
    signature: mco_result mco_create(mco_coro** out_co, mco_desc* desc)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1715,1
    - Dst: mco_uninit
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1719,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1724,1
    - Dst: mco_coro*::free_cb
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1727,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1729
      start: 1713
    functionDepth: 3
    functionLinenumber: 1713
    functionLinenumberEnd: 1729
    functionName: mco_destroy
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 1
    functionsReached:
    - mco_uninit
    - MCO_LOG
    - mco_coro*::free_cb
    linkageType: ''
    returnType: mco_result
    signature: mco_result mco_destroy(mco_coro* co)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1733,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1737,1
    - Dst: _mco_jumpin
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1741,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1743
      start: 1731
    functionDepth: 3
    functionLinenumber: 1731
    functionLinenumberEnd: 1743
    functionName: mco_resume
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 1
    functionsReached:
    - _mco_jumpin
    - MCO_LOG
    linkageType: ''
    returnType: mco_result
    signature: mco_result mco_resume(mco_coro* co)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1747,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1759,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1764,1
    - Dst: _mco_jumpout
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1768,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1770
      start: 1745
    functionDepth: 3
    functionLinenumber: 1745
    functionLinenumberEnd: 1770
    functionName: mco_yield
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 1
    functionsReached:
    - MCO_LOG
    - _mco_jumpout
    linkageType: ''
    returnType: mco_result
    signature: mco_result mco_yield(mco_coro* co)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1777
      start: 1772
    functionDepth: 0
    functionLinenumber: 1772
    functionLinenumberEnd: 1777
    functionName: mco_status
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: mco_state
    signature: mco_state mco_status(mco_coro* co)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1784
      start: 1779
    functionDepth: 0
    functionLinenumber: 1779
    functionLinenumberEnd: 1784
    functionName: mco_get_user_data
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void * mco_get_user_data(mco_coro* co)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1788,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1793,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1797,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1800,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 18
    argCount: 3
    argNames:
    - co
    - src
    - len
    argTypes:
    - mco_coro*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1804
      start: 1786
    functionDepth: 1
    functionLinenumber: 1786
    functionLinenumberEnd: 1804
    functionName: mco_push
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - MCO_LOG
    - memcpy
    linkageType: ''
    returnType: mco_result
    signature: mco_result mco_push(mco_coro* co, const void* src, size_t len)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1808,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1812,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1817,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1822,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - co
    - dest
    - len
    argTypes:
    - mco_coro*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1826
      start: 1806
    functionDepth: 1
    functionLinenumber: 1806
    functionLinenumberEnd: 1826
    functionName: mco_pop
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - memset
    - MCO_LOG
    - memcpy
    linkageType: ''
    returnType: mco_result
    signature: mco_result mco_pop(mco_coro* co, void* dest, size_t len)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1830,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1834,1
    - Dst: MCO_LOG
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1838,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1841,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 17
    argCount: 3
    argNames:
    - co
    - dest
    - len
    argTypes:
    - mco_coro*
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1844
      start: 1828
    functionDepth: 1
    functionLinenumber: 1828
    functionLinenumberEnd: 1844
    functionName: mco_peek
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached:
    - MCO_LOG
    - memcpy
    linkageType: ''
    returnType: mco_result
    signature: mco_result mco_peek(mco_coro* co, void* dest, size_t len)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1851
      start: 1846
    functionDepth: 0
    functionLinenumber: 1846
    functionLinenumberEnd: 1851
    functionName: mco_get_bytes_stored
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t mco_get_bytes_stored(mco_coro* co)
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - co
    argTypes:
    - mco_coro*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1858
      start: 1853
    functionDepth: 0
    functionLinenumber: 1853
    functionLinenumberEnd: 1858
    functionName: mco_get_storage_size
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t mco_get_storage_size(mco_coro* co)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1863
      start: 1861
    functionDepth: 0
    functionLinenumber: 1861
    functionLinenumberEnd: 1863
    functionName: mco_running
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: mco_coro
    signature: mco_coro * mco_running(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1867
      start: 1865
    functionDepth: 0
    functionLinenumber: 1865
    functionLinenumberEnd: 1867
    functionName: _mco_running
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: MCO_NO_INLINE
    signature: MCO_NO_INLINE * _mco_running(void)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: func
      Src: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h:1875,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1876
      start: 1868
    functionDepth: 0
    functionLinenumber: 1868
    functionLinenumberEnd: 1876
    functionName: mco_running
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 1
    functionsReached:
    - func
    linkageType: ''
    returnType: mco_coro
    signature: mco_coro * mco_running(void)
  - BBCount: 14
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 30
    argCount: 1
    argNames:
    - res
    argTypes:
    - mco_result
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1909
      start: 1879
    functionDepth: 0
    functionLinenumber: 1879
    functionLinenumberEnd: 1909
    functionName: mco_result_description
    functionSourceFile: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: char
    signature: char * mco_result_description(mco_result res)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 65
    functionDepth: 0
    functionLinenumber: 65
    functionLinenumberEnd: 66
    functionName: ZMQ_DEPRECATED
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_DEPRECATED(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 68
      start: 67
    functionDepth: 0
    functionLinenumber: 67
    functionLinenumberEnd: 68
    functionName: ZMQ_DEPRECATED
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_DEPRECATED(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 70
      start: 69
    functionDepth: 0
    functionLinenumber: 69
    functionLinenumberEnd: 70
    functionName: ZMQ_DEPRECATED
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_DEPRECATED(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - msg
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 88
      start: 87
    functionDepth: 0
    functionLinenumber: 87
    functionLinenumberEnd: 88
    functionName: ZMQ_CPP11_DEPRECATED
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_CPP11_DEPRECATED(msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - X
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 126
    functionDepth: 0
    functionLinenumber: 126
    functionLinenumberEnd: 127
    functionName: CPPZMQ_HAS_INCLUDE_CPP17
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CPPZMQ_HAS_INCLUDE_CPP17(X)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - X
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 129
      start: 128
    functionDepth: 0
    functionLinenumber: 128
    functionLinenumberEnd: 129
    functionName: CPPZMQ_HAS_INCLUDE_CPP17
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: CPPZMQ_HAS_INCLUDE_CPP17(X)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 195
      start: 194
    functionDepth: 0
    functionLinenumber: 194
    functionLinenumberEnd: 195
    functionName: ZMQ_IS_TRIVIALLY_COPYABLE
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_IS_TRIVIALLY_COPYABLE(T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - T
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 198
      start: 197
    functionDepth: 0
    functionLinenumber: 197
    functionLinenumberEnd: 198
    functionName: ZMQ_IS_TRIVIALLY_COPYABLE
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_IS_TRIVIALLY_COPYABLE(T)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - msg
    - ','
    - socket
    - ','
    - flags
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 218
      start: 217
    functionDepth: 0
    functionLinenumber: 217
    functionLinenumberEnd: 218
    functionName: zmq_msg_recv
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: zmq_msg_recv(msg, socket, flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expression
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 225
      start: 224
    functionDepth: 0
    functionLinenumber: 224
    functionLinenumberEnd: 225
    functionName: ZMQ_ASSERT
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_ASSERT(expression)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - expression
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 227
      start: 226
    functionDepth: 0
    functionLinenumber: 226
    functionLinenumberEnd: 227
    functionName: ZMQ_ASSERT
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_ASSERT(expression)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:238,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:238,1
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:240,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: zmq::detail::ranges::begin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - zmq::detail::ranges::begin
    - std::forward<T>
    linkageType: ''
    returnType: auto
    signature: auto begin(T &&r) -> decltype(begin(std::forward<T>(r)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:242,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:242,1
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:244,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:244,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 245
    functionName: zmq::detail::ranges::end
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - std::forward<T>
    - zmq::detail::ranges::end
    linkageType: ''
    returnType: auto
    signature: auto end(T &&r) -> decltype(end(std::forward<T>(r)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:238,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:238,1
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:240,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: zmq::detail::ranges::begin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - zmq::detail::ranges::begin
    - std::forward<T>
    linkageType: ''
    returnType: auto
    signature: auto begin(T &&r) -> decltype(begin(std::forward<T>(r)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:242,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:242,1
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:244,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:244,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 245
    functionName: zmq::detail::ranges::end
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - std::forward<T>
    - zmq::detail::ranges::end
    linkageType: ''
    returnType: auto
    signature: auto end(T &&r) -> decltype(end(std::forward<T>(r)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:238,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:238,1
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:240,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: zmq::detail::ranges::begin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 3
    functionsReached:
    - zmq::detail::ranges::begin
    - std::forward<T>
    linkageType: ''
    returnType: auto
    signature: auto begin(T &&r) -> decltype(begin(std::forward<T>(r)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:242,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:242,1
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:244,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:244,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 245
    functionName: zmq::detail::ranges::end
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 3
    functionsReached:
    - std::forward<T>
    - zmq::detail::ranges::end
    linkageType: ''
    returnType: auto
    signature: auto end(T &&r) -> decltype(end(std::forward<T>(r)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:238,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:238,1
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:240,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: zmq::detail::ranges::begin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 4
    functionsReached:
    - zmq::detail::ranges::begin
    - std::forward<T>
    linkageType: ''
    returnType: auto
    signature: auto begin(T &&r) -> decltype(begin(std::forward<T>(r)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:242,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:242,1
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:244,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:244,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 245
    functionName: zmq::detail::ranges::end
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 4
    functionsReached:
    - std::forward<T>
    - zmq::detail::ranges::end
    linkageType: ''
    returnType: auto
    signature: auto end(T &&r) -> decltype(end(std::forward<T>(r)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:293,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 293
    functionDepth: 0
    functionLinenumber: 293
    functionLinenumberEnd: 293
    functionName: zmq::error_t::error_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_errno
    linkageType: ''
    returnType: void
    signature: void error_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - err
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 294
    functionName: zmq::error_t::error_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void error_t(int err)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_strerror
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 298
    functionName: zmq::error_t::ZMQ_OVERRIDE
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_strerror
    linkageType: ''
    returnType: ZMQ_NOTHROW
    signature: ZMQ_NOTHROW ZMQ_OVERRIDE
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 299
    functionDepth: 0
    functionLinenumber: 299
    functionLinenumberEnd: 299
    functionName: zmq::error_t::num
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int num() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:308,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:308,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:310,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - items_
    - nitems_
    - timeout_
    argTypes:
    - zmq_pollitem_t*
    - size_t
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 306
    functionDepth: 0
    functionLinenumber: 306
    functionLinenumberEnd: 312
    functionName: zmq::detail::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - error_t
    - zmq_poll
    - static_cast<int>
    linkageType: ''
    returnType: int
    signature: int poll(zmq_pollitem_t *items_, size_t nitems_, long timeout_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:308,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:308,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:310,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - items_
    - nitems_
    - timeout_
    argTypes:
    - zmq_pollitem_t*
    - size_t
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 306
    functionDepth: 0
    functionLinenumber: 306
    functionLinenumberEnd: 312
    functionName: zmq::detail::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - error_t
    - zmq_poll
    - static_cast<int>
    linkageType: ''
    returnType: int
    signature: int poll(zmq_pollitem_t *items_, size_t nitems_, long timeout_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - items_
    - nitems_
    argTypes:
    - zmq_pollitem_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 319
    functionDepth: 1
    functionLinenumber: 319
    functionLinenumberEnd: 323
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::detail::poll
    linkageType: ''
    returnType: int
    signature: int poll(zmq_pollitem_t *items_, size_t nitems_, long timeout_ = -1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:328,1
    - Dst: const_cast<zmq_pollitem_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - items_
    - nitems_
    argTypes:
    - zmq_pollitem_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 326
    functionDepth: 1
    functionLinenumber: 326
    functionLinenumberEnd: 329
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::detail::poll
    - const_cast<zmq_pollitem_t *>
    linkageType: ''
    returnType: int
    signature: int poll(zmq_pollitem_t const *items_, size_t nitems_, long timeout_
      = -1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:336,1
    - Dst: const_cast<zmq_pollitem_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:336,1
    - Dst: static_cast<long>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:337,1
    - Dst: std::chrono::milliseconds::count
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - items
    - nitems
    - timeout
    argTypes:
    - zmq_pollitem_t*
    - size_t
    - std::chrono::milliseconds
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 333
    functionDepth: 2
    functionLinenumber: 333
    functionLinenumberEnd: 338
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::detail::poll
    - const_cast<zmq_pollitem_t *>
    - std::chrono::milliseconds::count
    - static_cast<long>
    linkageType: ''
    returnType: int
    signature: int poll(zmq_pollitem_t const *items, size_t nitems, std::chrono::milliseconds
      timeout)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:344,1
    - Dst: const_cast<zmq_pollitem_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:344,1
    - Dst: std::vector<zmq_pollitem_t>::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:344,1
    - Dst: std::vector<zmq_pollitem_t>::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:344,1
    - Dst: static_cast<long>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:345,1
    - Dst: std::chrono::milliseconds::count
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - items
    - timeout
    argTypes:
    - std::vector<zmq_pollitem_t>
    - std::chrono::milliseconds
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 341
    functionDepth: 2
    functionLinenumber: 341
    functionLinenumberEnd: 346
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::chrono::milliseconds::count
    - std::vector<zmq_pollitem_t>::size
    - zmq::detail::poll
    - static_cast<long>
    - std::vector<zmq_pollitem_t>::data
    - const_cast<zmq_pollitem_t *>
    linkageType: ''
    returnType: int
    signature: "int poll(std::vector<zmq_pollitem_t> const &items,\n                std::chrono::milliseconds
      timeout)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:351,1
    - Dst: const_cast<zmq_pollitem_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:351,1
    - Dst: std::vector<zmq_pollitem_t>::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:351,1
    - Dst: std::vector<zmq_pollitem_t>::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - items
    argTypes:
    - std::vector<zmq_pollitem_t>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 352
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::vector<zmq_pollitem_t>::data
    - zmq::detail::poll
    - const_cast<zmq_pollitem_t *>
    - std::vector<zmq_pollitem_t>::size
    linkageType: ''
    returnType: int
    signature: int poll(std::vector<zmq_pollitem_t> const &items, long timeout_ =
      -1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:357,1
    - Dst: static_cast<long>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:357,1
    - Dst: count
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - items
    - nitems
    argTypes:
    - zmq_pollitem_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 354
    functionDepth: 2
    functionLinenumber: 354
    functionLinenumberEnd: 358
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - count
    - zmq::detail::poll
    - static_cast<long>
    linkageType: ''
    returnType: int
    signature: int poll(zmq_pollitem_t *items, size_t nitems, std::chrono::milliseconds
      timeout = std::chrono::milliseconds{-1})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:363,1
    - Dst: std::vector<zmq_pollitem_t>::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:363,1
    - Dst: std::vector<zmq_pollitem_t>::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:363,1
    - Dst: static_cast<long>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:363,1
    - Dst: count
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:363,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - items
    argTypes:
    - std::vector<zmq_pollitem_t>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 360
    functionDepth: 2
    functionLinenumber: 360
    functionLinenumberEnd: 364
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - count
    - std::vector<zmq_pollitem_t>::size
    - zmq::detail::poll
    - static_cast<long>
    - std::vector<zmq_pollitem_t>::data
    linkageType: ''
    returnType: int
    signature: "int poll(std::vector<zmq_pollitem_t> &items,\n                std::chrono::milliseconds
      timeout = std::chrono::milliseconds{-1})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:369,1
    - Dst: std::vector<zmq_pollitem_t>::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:369,1
    - Dst: std::vector<zmq_pollitem_t>::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:369,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - items
    - timeout_
    argTypes:
    - std::vector<zmq_pollitem_t>
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 367
    functionDepth: 1
    functionLinenumber: 367
    functionLinenumberEnd: 370
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::vector<zmq_pollitem_t>::data
    - zmq::detail::poll
    - std::vector<zmq_pollitem_t>::size
    linkageType: ''
    returnType: int
    signature: int poll(std::vector<zmq_pollitem_t> &items, long timeout_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:376,1
    - Dst: std::array<zmq_pollitem_t, SIZE>::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:376,1
    - Dst: std::array<zmq_pollitem_t, SIZE>::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:376,1
    - Dst: static_cast<long>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:376,1
    - Dst: count
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:376,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - items
    argTypes:
    - std::array<zmq_pollitem_t, SIZE>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 373
    functionDepth: 2
    functionLinenumber: 373
    functionLinenumberEnd: 377
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - count
    - std::array<zmq_pollitem_t, SIZE>::size
    - zmq::detail::poll
    - static_cast<long>
    - std::array<zmq_pollitem_t, SIZE>::data
    linkageType: ''
    returnType: int
    signature: "int poll(std::array<zmq_pollitem_t, SIZE> &items,\n                std::chrono::milliseconds
      timeout = std::chrono::milliseconds{-1})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_version
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - major_
    - minor_
    - patch_
    argTypes:
    - int*
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 384
    functionName: zmq::version
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_version
    linkageType: ''
    returnType: void
    signature: void version(int *major_, int *minor_, int *patch_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_version
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:390,1
    - Dst: std::get<0>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:390,1
    - Dst: std::get<1>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:390,1
    - Dst: std::get<2>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 387
    functionDepth: 0
    functionLinenumber: 387
    functionLinenumberEnd: 392
    functionName: zmq::version
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::get<1>
    - std::get<2>
    - std::get<0>
    - zmq_version
    linkageType: ''
    returnType: std::tuple<int, int, int>
    signature: std::tuple<int, int, int> version()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_init
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:414,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 412
    functionDepth: 1
    functionLinenumber: 412
    functionLinenumberEnd: 416
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - ZMQ_ASSERT
    - zmq_msg_init
    linkageType: ''
    returnType: void
    signature: void message_t()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_init_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:420,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:422,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - size_
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 418
    functionDepth: 0
    functionLinenumber: 418
    functionLinenumberEnd: 423
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_init_size
    - error_t
    linkageType: ''
    returnType: void
    signature: void message_t(size_t size_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:429,1
    - Dst: std::distance
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:429,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:431,1
    - Dst: std::distance
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:431,1
    - Dst: zmq_msg_init_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:432,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:434,1
    - Dst: zmq::copy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:435,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:435,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - ForwardIter
    - ForwardIter
    assertStmts:
    - condition: (std::distance(first, last) >= 0)
      pos:
        line_end: 428
        line_start: 428
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 436
      start: 425
    functionDepth: 1
    functionLinenumber: 425
    functionLinenumberEnd: 436
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - error_t
    - zmq::data
    - zmq::copy
    - zmq_msg_init_size
    - assert
    - std::distance
    - static_cast<size_t>
    linkageType: ''
    returnType: void
    signature: void message_t(ForwardIter first, ForwardIter last)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_init_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:440,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:442,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:446,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:446,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - data_
    - size_
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 438
    functionDepth: 0
    functionLinenumber: 438
    functionLinenumberEnd: 448
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::data
    - memcpy
    - zmq_msg_init_size
    - error_t
    linkageType: ''
    returnType: void
    signature: void message_t(const void *data_, size_t size_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_init_data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:452,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:454,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 3
    argNames:
    - data_
    - size_
    - ffn_
    argTypes:
    - void*
    - size_t
    - free_fn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 450
    functionDepth: 0
    functionLinenumber: 450
    functionLinenumberEnd: 455
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - error_t
    - zmq_msg_init_data
    linkageType: ''
    returnType: void
    signature: void message_t(void *data_, size_t size_, free_fn *ffn_, void *hint_
      = ZMQ_NULLPTR)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:470,1
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:470,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - (data)
    argTypes:
    - Char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 469
    functionDepth: 0
    functionLinenumber: 469
    functionLinenumberEnd: 472
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::detail::ranges::begin
    - zmq::detail::ranges::end
    linkageType: ''
    returnType: void
    signature: void message_t(const Char (&data)[N])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:481,1
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:481,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - rng
    argTypes:
    - Range
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 480
    functionDepth: 0
    functionLinenumber: 480
    functionLinenumberEnd: 483
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::detail::ranges::begin
    - zmq::detail::ranges::end
    linkageType: ''
    returnType: void
    signature: void message_t(const Range &rng)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:485,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:485,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - str
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 485
    functionDepth: 1
    functionLinenumber: 485
    functionLinenumberEnd: 485
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::string::data
    - std::string::size
    linkageType: ''
    returnType: void
    signature: void message_t(const std::string &str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string_view::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:488,1
    - Dst: std::string_view::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:488,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - str
    argTypes:
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 488
    functionDepth: 1
    functionLinenumber: 488
    functionLinenumberEnd: 488
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::string_view::size
    - std::string_view::data
    linkageType: ''
    returnType: void
    signature: void message_t(std::string_view str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_init
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:496,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:497,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 494
    functionDepth: 1
    functionLinenumber: 494
    functionLinenumberEnd: 498
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - ZMQ_ASSERT
    - zmq_msg_init
    linkageType: ''
    returnType: void
    signature: void message_t(message_t &&rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:502,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 500
    functionDepth: 0
    functionLinenumber: 500
    functionLinenumberEnd: 504
    functionName: '&operator=(message_t &&rhs)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::swap
    linkageType: ''
    returnType: message_t
    signature: message_t &operator=(message_t &&rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:509,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:510,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 507
    functionDepth: 1
    functionLinenumber: 507
    functionLinenumberEnd: 511
    functionName: ~message_t()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - ZMQ_ASSERT
    - zmq_msg_close
    linkageType: ''
    returnType: void
    signature: void ~message_t()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:515,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:517,1
    - Dst: zmq_msg_init
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:518,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:519,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 513
    functionDepth: 1
    functionLinenumber: 513
    functionLinenumberEnd: 520
    functionName: zmq::rebuild
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - ZMQ_ASSERT
    - zmq_msg_init
    - zmq_msg_close
    - error_t
    linkageType: ''
    returnType: void
    signature: void rebuild()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:524,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:526,1
    - Dst: zmq_msg_init_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:527,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:529,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 1
    argNames:
    - size_
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 522
    functionDepth: 0
    functionLinenumber: 522
    functionLinenumberEnd: 530
    functionName: zmq::rebuild
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_init_size
    - zmq_msg_close
    - error_t
    linkageType: ''
    returnType: void
    signature: void rebuild(size_t size_)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:534,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:536,1
    - Dst: zmq_msg_init_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:537,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:539,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:540,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:540,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 2
    argNames:
    - data_
    - size_
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 532
    functionDepth: 0
    functionLinenumber: 532
    functionLinenumberEnd: 541
    functionName: zmq::rebuild
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - memcpy
    - zmq::data
    - error_t
    - zmq_msg_init_size
    - zmq_msg_close
    linkageType: ''
    returnType: void
    signature: void rebuild(const void *data_, size_t size_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::rebuild
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:545,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:545,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:545,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 543
    functionDepth: 1
    functionLinenumber: 543
    functionLinenumberEnd: 546
    functionName: zmq::rebuild
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - std::string::data
    - std::string::size
    - zmq::rebuild
    linkageType: ''
    returnType: void
    signature: void rebuild(const std::string &str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:550,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:552,1
    - Dst: zmq_msg_init_data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:553,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:555,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 3
    argNames:
    - data_
    - size_
    - ffn_
    argTypes:
    - void*
    - size_t
    - free_fn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 548
    functionDepth: 0
    functionLinenumber: 548
    functionLinenumberEnd: 556
    functionName: zmq::rebuild
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - zmq_msg_close
    - error_t
    - zmq_msg_init_data
    linkageType: ''
    returnType: void
    signature: void rebuild(void *data_, size_t size_, free_fn *ffn_, void *hint_
      = ZMQ_NULLPTR)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:561,1
    - Dst: const_cast<zmq_msg_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:561,1
    - Dst: message_t*::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:561,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:563,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - msg_
    argTypes:
    - message_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 559
    functionDepth: 0
    functionLinenumber: 559
    functionLinenumberEnd: 564
    functionName: zmq::move
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - error_t
    - zmq_msg_move
    - const_cast<zmq_msg_t *>
    - message_t*::handle
    linkageType: ''
    returnType: void
    signature: void move(message_t const *msg_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:568,1
    - Dst: message_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:568,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:570,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - msg_
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 566
    functionDepth: 0
    functionLinenumber: 566
    functionLinenumberEnd: 571
    functionName: zmq::move
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - message_t::handle
    - zmq_msg_move
    - error_t
    linkageType: ''
    returnType: void
    signature: void move(message_t &msg_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_copy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:576,1
    - Dst: const_cast<zmq_msg_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:576,1
    - Dst: message_t*::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:576,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:578,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - msg_
    argTypes:
    - message_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 574
    functionDepth: 0
    functionLinenumber: 574
    functionLinenumberEnd: 579
    functionName: zmq::copy
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - error_t
    - zmq_msg_copy
    - const_cast<zmq_msg_t *>
    - message_t*::handle
    linkageType: ''
    returnType: void
    signature: void copy(message_t const *msg_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_copy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:583,1
    - Dst: message_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:583,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:585,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - msg_
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 581
    functionDepth: 0
    functionLinenumber: 581
    functionLinenumberEnd: 586
    functionName: zmq::copy
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - zmq_msg_copy
    - message_t::handle
    - error_t
    linkageType: ''
    returnType: void
    signature: void copy(message_t &msg_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_more
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:590,1
    - Dst: const_cast<zmq_msg_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:590,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 588
    functionDepth: 0
    functionLinenumber: 588
    functionLinenumberEnd: 592
    functionName: zmq::more
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - const_cast<zmq_msg_t *>
    - zmq_msg_more
    linkageType: ''
    returnType: bool
    signature: bool more() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:594,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 594
    functionName: zmq::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_data
    linkageType: ''
    returnType: void
    signature: void *data() ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:598,1
    - Dst: const_cast<zmq_msg_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 596
    functionDepth: 0
    functionLinenumber: 596
    functionLinenumberEnd: 599
    functionName: zmq::data
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 3
    functionsReached:
    - zmq_msg_data
    - const_cast<zmq_msg_t *>
    linkageType: ''
    returnType: void
    signature: void *data() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:603,1
    - Dst: const_cast<zmq_msg_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:603,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 601
    functionDepth: 0
    functionLinenumber: 601
    functionLinenumberEnd: 604
    functionName: zmq::size
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_size
    - const_cast<zmq_msg_t *>
    linkageType: ''
    returnType: size_t
    signature: size_t size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:606,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 606
    functionDepth: 0
    functionLinenumber: 606
    functionLinenumberEnd: 606
    functionName: zmq::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::size
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<T *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:608,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:608,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 608
    functionDepth: 0
    functionLinenumber: 608
    functionLinenumberEnd: 608
    functionName: zmq::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T *>
    - zmq::data
    linkageType: ''
    returnType: T
    signature: T *data() ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<T const *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:612,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:612,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 610
    functionDepth: 0
    functionLinenumber: 610
    functionLinenumberEnd: 613
    functionName: zmq::data
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 5
    functionsReached:
    - static_cast<T const *>
    - zmq::data
    linkageType: ''
    returnType: T
    signature: T *data() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - other
    argTypes:
    - message_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 616
      start: 616
    functionDepth: 0
    functionLinenumber: 616
    functionLinenumberEnd: 616
    functionName: zmq::equal
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool equal(const message_t *other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:620,1
    - Dst: message_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:621,1
    - Dst: memcmp
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:621,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:621,1
    - Dst: message_t::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:621,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - other
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 618
    functionDepth: 1
    functionLinenumber: 618
    functionLinenumberEnd: 622
    functionName: operator==(const message_t &other) const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - memcmp
    - zmq::data
    - message_t::data
    - zmq::size
    - message_t::size
    linkageType: ''
    returnType: bool
    signature: bool operator==(const message_t &other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - other
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 624
    functionDepth: 0
    functionLinenumber: 624
    functionLinenumberEnd: 627
    functionName: operator!=(const message_t &other) const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const message_t &other) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:632,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:634,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - property_
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 630
    functionDepth: 0
    functionLinenumber: 630
    functionLinenumberEnd: 636
    functionName: zmq::get
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_get
    - error_t
    linkageType: ''
    returnType: int
    signature: int get(int property_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_gets
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:642,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:644,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - property_
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 640
    functionDepth: 0
    functionLinenumber: 640
    functionLinenumberEnd: 646
    functionName: zmq::gets
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_gets
    - error_t
    linkageType: ''
    returnType: char
    signature: char *gets(const char *property_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_routing_id
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:652,1
    - Dst: const_cast<zmq_msg_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:652,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 650
    functionDepth: 0
    functionLinenumber: 650
    functionLinenumberEnd: 653
    functionName: zmq::routing_id
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - const_cast<zmq_msg_t *>
    - zmq_msg_routing_id
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t routing_id() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_set_routing_id
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:657,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:659,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - routing_id
    argTypes:
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 655
    functionDepth: 0
    functionLinenumber: 655
    functionLinenumberEnd: 660
    functionName: zmq::set_routing_id
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_set_routing_id
    - error_t
    linkageType: ''
    returnType: void
    signature: void set_routing_id(uint32_t routing_id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_group
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:664,1
    - Dst: const_cast<zmq_msg_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 665
      start: 662
    functionDepth: 0
    functionLinenumber: 662
    functionLinenumberEnd: 665
    functionName: zmq::group
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_group
    - const_cast<zmq_msg_t *>
    linkageType: ''
    returnType: char
    signature: char *group() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_set_group
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:669,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:671,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - group
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 672
      start: 667
    functionDepth: 0
    functionLinenumber: 667
    functionLinenumberEnd: 672
    functionName: zmq::set_group
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_set_group
    - error_t
    linkageType: ''
    returnType: void
    signature: void set_group(const char *group)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:678,1
    - Dst: static_cast<const char *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:678,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:678,1
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 676
    functionDepth: 1
    functionLinenumber: 676
    functionLinenumberEnd: 679
    functionName: zmq::to_string
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::size
    - static_cast<const char *>
    - zmq::data
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string to_string() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string_view
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:684,1
    - Dst: static_cast<const char *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:684,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:684,1
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:684,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 685
      start: 682
    functionDepth: 0
    functionLinenumber: 682
    functionLinenumberEnd: 685
    functionName: zmq::to_string_view
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::size
    - zmq::data
    - std::string_view
    - static_cast<const char *>
    linkageType: ''
    returnType: std::string_view
    signature: std::string_view to_string_view() const noexcept
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:699,1
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:700,1
    - Dst: std::setw
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:706,1
    - Dst: std::setfill
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:707,1
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:707,1
    - Dst: std::setw
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:718,1
    - Dst: std::setfill
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:718,1
    - Dst: static_cast<short>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:719,1
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:724,1
    - Dst: std::stringstream::str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:728,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 694
    functionDepth: 0
    functionLinenumber: 694
    functionLinenumberEnd: 729
    functionName: zmq::str
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::setfill
    - zmq::data
    - std::setw
    - static_cast<short>
    - zmq::size
    - std::stringstream::str
    linkageType: ''
    returnType: std::string
    signature: std::string str(size_t max_size = 1000) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:734,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - other
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 731
    functionDepth: 0
    functionLinenumber: 731
    functionLinenumberEnd: 735
    functionName: zmq::swap
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - zmq::swap
    linkageType: ''
    returnType: void
    signature: void swap(message_t &other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 737
      start: 737
    functionDepth: 0
    functionLinenumber: 737
    functionLinenumberEnd: 737
    functionName: zmq::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD *handle() ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 738
    functionDepth: 0
    functionLinenumber: 738
    functionLinenumberEnd: 738
    functionName: zmq::handle
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD *handle() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:238,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:238,1
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:240,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: zmq::detail::ranges::begin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 7
    functionsReached:
    - zmq::detail::ranges::begin
    - std::forward<T>
    linkageType: ''
    returnType: auto
    signature: auto begin(T &&r) -> decltype(begin(std::forward<T>(r)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:242,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:242,1
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:244,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:244,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 245
    functionName: zmq::detail::ranges::end
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 7
    functionsReached:
    - std::forward<T>
    - zmq::detail::ranges::end
    linkageType: ''
    returnType: auto
    signature: auto end(T &&r) -> decltype(end(std::forward<T>(r)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:238,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:238,1
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:240,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: zmq::detail::ranges::begin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 8
    functionsReached:
    - zmq::detail::ranges::begin
    - std::forward<T>
    linkageType: ''
    returnType: auto
    signature: auto begin(T &&r) -> decltype(begin(std::forward<T>(r)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:242,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:242,1
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:244,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:244,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 245
    functionName: zmq::detail::ranges::end
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 8
    functionsReached:
    - std::forward<T>
    - zmq::detail::ranges::end
    linkageType: ''
    returnType: auto
    signature: auto end(T &&r) -> decltype(end(std::forward<T>(r)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:238,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:238,1
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:240,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: zmq::detail::ranges::begin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 9
    functionsReached:
    - zmq::detail::ranges::begin
    - std::forward<T>
    linkageType: ''
    returnType: auto
    signature: auto begin(T &&r) -> decltype(begin(std::forward<T>(r)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:242,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:242,1
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:244,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:244,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 245
    functionName: zmq::detail::ranges::end
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 9
    functionsReached:
    - std::forward<T>
    - zmq::detail::ranges::end
    linkageType: ''
    returnType: auto
    signature: auto end(T &&r) -> decltype(end(std::forward<T>(r)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:238,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:238,1
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:240,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:240,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 241
      start: 238
    functionDepth: 0
    functionLinenumber: 238
    functionLinenumberEnd: 241
    functionName: zmq::detail::ranges::begin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 10
    functionsReached:
    - zmq::detail::ranges::begin
    - std::forward<T>
    linkageType: ''
    returnType: auto
    signature: auto begin(T &&r) -> decltype(begin(std::forward<T>(r)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:242,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:242,1
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:244,1
    - Dst: std::forward<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:244,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - r
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 245
      start: 242
    functionDepth: 0
    functionLinenumber: 242
    functionLinenumberEnd: 245
    functionName: zmq::detail::ranges::end
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 10
    functionsReached:
    - std::forward<T>
    - zmq::detail::ranges::end
    linkageType: ''
    returnType: auto
    signature: auto end(T &&r) -> decltype(end(std::forward<T>(r)))
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:293,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 293
    functionDepth: 0
    functionLinenumber: 293
    functionLinenumberEnd: 293
    functionName: zmq::error_t::error_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_errno
    linkageType: ''
    returnType: void
    signature: void error_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - err
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 294
      start: 294
    functionDepth: 0
    functionLinenumber: 294
    functionLinenumberEnd: 294
    functionName: zmq::error_t::error_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void error_t(int err)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_strerror
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:297,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 298
      start: 295
    functionDepth: 0
    functionLinenumber: 295
    functionLinenumberEnd: 298
    functionName: zmq::error_t::ZMQ_OVERRIDE
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_strerror
    linkageType: ''
    returnType: ZMQ_NOTHROW
    signature: ZMQ_NOTHROW ZMQ_OVERRIDE
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 299
      start: 299
    functionDepth: 0
    functionLinenumber: 299
    functionLinenumberEnd: 299
    functionName: zmq::error_t::num
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int num() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:308,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:308,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:310,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - items_
    - nitems_
    - timeout_
    argTypes:
    - zmq_pollitem_t*
    - size_t
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 306
    functionDepth: 0
    functionLinenumber: 306
    functionLinenumberEnd: 312
    functionName: zmq::detail::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 9
    functionsReached:
    - error_t
    - zmq_poll
    - static_cast<int>
    linkageType: ''
    returnType: int
    signature: int poll(zmq_pollitem_t *items_, size_t nitems_, long timeout_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:308,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:308,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:310,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - items_
    - nitems_
    - timeout_
    argTypes:
    - zmq_pollitem_t*
    - size_t
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 312
      start: 306
    functionDepth: 0
    functionLinenumber: 306
    functionLinenumberEnd: 312
    functionName: zmq::detail::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 9
    functionsReached:
    - error_t
    - zmq_poll
    - static_cast<int>
    linkageType: ''
    returnType: int
    signature: int poll(zmq_pollitem_t *items_, size_t nitems_, long timeout_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:322,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - items_
    - nitems_
    argTypes:
    - zmq_pollitem_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 323
      start: 319
    functionDepth: 1
    functionLinenumber: 319
    functionLinenumberEnd: 323
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::detail::poll
    linkageType: ''
    returnType: int
    signature: int poll(zmq_pollitem_t *items_, size_t nitems_, long timeout_ = -1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:328,1
    - Dst: const_cast<zmq_pollitem_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:328,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - items_
    - nitems_
    argTypes:
    - zmq_pollitem_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 326
    functionDepth: 1
    functionLinenumber: 326
    functionLinenumberEnd: 329
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::detail::poll
    - const_cast<zmq_pollitem_t *>
    linkageType: ''
    returnType: int
    signature: int poll(zmq_pollitem_t const *items_, size_t nitems_, long timeout_
      = -1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:336,1
    - Dst: const_cast<zmq_pollitem_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:336,1
    - Dst: static_cast<long>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:337,1
    - Dst: std::chrono::milliseconds::count
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:337,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - items
    - nitems
    - timeout
    argTypes:
    - zmq_pollitem_t*
    - size_t
    - std::chrono::milliseconds
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 338
      start: 333
    functionDepth: 2
    functionLinenumber: 333
    functionLinenumberEnd: 338
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::detail::poll
    - const_cast<zmq_pollitem_t *>
    - std::chrono::milliseconds::count
    - static_cast<long>
    linkageType: ''
    returnType: int
    signature: int poll(zmq_pollitem_t const *items, size_t nitems, std::chrono::milliseconds
      timeout)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:344,1
    - Dst: const_cast<zmq_pollitem_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:344,1
    - Dst: std::vector<zmq_pollitem_t>::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:344,1
    - Dst: std::vector<zmq_pollitem_t>::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:344,1
    - Dst: static_cast<long>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:345,1
    - Dst: std::chrono::milliseconds::count
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:345,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - items
    - timeout
    argTypes:
    - std::vector<zmq_pollitem_t>
    - std::chrono::milliseconds
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 341
    functionDepth: 2
    functionLinenumber: 341
    functionLinenumberEnd: 346
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::chrono::milliseconds::count
    - std::vector<zmq_pollitem_t>::size
    - zmq::detail::poll
    - static_cast<long>
    - std::vector<zmq_pollitem_t>::data
    - const_cast<zmq_pollitem_t *>
    linkageType: ''
    returnType: int
    signature: "int poll(std::vector<zmq_pollitem_t> const &items,\n                std::chrono::milliseconds
      timeout)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:351,1
    - Dst: const_cast<zmq_pollitem_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:351,1
    - Dst: std::vector<zmq_pollitem_t>::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:351,1
    - Dst: std::vector<zmq_pollitem_t>::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:351,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - items
    argTypes:
    - std::vector<zmq_pollitem_t>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 352
      start: 349
    functionDepth: 1
    functionLinenumber: 349
    functionLinenumberEnd: 352
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::vector<zmq_pollitem_t>::data
    - zmq::detail::poll
    - const_cast<zmq_pollitem_t *>
    - std::vector<zmq_pollitem_t>::size
    linkageType: ''
    returnType: int
    signature: int poll(std::vector<zmq_pollitem_t> const &items, long timeout_ =
      -1)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:357,1
    - Dst: static_cast<long>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:357,1
    - Dst: count
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:357,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - items
    - nitems
    argTypes:
    - zmq_pollitem_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 358
      start: 354
    functionDepth: 2
    functionLinenumber: 354
    functionLinenumberEnd: 358
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - count
    - zmq::detail::poll
    - static_cast<long>
    linkageType: ''
    returnType: int
    signature: int poll(zmq_pollitem_t *items, size_t nitems, std::chrono::milliseconds
      timeout = std::chrono::milliseconds{-1})
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:363,1
    - Dst: std::vector<zmq_pollitem_t>::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:363,1
    - Dst: std::vector<zmq_pollitem_t>::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:363,1
    - Dst: static_cast<long>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:363,1
    - Dst: count
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:363,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - items
    argTypes:
    - std::vector<zmq_pollitem_t>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 364
      start: 360
    functionDepth: 2
    functionLinenumber: 360
    functionLinenumberEnd: 364
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - count
    - std::vector<zmq_pollitem_t>::size
    - zmq::detail::poll
    - static_cast<long>
    - std::vector<zmq_pollitem_t>::data
    linkageType: ''
    returnType: int
    signature: "int poll(std::vector<zmq_pollitem_t> &items,\n                std::chrono::milliseconds
      timeout = std::chrono::milliseconds{-1})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:369,1
    - Dst: std::vector<zmq_pollitem_t>::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:369,1
    - Dst: std::vector<zmq_pollitem_t>::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:369,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - items
    - timeout_
    argTypes:
    - std::vector<zmq_pollitem_t>
    - long
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 370
      start: 367
    functionDepth: 1
    functionLinenumber: 367
    functionLinenumberEnd: 370
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::vector<zmq_pollitem_t>::data
    - zmq::detail::poll
    - std::vector<zmq_pollitem_t>::size
    linkageType: ''
    returnType: int
    signature: int poll(std::vector<zmq_pollitem_t> &items, long timeout_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:376,1
    - Dst: std::array<zmq_pollitem_t, SIZE>::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:376,1
    - Dst: std::array<zmq_pollitem_t, SIZE>::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:376,1
    - Dst: static_cast<long>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:376,1
    - Dst: count
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:376,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - items
    argTypes:
    - std::array<zmq_pollitem_t, SIZE>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 377
      start: 373
    functionDepth: 2
    functionLinenumber: 373
    functionLinenumberEnd: 377
    functionName: zmq::poll
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - count
    - std::array<zmq_pollitem_t, SIZE>::size
    - zmq::detail::poll
    - static_cast<long>
    - std::array<zmq_pollitem_t, SIZE>::data
    linkageType: ''
    returnType: int
    signature: "int poll(std::array<zmq_pollitem_t, SIZE> &items,\n                std::chrono::milliseconds
      timeout = std::chrono::milliseconds{-1})"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_version
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - major_
    - minor_
    - patch_
    argTypes:
    - int*
    - int*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 384
      start: 381
    functionDepth: 0
    functionLinenumber: 381
    functionLinenumberEnd: 384
    functionName: zmq::version
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_version
    linkageType: ''
    returnType: void
    signature: void version(int *major_, int *minor_, int *patch_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_version
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:390,1
    - Dst: std::get<0>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:390,1
    - Dst: std::get<1>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:390,1
    - Dst: std::get<2>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:390,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 387
    functionDepth: 0
    functionLinenumber: 387
    functionLinenumberEnd: 392
    functionName: zmq::version
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::get<1>
    - std::get<2>
    - std::get<0>
    - zmq_version
    linkageType: ''
    returnType: std::tuple<int, int, int>
    signature: std::tuple<int, int, int> version()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_init
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:414,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:415,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 412
    functionDepth: 1
    functionLinenumber: 412
    functionLinenumberEnd: 416
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - ZMQ_ASSERT
    - zmq_msg_init
    linkageType: ''
    returnType: void
    signature: void message_t()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_init_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:420,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:422,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - size_
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 423
      start: 418
    functionDepth: 0
    functionLinenumber: 418
    functionLinenumberEnd: 423
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_init_size
    - error_t
    linkageType: ''
    returnType: void
    signature: void message_t(size_t size_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:429,1
    - Dst: std::distance
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:429,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:431,1
    - Dst: std::distance
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:431,1
    - Dst: zmq_msg_init_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:432,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:434,1
    - Dst: zmq::copy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:435,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:435,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - ForwardIter
    - ForwardIter
    assertStmts:
    - condition: (std::distance(first, last) >= 0)
      pos:
        line_end: 428
        line_start: 428
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 436
      start: 425
    functionDepth: 1
    functionLinenumber: 425
    functionLinenumberEnd: 436
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - error_t
    - zmq::data
    - zmq::copy
    - zmq_msg_init_size
    - assert
    - std::distance
    - static_cast<size_t>
    linkageType: ''
    returnType: void
    signature: void message_t(ForwardIter first, ForwardIter last)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_init_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:440,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:442,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:446,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:446,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - data_
    - size_
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 438
    functionDepth: 0
    functionLinenumber: 438
    functionLinenumberEnd: 448
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::data
    - memcpy
    - zmq_msg_init_size
    - error_t
    linkageType: ''
    returnType: void
    signature: void message_t(const void *data_, size_t size_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_init_data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:452,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:454,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 3
    argNames:
    - data_
    - size_
    - ffn_
    argTypes:
    - void*
    - size_t
    - free_fn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 455
      start: 450
    functionDepth: 0
    functionLinenumber: 450
    functionLinenumberEnd: 455
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - error_t
    - zmq_msg_init_data
    linkageType: ''
    returnType: void
    signature: void message_t(void *data_, size_t size_, free_fn *ffn_, void *hint_
      = ZMQ_NULLPTR)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:470,1
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:470,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - (data)
    argTypes:
    - Char[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 472
      start: 469
    functionDepth: 0
    functionLinenumber: 469
    functionLinenumberEnd: 472
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::detail::ranges::begin
    - zmq::detail::ranges::end
    linkageType: ''
    returnType: void
    signature: void message_t(const Char (&data)[N])
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::ranges::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:481,1
    - Dst: zmq::detail::ranges::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:481,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - rng
    argTypes:
    - Range
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 483
      start: 480
    functionDepth: 0
    functionLinenumber: 480
    functionLinenumberEnd: 483
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::detail::ranges::begin
    - zmq::detail::ranges::end
    linkageType: ''
    returnType: void
    signature: void message_t(const Range &rng)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:485,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:485,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - str
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 485
    functionDepth: 1
    functionLinenumber: 485
    functionLinenumberEnd: 485
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::string::data
    - std::string::size
    linkageType: ''
    returnType: void
    signature: void message_t(const std::string &str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string_view::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:488,1
    - Dst: std::string_view::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:488,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - str
    argTypes:
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 488
      start: 488
    functionDepth: 1
    functionLinenumber: 488
    functionLinenumberEnd: 488
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::string_view::size
    - std::string_view::data
    linkageType: ''
    returnType: void
    signature: void message_t(std::string_view str)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_init
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:496,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:497,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 494
    functionDepth: 1
    functionLinenumber: 494
    functionLinenumberEnd: 498
    functionName: zmq::message_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - ZMQ_ASSERT
    - zmq_msg_init
    linkageType: ''
    returnType: void
    signature: void message_t(message_t &&rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:502,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 504
      start: 500
    functionDepth: 0
    functionLinenumber: 500
    functionLinenumberEnd: 504
    functionName: '&operator=(message_t &&rhs)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: message_t
    signature: message_t &operator=(message_t &&rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:509,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:510,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 507
    functionDepth: 1
    functionLinenumber: 507
    functionLinenumberEnd: 511
    functionName: ~message_t()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - ZMQ_ASSERT
    - zmq_msg_close
    linkageType: ''
    returnType: void
    signature: void ~message_t()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:515,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:517,1
    - Dst: zmq_msg_init
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:518,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:519,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 520
      start: 513
    functionDepth: 1
    functionLinenumber: 513
    functionLinenumberEnd: 520
    functionName: zmq::rebuild
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - ZMQ_ASSERT
    - zmq_msg_init
    - zmq_msg_close
    - error_t
    linkageType: ''
    returnType: void
    signature: void rebuild()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:524,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:526,1
    - Dst: zmq_msg_init_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:527,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:529,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 1
    argNames:
    - size_
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 522
    functionDepth: 0
    functionLinenumber: 522
    functionLinenumberEnd: 530
    functionName: zmq::rebuild
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - zmq_msg_init_size
    - zmq_msg_close
    - error_t
    linkageType: ''
    returnType: void
    signature: void rebuild(size_t size_)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:534,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:536,1
    - Dst: zmq_msg_init_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:537,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:539,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:540,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:540,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 7
    argCount: 2
    argNames:
    - data_
    - size_
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 541
      start: 532
    functionDepth: 0
    functionLinenumber: 532
    functionLinenumberEnd: 541
    functionName: zmq::rebuild
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - memcpy
    - zmq::data
    - error_t
    - zmq_msg_init_size
    - zmq_msg_close
    linkageType: ''
    returnType: void
    signature: void rebuild(const void *data_, size_t size_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::rebuild
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:545,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:545,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:545,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 543
    functionDepth: 1
    functionLinenumber: 543
    functionLinenumberEnd: 546
    functionName: zmq::rebuild
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - std::string::data
    - std::string::size
    - zmq::rebuild
    linkageType: ''
    returnType: void
    signature: void rebuild(const std::string &str)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:550,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:552,1
    - Dst: zmq_msg_init_data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:553,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:555,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 6
    argCount: 3
    argNames:
    - data_
    - size_
    - ffn_
    argTypes:
    - void*
    - size_t
    - free_fn*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 548
    functionDepth: 0
    functionLinenumber: 548
    functionLinenumberEnd: 556
    functionName: zmq::rebuild
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - zmq_msg_close
    - error_t
    - zmq_msg_init_data
    linkageType: ''
    returnType: void
    signature: void rebuild(void *data_, size_t size_, free_fn *ffn_, void *hint_
      = ZMQ_NULLPTR)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:561,1
    - Dst: const_cast<zmq_msg_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:561,1
    - Dst: message_t*::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:561,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:563,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - msg_
    argTypes:
    - message_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 559
    functionDepth: 0
    functionLinenumber: 559
    functionLinenumberEnd: 564
    functionName: zmq::move
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - error_t
    - zmq_msg_move
    - const_cast<zmq_msg_t *>
    - message_t*::handle
    linkageType: ''
    returnType: void
    signature: void move(message_t const *msg_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:568,1
    - Dst: message_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:568,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:570,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - msg_
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 571
      start: 566
    functionDepth: 0
    functionLinenumber: 566
    functionLinenumberEnd: 571
    functionName: zmq::move
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - message_t::handle
    - zmq_msg_move
    - error_t
    linkageType: ''
    returnType: void
    signature: void move(message_t &msg_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_copy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:576,1
    - Dst: const_cast<zmq_msg_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:576,1
    - Dst: message_t*::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:576,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:578,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - msg_
    argTypes:
    - message_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 579
      start: 574
    functionDepth: 0
    functionLinenumber: 574
    functionLinenumberEnd: 579
    functionName: zmq::copy
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - error_t
    - zmq_msg_copy
    - const_cast<zmq_msg_t *>
    - message_t*::handle
    linkageType: ''
    returnType: void
    signature: void copy(message_t const *msg_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_copy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:583,1
    - Dst: message_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:583,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:585,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - msg_
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 586
      start: 581
    functionDepth: 0
    functionLinenumber: 581
    functionLinenumberEnd: 586
    functionName: zmq::copy
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - zmq_msg_copy
    - message_t::handle
    - error_t
    linkageType: ''
    returnType: void
    signature: void copy(message_t &msg_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_more
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:590,1
    - Dst: const_cast<zmq_msg_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:590,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 588
    functionDepth: 0
    functionLinenumber: 588
    functionLinenumberEnd: 592
    functionName: zmq::more
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - const_cast<zmq_msg_t *>
    - zmq_msg_more
    linkageType: ''
    returnType: bool
    signature: bool more() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:594,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 594
      start: 594
    functionDepth: 0
    functionLinenumber: 594
    functionLinenumberEnd: 594
    functionName: zmq::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_data
    linkageType: ''
    returnType: void
    signature: void *data() ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:598,1
    - Dst: const_cast<zmq_msg_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 599
      start: 596
    functionDepth: 0
    functionLinenumber: 596
    functionLinenumberEnd: 599
    functionName: zmq::data
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 12
    functionsReached:
    - zmq_msg_data
    - const_cast<zmq_msg_t *>
    linkageType: ''
    returnType: void
    signature: void *data() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:603,1
    - Dst: const_cast<zmq_msg_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:603,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 604
      start: 601
    functionDepth: 0
    functionLinenumber: 601
    functionLinenumberEnd: 604
    functionName: zmq::size
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 5
    functionsReached:
    - zmq_msg_size
    - const_cast<zmq_msg_t *>
    linkageType: ''
    returnType: size_t
    signature: size_t size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:606,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 606
      start: 606
    functionDepth: 0
    functionLinenumber: 606
    functionLinenumberEnd: 606
    functionName: zmq::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::size
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<T *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:608,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:608,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 608
    functionDepth: 0
    functionLinenumber: 608
    functionLinenumberEnd: 608
    functionName: zmq::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T *>
    - zmq::data
    linkageType: ''
    returnType: T
    signature: T *data() ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<T const *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:612,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:612,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 613
      start: 610
    functionDepth: 0
    functionLinenumber: 610
    functionLinenumberEnd: 613
    functionName: zmq::data
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 14
    functionsReached:
    - static_cast<T const *>
    - zmq::data
    linkageType: ''
    returnType: T
    signature: T *data() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - other
    argTypes:
    - message_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 616
      start: 616
    functionDepth: 0
    functionLinenumber: 616
    functionLinenumberEnd: 616
    functionName: zmq::equal
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool equal(const message_t *other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:620,1
    - Dst: message_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:621,1
    - Dst: memcmp
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:621,1
    - Dst: data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:621,1
    - Dst: message_t::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:621,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - other
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 622
      start: 618
    functionDepth: 1
    functionLinenumber: 618
    functionLinenumberEnd: 622
    functionName: operator==(const message_t &other) const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - memcmp
    - message_t::data
    - size
    - data
    - message_t::size
    linkageType: ''
    returnType: bool
    signature: bool operator==(const message_t &other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - other
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 627
      start: 624
    functionDepth: 0
    functionLinenumber: 624
    functionLinenumberEnd: 627
    functionName: operator!=(const message_t &other) const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const message_t &other) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:632,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:634,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - property_
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 636
      start: 630
    functionDepth: 0
    functionLinenumber: 630
    functionLinenumberEnd: 636
    functionName: zmq::get
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_get
    - error_t
    linkageType: ''
    returnType: int
    signature: int get(int property_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_gets
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:642,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:644,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - property_
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 646
      start: 640
    functionDepth: 0
    functionLinenumber: 640
    functionLinenumberEnd: 646
    functionName: zmq::gets
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_gets
    - error_t
    linkageType: ''
    returnType: char
    signature: char *gets(const char *property_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_routing_id
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:652,1
    - Dst: const_cast<zmq_msg_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:652,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 653
      start: 650
    functionDepth: 0
    functionLinenumber: 650
    functionLinenumberEnd: 653
    functionName: zmq::routing_id
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - const_cast<zmq_msg_t *>
    - zmq_msg_routing_id
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t routing_id() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_set_routing_id
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:657,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:659,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - routing_id
    argTypes:
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 655
    functionDepth: 0
    functionLinenumber: 655
    functionLinenumberEnd: 660
    functionName: zmq::set_routing_id
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_set_routing_id
    - error_t
    linkageType: ''
    returnType: void
    signature: void set_routing_id(uint32_t routing_id)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_group
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:664,1
    - Dst: const_cast<zmq_msg_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:664,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 665
      start: 662
    functionDepth: 0
    functionLinenumber: 662
    functionLinenumberEnd: 665
    functionName: zmq::group
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_group
    - const_cast<zmq_msg_t *>
    linkageType: ''
    returnType: char
    signature: char *group() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_set_group
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:669,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:671,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - group
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 672
      start: 667
    functionDepth: 0
    functionLinenumber: 667
    functionLinenumberEnd: 672
    functionName: zmq::set_group
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_set_group
    - error_t
    linkageType: ''
    returnType: void
    signature: void set_group(const char *group)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: string
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:678,1
    - Dst: static_cast<const char *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:678,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:678,1
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 679
      start: 676
    functionDepth: 1
    functionLinenumber: 676
    functionLinenumberEnd: 679
    functionName: zmq::to_string
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::size
    - static_cast<const char *>
    - zmq::data
    - string
    linkageType: ''
    returnType: std::string
    signature: std::string to_string() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::string_view
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:684,1
    - Dst: static_cast<const char *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:684,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:684,1
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:684,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 685
      start: 682
    functionDepth: 0
    functionLinenumber: 682
    functionLinenumberEnd: 685
    functionName: zmq::to_string_view
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::size
    - zmq::data
    - std::string_view
    - static_cast<const char *>
    linkageType: ''
    returnType: std::string_view
    signature: std::string_view to_string_view() const noexcept
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:699,1
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:700,1
    - Dst: std::setw
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:706,1
    - Dst: std::setfill
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:707,1
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:707,1
    - Dst: std::setw
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:718,1
    - Dst: std::setfill
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:718,1
    - Dst: static_cast<short>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:719,1
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:724,1
    - Dst: std::stringstream::str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:728,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 694
    functionDepth: 0
    functionLinenumber: 694
    functionLinenumberEnd: 729
    functionName: zmq::str
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::setfill
    - zmq::data
    - std::setw
    - static_cast<short>
    - zmq::size
    - std::stringstream::str
    linkageType: ''
    returnType: std::string
    signature: std::string str(size_t max_size = 1000) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:734,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - other
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 731
    functionDepth: 0
    functionLinenumber: 731
    functionLinenumberEnd: 735
    functionName: zmq::swap
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 3
    functionsReached:
    - zmq::swap
    linkageType: ''
    returnType: void
    signature: void swap(message_t &other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 737
      start: 737
    functionDepth: 0
    functionLinenumber: 737
    functionLinenumberEnd: 737
    functionName: zmq::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD *handle() ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 738
    functionDepth: 0
    functionLinenumber: 738
    functionLinenumberEnd: 738
    functionName: zmq::handle
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD *handle() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:752,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 753
      start: 750
    functionDepth: 0
    functionLinenumber: 750
    functionLinenumberEnd: 753
    functionName: ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: void
    signature: void ZMQ_NOTHROW
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_ctx_new
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:805,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:807,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 803
    functionDepth: 0
    functionLinenumber: 803
    functionLinenumberEnd: 808
    functionName: context_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - error_t
    - zmq_ctx_new
    linkageType: ''
    returnType: void
    signature: void context_t()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_ctx_new
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:813,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:815,1
    - Dst: zmq_ctx_set
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:817,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:818,1
    - Dst: zmq_ctx_set
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:820,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:821,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - io_threads_
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 822
      start: 811
    functionDepth: 1
    functionLinenumber: 811
    functionLinenumberEnd: 822
    functionName: context_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_ctx_set
    - ZMQ_ASSERT
    - error_t
    - zmq_ctx_new
    linkageType: ''
    returnType: void
    signature: void context_t(int io_threads_, int max_sockets_ = ZMQ_MAX_SOCKETS_DFLT)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - context_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 825
    functionDepth: 0
    functionLinenumber: 825
    functionLinenumberEnd: 825
    functionName: context_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void context_t(context_t &&rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:828,1
    - Dst: swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:829,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - context_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 831
      start: 826
    functionDepth: 0
    functionLinenumber: 826
    functionLinenumberEnd: 831
    functionName: '&operator=(context_t &&rhs)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - close
    - swap
    linkageType: ''
    returnType: context_t
    signature: context_t &operator=(context_t &&rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:834,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 834
      start: 834
    functionDepth: 0
    functionLinenumber: 834
    functionLinenumberEnd: 834
    functionName: ~context_t()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - close
    linkageType: ''
    returnType: void
    signature: void ~context_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_ctx_set
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:839,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:840,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - option_
    - optval_
    argTypes:
    - int
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 842
      start: 837
    functionDepth: 1
    functionLinenumber: 837
    functionLinenumberEnd: 842
    functionName: setctxopt
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_ctx_set
    - ZMQ_ASSERT
    linkageType: ''
    returnType: int
    signature: int setctxopt(int option_, int optval_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_ctx_get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:845,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - option_
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 845
      start: 845
    functionDepth: 0
    functionLinenumber: 845
    functionLinenumberEnd: 845
    functionName: getctxopt
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_ctx_get
    linkageType: ''
    returnType: int
    signature: int getctxopt(int option_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_ctx_set
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:850,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:850,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:852,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - option
    - optval
    argTypes:
    - ctxopt
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 848
    functionDepth: 0
    functionLinenumber: 848
    functionLinenumberEnd: 853
    functionName: set
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 99
    functionsReached:
    - zmq_ctx_set
    - error_t
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void set(ctxopt option, int optval)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_ctx_get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:857,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:857,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:862,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - option
    argTypes:
    - ctxopt
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 864
      start: 855
    functionDepth: 0
    functionLinenumber: 855
    functionLinenumberEnd: 864
    functionName: get
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 165
    functionsReached:
    - error_t
    - static_cast<int>
    - zmq_ctx_get
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD get(ctxopt option)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_ctx_term
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:875,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:878,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 880
      start: 868
    functionDepth: 1
    functionLinenumber: 868
    functionLinenumberEnd: 880
    functionName: ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - ZMQ_ASSERT
    - zmq_ctx_term
    linkageType: ''
    returnType: void
    signature: void ZMQ_NOTHROW
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_ctx_shutdown
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:889,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:890,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 891
      start: 885
    functionDepth: 1
    functionLinenumber: 885
    functionLinenumberEnd: 891
    functionName: ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - ZMQ_ASSERT
    - zmq_ctx_shutdown
    linkageType: ''
    returnType: void
    signature: void ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 896
      start: 896
    functionDepth: 0
    functionLinenumber: 896
    functionLinenumberEnd: 896
    functionName: operator void *()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZMQ_EXPLICIT
    signature: ZMQ_EXPLICIT operator void *()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 898
      start: 898
    functionDepth: 0
    functionLinenumber: 898
    functionLinenumberEnd: 898
    functionName: operator void const *() const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZMQ_EXPLICIT
    signature: ZMQ_EXPLICIT operator void const *() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 900
      start: 900
    functionDepth: 0
    functionLinenumber: 900
    functionLinenumberEnd: 900
    functionName: ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD *handle() ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 903
      start: 903
    functionDepth: 0
    functionLinenumber: 903
    functionLinenumberEnd: 903
    functionName: operator bool() const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator bool() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:905,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - other
    argTypes:
    - context_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 905
      start: 905
    functionDepth: 0
    functionLinenumber: 905
    functionLinenumberEnd: 905
    functionName: swap
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 81
    functionsReached:
    - swap
    linkageType: ''
    returnType: void
    signature: void swap(context_t &other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: context_t::swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:916,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - context_t
    - context_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 917
      start: 914
    functionDepth: 0
    functionLinenumber: 914
    functionLinenumberEnd: 917
    functionName: swap
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 82
    functionsReached:
    - context_t::swap
    linkageType: ''
    returnType: void
    signature: void swap(context_t &a, context_t &b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 929
      start: 926
    functionDepth: 0
    functionLinenumber: 926
    functionLinenumberEnd: 929
    functionName: truncated
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD truncated() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 950
    functionDepth: 0
    functionLinenumber: 950
    functionLinenumberEnd: 950
    functionName: detail::trivial_optional::trivial_optional
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void trivial_optional()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 951
      start: 951
    functionDepth: 0
    functionLinenumber: 951
    functionLinenumberEnd: 951
    functionName: detail::trivial_optional::trivial_optional
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void trivial_optional(T value) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:955,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (_has_value)
      pos:
        line_end: 954
        line_start: 954
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 957
      start: 953
    functionDepth: 0
    functionLinenumber: 953
    functionLinenumberEnd: 957
    functionName: '*operator->() const noexcept'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - assert
    linkageType: ''
    returnType: T
    signature: T *operator->() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:960,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (_has_value)
      pos:
        line_end: 959
        line_start: 959
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 962
      start: 958
    functionDepth: 0
    functionLinenumber: 958
    functionLinenumberEnd: 962
    functionName: '*operator->() noexcept'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - assert
    linkageType: ''
    returnType: T
    signature: T *operator->() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:966,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (_has_value)
      pos:
        line_end: 965
        line_start: 965
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 968
      start: 964
    functionDepth: 0
    functionLinenumber: 964
    functionLinenumberEnd: 968
    functionName: '&operator*() const noexcept'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - assert
    linkageType: ''
    returnType: T
    signature: T &operator*() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:971,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (_has_value)
      pos:
        line_end: 970
        line_start: 970
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 973
      start: 969
    functionDepth: 0
    functionLinenumber: 969
    functionLinenumberEnd: 973
    functionName: '&operator*() noexcept'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - assert
    linkageType: ''
    returnType: T
    signature: T &operator*() noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::exception
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:978,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 980
      start: 975
    functionDepth: 0
    functionLinenumber: 975
    functionLinenumberEnd: 980
    functionName: '&value()'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::exception
    linkageType: ''
    returnType: T
    signature: T &value()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::exception
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:984,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 986
      start: 981
    functionDepth: 0
    functionLinenumber: 981
    functionLinenumberEnd: 986
    functionName: '&value() const'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::exception
    linkageType: ''
    returnType: T
    signature: T &value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 988
      start: 988
    functionDepth: 0
    functionLinenumber: 988
    functionLinenumberEnd: 988
    functionName: operator bool() const noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator bool() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 989
      start: 989
    functionDepth: 0
    functionLinenumber: 989
    functionLinenumberEnd: 989
    functionName: detail::trivial_optional::has_value
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 950
      start: 950
    functionDepth: 0
    functionLinenumber: 950
    functionLinenumberEnd: 950
    functionName: detail::trivial_optional::trivial_optional
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void trivial_optional()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - value
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 951
      start: 951
    functionDepth: 0
    functionLinenumber: 951
    functionLinenumberEnd: 951
    functionName: detail::trivial_optional::trivial_optional
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void trivial_optional(T value) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:955,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (_has_value)
      pos:
        line_end: 954
        line_start: 954
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 957
      start: 953
    functionDepth: 0
    functionLinenumber: 953
    functionLinenumberEnd: 957
    functionName: '*operator->() const noexcept'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - assert
    linkageType: ''
    returnType: T
    signature: T *operator->() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:960,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (_has_value)
      pos:
        line_end: 959
        line_start: 959
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 962
      start: 958
    functionDepth: 0
    functionLinenumber: 958
    functionLinenumberEnd: 962
    functionName: '*operator->() noexcept'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - assert
    linkageType: ''
    returnType: T
    signature: T *operator->() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:966,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (_has_value)
      pos:
        line_end: 965
        line_start: 965
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 968
      start: 964
    functionDepth: 0
    functionLinenumber: 964
    functionLinenumberEnd: 968
    functionName: '&operator*() const noexcept'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - assert
    linkageType: ''
    returnType: T
    signature: T &operator*() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:971,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (_has_value)
      pos:
        line_end: 970
        line_start: 970
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 973
      start: 969
    functionDepth: 0
    functionLinenumber: 969
    functionLinenumberEnd: 973
    functionName: '&operator*() noexcept'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - assert
    linkageType: ''
    returnType: T
    signature: T &operator*() noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::exception
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:978,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 980
      start: 975
    functionDepth: 0
    functionLinenumber: 975
    functionLinenumberEnd: 980
    functionName: '&value()'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::exception
    linkageType: ''
    returnType: T
    signature: T &value()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::exception
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:984,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 986
      start: 981
    functionDepth: 0
    functionLinenumber: 981
    functionLinenumberEnd: 986
    functionName: '&value() const'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::exception
    linkageType: ''
    returnType: T
    signature: T &value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 988
      start: 988
    functionDepth: 0
    functionLinenumber: 988
    functionLinenumberEnd: 988
    functionName: operator bool() const noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator bool() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 989
      start: 989
    functionDepth: 0
    functionLinenumber: 989
    functionLinenumberEnd: 989
    functionName: detail::trivial_optional::has_value
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool has_value() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1009,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1009,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1009,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1010
      start: 1005
    functionDepth: 0
    functionLinenumber: 1005
    functionLinenumberEnd: 1010
    functionName: detail::enum_bit_or
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T>
    - static_cast<U>
    linkageType: ''
    returnType: T
    signature: T enum_bit_or(T a, T b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1015,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1015,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1015,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 1011
    functionDepth: 0
    functionLinenumber: 1011
    functionLinenumberEnd: 1016
    functionName: detail::enum_bit_and
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T>
    - static_cast<U>
    linkageType: ''
    returnType: T
    signature: T enum_bit_and(T a, T b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1021,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1021,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1021,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1022
      start: 1017
    functionDepth: 0
    functionLinenumber: 1017
    functionLinenumberEnd: 1022
    functionName: detail::enum_bit_xor
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T>
    - static_cast<U>
    linkageType: ''
    returnType: T
    signature: T enum_bit_xor(T a, T b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1027,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1027,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1028
      start: 1023
    functionDepth: 0
    functionLinenumber: 1023
    functionLinenumberEnd: 1028
    functionName: detail::enum_bit_not
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T>
    - static_cast<U>
    linkageType: ''
    returnType: T
    signature: T enum_bit_not(T a) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1009,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1009,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1009,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1010
      start: 1005
    functionDepth: 0
    functionLinenumber: 1005
    functionLinenumberEnd: 1010
    functionName: detail::enum_bit_or
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T>
    - static_cast<U>
    linkageType: ''
    returnType: T
    signature: T enum_bit_or(T a, T b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1015,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1015,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1015,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1016
      start: 1011
    functionDepth: 0
    functionLinenumber: 1011
    functionLinenumberEnd: 1016
    functionName: detail::enum_bit_and
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T>
    - static_cast<U>
    linkageType: ''
    returnType: T
    signature: T enum_bit_and(T a, T b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1021,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1021,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1021,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1022
      start: 1017
    functionDepth: 0
    functionLinenumber: 1017
    functionLinenumberEnd: 1022
    functionName: detail::enum_bit_xor
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T>
    - static_cast<U>
    linkageType: ''
    returnType: T
    signature: T enum_bit_xor(T a, T b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<T>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1027,1
    - Dst: static_cast<U>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1027,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1028
      start: 1023
    functionDepth: 0
    functionLinenumber: 1023
    functionLinenumberEnd: 1028
    functionName: detail::enum_bit_not
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - static_cast<T>
    - static_cast<U>
    linkageType: ''
    returnType: T
    signature: T enum_bit_not(T a) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::enum_bit_or
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1041,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - send_flags
    - send_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1042
      start: 1039
    functionDepth: 1
    functionLinenumber: 1039
    functionLinenumberEnd: 1042
    functionName: operator|(send_flags a, send_flags b) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - detail::enum_bit_or
    linkageType: ''
    returnType: send_flags
    signature: send_flags operator|(send_flags a, send_flags b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::enum_bit_and
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1045,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - send_flags
    - send_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1046
      start: 1043
    functionDepth: 1
    functionLinenumber: 1043
    functionLinenumberEnd: 1046
    functionName: operator&(send_flags a, send_flags b) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - detail::enum_bit_and
    linkageType: ''
    returnType: send_flags
    signature: send_flags operator&(send_flags a, send_flags b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::enum_bit_xor
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1049,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - send_flags
    - send_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1050
      start: 1047
    functionDepth: 1
    functionLinenumber: 1047
    functionLinenumberEnd: 1050
    functionName: operator^(send_flags a, send_flags b) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - detail::enum_bit_xor
    linkageType: ''
    returnType: send_flags
    signature: send_flags operator^(send_flags a, send_flags b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::enum_bit_not
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1053,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - send_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1054
      start: 1051
    functionDepth: 1
    functionLinenumber: 1051
    functionLinenumberEnd: 1054
    functionName: operator~(send_flags a) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - detail::enum_bit_not
    linkageType: ''
    returnType: send_flags
    signature: send_flags operator~(send_flags a) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::enum_bit_or
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1065,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - recv_flags
    - recv_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1066
      start: 1063
    functionDepth: 1
    functionLinenumber: 1063
    functionLinenumberEnd: 1066
    functionName: operator|(recv_flags a, recv_flags b) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - detail::enum_bit_or
    linkageType: ''
    returnType: recv_flags
    signature: recv_flags operator|(recv_flags a, recv_flags b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::enum_bit_and
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1069,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - recv_flags
    - recv_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1070
      start: 1067
    functionDepth: 1
    functionLinenumber: 1067
    functionLinenumberEnd: 1070
    functionName: operator&(recv_flags a, recv_flags b) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - detail::enum_bit_and
    linkageType: ''
    returnType: recv_flags
    signature: recv_flags operator&(recv_flags a, recv_flags b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::enum_bit_xor
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1073,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - recv_flags
    - recv_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1074
      start: 1071
    functionDepth: 1
    functionLinenumber: 1071
    functionLinenumberEnd: 1074
    functionName: operator^(recv_flags a, recv_flags b) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - detail::enum_bit_xor
    linkageType: ''
    returnType: recv_flags
    signature: recv_flags operator^(recv_flags a, recv_flags b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::enum_bit_not
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1077,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - recv_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1078
      start: 1075
    functionDepth: 1
    functionLinenumber: 1075
    functionLinenumberEnd: 1078
    functionName: operator~(recv_flags a) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - detail::enum_bit_not
    linkageType: ''
    returnType: recv_flags
    signature: recv_flags operator~(recv_flags a) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1088
      start: 1088
    functionDepth: 0
    functionLinenumber: 1088
    functionLinenumberEnd: 1088
    functionName: mutable_buffer::mutable_buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void mutable_buffer() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1092,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - p
    - n
    argTypes:
    - void*
    - size_t
    assertStmts:
    - condition: (p != nullptr || n == 0)
      pos:
        line_end: 1091
        line_start: 1091
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 1094
      start: 1089
    functionDepth: 0
    functionLinenumber: 1089
    functionLinenumberEnd: 1094
    functionName: mutable_buffer::mutable_buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - assert
    linkageType: ''
    returnType: void
    signature: void mutable_buffer(void *p, size_t n) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1096
      start: 1096
    functionDepth: 0
    functionLinenumber: 1096
    functionLinenumberEnd: 1096
    functionName: mutable_buffer::data
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void *data() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1097
      start: 1097
    functionDepth: 0
    functionLinenumber: 1097
    functionLinenumberEnd: 1097
    functionName: mutable_buffer::size
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t size() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1102,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - n
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1105
      start: 1098
    functionDepth: 0
    functionLinenumber: 1098
    functionLinenumberEnd: 1105
    functionName: '&operator+=(size_t n) noexcept'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char *>
    linkageType: ''
    returnType: mutable_buffer
    signature: mutable_buffer &operator+=(size_t n) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mutable_buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1114,1
    - Dst: static_cast<char *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1114,1
    - Dst: mutable_buffer::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1114,1
    - Dst: mutable_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1114,1
    - Dst: mutable_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1115,1
    - Dst: mutable_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1115,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - mb
    - n
    argTypes:
    - mutable_buffer
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1116
      start: 1112
    functionDepth: 0
    functionLinenumber: 1112
    functionLinenumberEnd: 1116
    functionName: operator+(const mutable_buffer &mb, size_t n) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - static_cast<char *>
    - mutable_buffer
    - mutable_buffer::data
    - mutable_buffer::size
    linkageType: ''
    returnType: mutable_buffer
    signature: mutable_buffer operator+(const mutable_buffer &mb, size_t n) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - mb
    argTypes:
    - size_t
    - mutable_buffer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1120
      start: 1117
    functionDepth: 0
    functionLinenumber: 1117
    functionLinenumberEnd: 1120
    functionName: operator+(size_t n, const mutable_buffer &mb) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: mutable_buffer
    signature: mutable_buffer operator+(size_t n, const mutable_buffer &mb) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1125
      start: 1125
    functionDepth: 0
    functionLinenumber: 1125
    functionLinenumberEnd: 1125
    functionName: const_buffer::const_buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void const_buffer() noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1129,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - p
    - n
    argTypes:
    - void*
    - size_t
    assertStmts:
    - condition: (p != nullptr || n == 0)
      pos:
        line_end: 1128
        line_start: 1128
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 1131
      start: 1126
    functionDepth: 0
    functionLinenumber: 1126
    functionLinenumberEnd: 1131
    functionName: const_buffer::const_buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - assert
    linkageType: ''
    returnType: void
    signature: void const_buffer(const void *p, size_t n) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mutable_buffer::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1133,1
    - Dst: mutable_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1133,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - mb
    argTypes:
    - mutable_buffer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1135
      start: 1132
    functionDepth: 0
    functionLinenumber: 1132
    functionLinenumberEnd: 1135
    functionName: const_buffer::const_buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - mutable_buffer::data
    - mutable_buffer::size
    linkageType: ''
    returnType: void
    signature: void const_buffer(const mutable_buffer &mb) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1137
      start: 1137
    functionDepth: 0
    functionLinenumber: 1137
    functionLinenumberEnd: 1137
    functionName: const_buffer::data
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void *data() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1138
      start: 1138
    functionDepth: 0
    functionLinenumber: 1138
    functionLinenumberEnd: 1138
    functionName: const_buffer::size
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t size() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<const char *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1142,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - n
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1145
      start: 1139
    functionDepth: 0
    functionLinenumber: 1139
    functionLinenumberEnd: 1145
    functionName: '&operator+=(size_t n) noexcept'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - static_cast<const char *>
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer &operator+=(size_t n) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1154,1
    - Dst: static_cast<const char *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1154,1
    - Dst: const_buffer::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1154,1
    - Dst: const_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1155,1
    - Dst: const_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1156,1
    - Dst: const_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1156,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - cb
    - n
    argTypes:
    - const_buffer
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1157
      start: 1152
    functionDepth: 0
    functionLinenumber: 1152
    functionLinenumberEnd: 1157
    functionName: operator+(const const_buffer &cb, size_t n) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - const_buffer
    - const_buffer::size
    - const_buffer::data
    - static_cast<const char *>
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer operator+(const const_buffer &cb, size_t n) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - n
    - cb
    argTypes:
    - size_t
    - const_buffer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1161
      start: 1158
    functionDepth: 0
    functionLinenumber: 1158
    functionLinenumberEnd: 1161
    functionName: operator+(size_t n, const const_buffer &cb) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer operator+(size_t n, const const_buffer &cb) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mutable_buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - n
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1168
      start: 1165
    functionDepth: 0
    functionLinenumber: 1165
    functionLinenumberEnd: 1168
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 10
    functionsReached:
    - mutable_buffer
    linkageType: ''
    returnType: mutable_buffer
    signature: mutable_buffer buffer(void *p, size_t n) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1171,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - n
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1172
      start: 1169
    functionDepth: 0
    functionLinenumber: 1169
    functionLinenumberEnd: 1172
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 11
    functionsReached:
    - const_buffer
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer buffer(const void *p, size_t n) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - mb
    argTypes:
    - mutable_buffer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1176
      start: 1173
    functionDepth: 0
    functionLinenumber: 1173
    functionLinenumberEnd: 1176
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 11
    functionsReached: []
    linkageType: ''
    returnType: mutable_buffer
    signature: mutable_buffer buffer(const mutable_buffer &mb) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mutable_buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1179,1
    - Dst: mutable_buffer::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1179,1
    - Dst: mutable_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1179,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - mb
    - n
    argTypes:
    - mutable_buffer
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1180
      start: 1177
    functionDepth: 0
    functionLinenumber: 1177
    functionLinenumberEnd: 1180
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 12
    functionsReached:
    - mutable_buffer::data
    - mutable_buffer
    - mutable_buffer::size
    linkageType: ''
    returnType: mutable_buffer
    signature: mutable_buffer buffer(const mutable_buffer &mb, size_t n) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - cb
    argTypes:
    - const_buffer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1184
      start: 1181
    functionDepth: 0
    functionLinenumber: 1181
    functionLinenumberEnd: 1184
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer buffer(const const_buffer &cb) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1187,1
    - Dst: const_buffer::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1187,1
    - Dst: const_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - cb
    - n
    argTypes:
    - const_buffer
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1188
      start: 1185
    functionDepth: 0
    functionLinenumber: 1185
    functionLinenumberEnd: 1188
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 13
    functionsReached:
    - const_buffer
    - const_buffer::data
    - const_buffer::size
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer buffer(const const_buffer &cb, size_t n) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1208,1
    - Dst: C::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - C
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1211
      start: 1208
    functionDepth: 1
    functionLinenumber: 1208
    functionLinenumberEnd: 1211
    functionName: detail::seq_size
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - C::size
    linkageType: ''
    returnType: auto
    signature: auto seq_size(const C &c) noexcept -> decltype(c.size())
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1216
      start: 1213
    functionDepth: 0
    functionLinenumber: 1213
    functionLinenumberEnd: 1216
    functionName: detail::seq_size
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t seq_size(const T (&/*array*/)[N]) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1220,1
    - Dst: std::addressof
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1220,1
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1220,1
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1223,1
    - Dst: detail::seq_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1226,1
    - Dst: buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1227,1
    - Dst: std::addressof
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1227,1
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1227,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - seq
    argTypes:
    - Seq
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1229
      start: 1219
    functionDepth: 2
    functionLinenumber: 1219
    functionLinenumberEnd: 1229
    functionName: detail::buffer_contiguous_sequence
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - buffer
    - begin
    - detail::seq_size
    - std::addressof
    linkageType: ''
    returnType: auto
    signature: "auto buffer_contiguous_sequence(Seq &&seq) noexcept\n  -> decltype(buffer(std::addressof(*std::begin(seq)),
      size_t{}))"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1232,1
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1235,1
    - Dst: detail::seq_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1238,1
    - Dst: buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1239,1
    - Dst: std::addressof
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1239,1
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - seq
    - n_bytes
    argTypes:
    - Seq
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1241
      start: 1231
    functionDepth: 2
    functionLinenumber: 1231
    functionLinenumberEnd: 1241
    functionName: detail::buffer_contiguous_sequence
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - begin
    - detail::seq_size
    - std::addressof
    - detail::buffer_contiguous_sequence
    - buffer
    linkageType: ''
    returnType: auto
    signature: "auto buffer_contiguous_sequence(Seq &&seq, size_t n_bytes) noexcept\n
      \ -> decltype(buffer_contiguous_sequence(seq))"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: C::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1208,1
    - Dst: C::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1210,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - c
    argTypes:
    - C
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1211
      start: 1208
    functionDepth: 1
    functionLinenumber: 1208
    functionLinenumberEnd: 1211
    functionName: detail::seq_size
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - C::size
    linkageType: ''
    returnType: auto
    signature: auto seq_size(const C &c) noexcept -> decltype(c.size())
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1216
      start: 1213
    functionDepth: 0
    functionLinenumber: 1213
    functionLinenumberEnd: 1216
    functionName: detail::seq_size
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t seq_size(const T (&/*array*/)[N]) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1220,1
    - Dst: std::addressof
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1220,1
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1220,1
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1223,1
    - Dst: detail::seq_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1226,1
    - Dst: buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1227,1
    - Dst: std::addressof
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1227,1
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1227,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - seq
    argTypes:
    - Seq
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1229
      start: 1219
    functionDepth: 2
    functionLinenumber: 1219
    functionLinenumberEnd: 1229
    functionName: detail::buffer_contiguous_sequence
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - buffer
    - begin
    - detail::seq_size
    - std::addressof
    linkageType: ''
    returnType: auto
    signature: "auto buffer_contiguous_sequence(Seq &&seq) noexcept\n  -> decltype(buffer(std::addressof(*std::begin(seq)),
      size_t{}))"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1232,1
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1235,1
    - Dst: detail::seq_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1238,1
    - Dst: buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1239,1
    - Dst: std::addressof
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1239,1
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - seq
    - n_bytes
    argTypes:
    - Seq
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1241
      start: 1231
    functionDepth: 2
    functionLinenumber: 1231
    functionLinenumberEnd: 1241
    functionName: detail::buffer_contiguous_sequence
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - begin
    - detail::seq_size
    - std::addressof
    - detail::buffer_contiguous_sequence
    - buffer
    linkageType: ''
    returnType: auto
    signature: "auto buffer_contiguous_sequence(Seq &&seq, size_t n_bytes) noexcept\n
      \ -> decltype(buffer_contiguous_sequence(seq))"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1248,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - (data)
    argTypes:
    - T[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1249
      start: 1246
    functionDepth: 3
    functionLinenumber: 1246
    functionLinenumberEnd: 1249
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: mutable_buffer
    signature: mutable_buffer buffer(T (&data)[N]) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1253,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - (data)
    - n_bytes
    argTypes:
    - T[]
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1254
      start: 1251
    functionDepth: 3
    functionLinenumber: 1251
    functionLinenumberEnd: 1254
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: mutable_buffer
    signature: mutable_buffer buffer(T (&data)[N], size_t n_bytes) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1257,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - (data)
    argTypes:
    - T[]
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1258
      start: 1255
    functionDepth: 3
    functionLinenumber: 1255
    functionLinenumberEnd: 1258
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer buffer(const T (&data)[N]) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1262,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - (data)
    - n_bytes
    argTypes:
    - T[]
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1263
      start: 1260
    functionDepth: 3
    functionLinenumber: 1260
    functionLinenumberEnd: 1263
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer buffer(const T (&data)[N], size_t n_bytes) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1267,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - std::array<T, N>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1268
      start: 1265
    functionDepth: 3
    functionLinenumber: 1265
    functionLinenumberEnd: 1268
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: mutable_buffer
    signature: mutable_buffer buffer(std::array<T, N> &data) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - data
    - n_bytes
    argTypes:
    - std::array<T, N>
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1273
      start: 1270
    functionDepth: 3
    functionLinenumber: 1270
    functionLinenumberEnd: 1273
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: mutable_buffer
    signature: mutable_buffer buffer(std::array<T, N> &data, size_t n_bytes) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1277,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - std::array<const T, N>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1278
      start: 1275
    functionDepth: 3
    functionLinenumber: 1275
    functionLinenumberEnd: 1278
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer buffer(std::array<const T, N> &data) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1282,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - data
    - n_bytes
    argTypes:
    - std::array<const T, N>
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1283
      start: 1280
    functionDepth: 3
    functionLinenumber: 1280
    functionLinenumberEnd: 1283
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer buffer(std::array<const T, N> &data, size_t n_bytes) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1287,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - std::array<T, N>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1288
      start: 1285
    functionDepth: 3
    functionLinenumber: 1285
    functionLinenumberEnd: 1288
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer buffer(const std::array<T, N> &data) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1292,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - data
    - n_bytes
    argTypes:
    - std::array<T, N>
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1293
      start: 1290
    functionDepth: 3
    functionLinenumber: 1290
    functionLinenumberEnd: 1293
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer buffer(const std::array<T, N> &data, size_t n_bytes) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1298,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - std::vector<T, Allocator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1299
      start: 1296
    functionDepth: 3
    functionLinenumber: 1296
    functionLinenumberEnd: 1299
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: mutable_buffer
    signature: mutable_buffer buffer(std::vector<T, Allocator> &data) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1303,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - data
    - n_bytes
    argTypes:
    - std::vector<T, Allocator>
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1304
      start: 1301
    functionDepth: 3
    functionLinenumber: 1301
    functionLinenumberEnd: 1304
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: mutable_buffer
    signature: mutable_buffer buffer(std::vector<T, Allocator> &data, size_t n_bytes)
      noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1308,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - std::vector<T, Allocator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1309
      start: 1306
    functionDepth: 3
    functionLinenumber: 1306
    functionLinenumberEnd: 1309
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer buffer(const std::vector<T, Allocator> &data) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1313,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - data
    - n_bytes
    argTypes:
    - std::vector<T, Allocator>
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1314
      start: 1311
    functionDepth: 3
    functionLinenumber: 1311
    functionLinenumberEnd: 1314
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer buffer(const std::vector<T, Allocator> &data, size_t n_bytes)
      noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1319,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - std::basic_string<T, Traits, Allocator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1320
      start: 1317
    functionDepth: 3
    functionLinenumber: 1317
    functionLinenumberEnd: 1320
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: mutable_buffer
    signature: mutable_buffer buffer(std::basic_string<T, Traits, Allocator> &data)
      noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1325,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - data
    - n_bytes
    argTypes:
    - std::basic_string<T, Traits, Allocator>
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1326
      start: 1322
    functionDepth: 3
    functionLinenumber: 1322
    functionLinenumberEnd: 1326
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: mutable_buffer
    signature: "mutable_buffer buffer(std::basic_string<T, Traits, Allocator> &data,\n
      \                     size_t n_bytes) noexcept"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - std::basic_string<T, Traits, Allocator>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1331
      start: 1328
    functionDepth: 3
    functionLinenumber: 1328
    functionLinenumberEnd: 1331
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer buffer(const std::basic_string<T, Traits, Allocator> &data)
      noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1336,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - data
    - n_bytes
    argTypes:
    - std::basic_string<T, Traits, Allocator>
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1337
      start: 1333
    functionDepth: 3
    functionLinenumber: 1333
    functionLinenumberEnd: 1337
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: const_buffer
    signature: "const_buffer buffer(const std::basic_string<T, Traits, Allocator>
      &data,\n                    size_t n_bytes) noexcept"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1344,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - std::basic_string_view<T, Traits>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1345
      start: 1342
    functionDepth: 3
    functionLinenumber: 1342
    functionLinenumberEnd: 1345
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer buffer(std::basic_string_view<T, Traits> data) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::buffer_contiguous_sequence
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1349,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - data
    - n_bytes
    argTypes:
    - std::basic_string_view<T, Traits>
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1350
      start: 1347
    functionDepth: 3
    functionLinenumber: 1347
    functionLinenumberEnd: 1350
    functionName: buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 17
    functionsReached:
    - detail::buffer_contiguous_sequence
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer buffer(std::basic_string_view<T, Traits> data, size_t
      n_bytes) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1361,1
    - Dst: const_buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1363,1
    - Dst: static_cast<const Char *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1363,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - (data)
    argTypes:
    - Char[]
    assertStmts:
    - condition: (data[N - 1] == Char{0})
      pos:
        line_end: 1360
        line_start: 1360
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 1364
      start: 1357
    functionDepth: 0
    functionLinenumber: 1357
    functionLinenumberEnd: 1364
    functionName: str_buffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - const_buffer
    - assert
    - static_cast<const Char *>
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer str_buffer(const Char (&data)[N]) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1370,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - str
    - len
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1371
      start: 1368
    functionDepth: 0
    functionLinenumber: 1368
    functionLinenumberEnd: 1371
    functionName: operator""_zbuf(const char *str, size_t len) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - const_buffer
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer operator""_zbuf(const char *str, size_t len) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1374,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - str
    - len
    argTypes:
    - wchar_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1375
      start: 1372
    functionDepth: 0
    functionLinenumber: 1372
    functionLinenumberEnd: 1375
    functionName: operator""_zbuf(const wchar_t *str, size_t len) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - const_buffer
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer operator""_zbuf(const wchar_t *str, size_t len) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1378,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - str
    - len
    argTypes:
    - char16_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1379
      start: 1376
    functionDepth: 0
    functionLinenumber: 1376
    functionLinenumberEnd: 1379
    functionName: operator""_zbuf(const char16_t *str, size_t len) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - const_buffer
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer operator""_zbuf(const char16_t *str, size_t len) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1382,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - str
    - len
    argTypes:
    - char32_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1383
      start: 1380
    functionDepth: 0
    functionLinenumber: 1380
    functionLinenumberEnd: 1383
    functionName: operator""_zbuf(const char32_t *str, size_t len) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - const_buffer
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer operator""_zbuf(const char32_t *str, size_t len) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1370,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - str
    - len
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1371
      start: 1368
    functionDepth: 0
    functionLinenumber: 1368
    functionLinenumberEnd: 1371
    functionName: operator""_zbuf(const char *str, size_t len) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - const_buffer
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer operator""_zbuf(const char *str, size_t len) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1374,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - str
    - len
    argTypes:
    - wchar_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1375
      start: 1372
    functionDepth: 0
    functionLinenumber: 1372
    functionLinenumberEnd: 1375
    functionName: operator""_zbuf(const wchar_t *str, size_t len) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - const_buffer
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer operator""_zbuf(const wchar_t *str, size_t len) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1378,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - str
    - len
    argTypes:
    - char16_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1379
      start: 1376
    functionDepth: 0
    functionLinenumber: 1376
    functionLinenumberEnd: 1379
    functionName: operator""_zbuf(const char16_t *str, size_t len) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - const_buffer
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer operator""_zbuf(const char16_t *str, size_t len) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1382,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - str
    - len
    argTypes:
    - char32_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1383
      start: 1380
    functionDepth: 0
    functionLinenumber: 1380
    functionLinenumberEnd: 1383
    functionName: operator""_zbuf(const char32_t *str, size_t len) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - const_buffer
    linkageType: ''
    returnType: const_buffer
    signature: const_buffer operator""_zbuf(const char32_t *str, size_t len) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - OPT
    - ','
    - NAME
    - ','
    - TYPE
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1441
      start: 1438
    functionDepth: 0
    functionLinenumber: 1438
    functionLinenumberEnd: 1441
    functionName: ZMQ_DEFINE_INTEGRAL_OPT
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_DEFINE_INTEGRAL_OPT(OPT, NAME, TYPE)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - OPT
    - ','
    - NAME
    - ','
    - TYPE
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1444
      start: 1441
    functionDepth: 0
    functionLinenumber: 1441
    functionLinenumberEnd: 1444
    functionName: ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(OPT, NAME, TYPE)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - OPT
    - ','
    - NAME
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1447
      start: 1444
    functionDepth: 0
    functionLinenumber: 1444
    functionLinenumberEnd: 1447
    functionName: ZMQ_DEFINE_ARRAY_OPT
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_DEFINE_ARRAY_OPT(OPT, NAME)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - OPT
    - ','
    - NAME
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1450
      start: 1447
    functionDepth: 0
    functionLinenumber: 1447
    functionLinenumberEnd: 1450
    functionName: ZMQ_DEFINE_ARRAY_OPT_BINARY
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_DEFINE_ARRAY_OPT_BINARY(OPT, NAME)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - OPT
    - ','
    - NAME
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1453
      start: 1450
    functionDepth: 0
    functionLinenumber: 1450
    functionLinenumberEnd: 1453
    functionName: ZMQ_DEFINE_ARRAY_OPT_BIN_OR_Z85
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_DEFINE_ARRAY_OPT_BIN_OR_Z85(OPT, NAME)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - OPT
    - ','
    - NAME
    - ','
    - TYPE
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1441
      start: 1438
    functionDepth: 0
    functionLinenumber: 1438
    functionLinenumberEnd: 1441
    functionName: ZMQ_DEFINE_INTEGRAL_OPT
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_DEFINE_INTEGRAL_OPT(OPT, NAME, TYPE)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 7
    argNames:
    - (
    - OPT
    - ','
    - NAME
    - ','
    - TYPE
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1444
      start: 1441
    functionDepth: 0
    functionLinenumber: 1441
    functionLinenumberEnd: 1444
    functionName: ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT(OPT, NAME, TYPE)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - OPT
    - ','
    - NAME
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1447
      start: 1444
    functionDepth: 0
    functionLinenumber: 1444
    functionLinenumberEnd: 1447
    functionName: ZMQ_DEFINE_ARRAY_OPT
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_DEFINE_ARRAY_OPT(OPT, NAME)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - OPT
    - ','
    - NAME
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1450
      start: 1447
    functionDepth: 0
    functionLinenumber: 1447
    functionLinenumberEnd: 1450
    functionName: ZMQ_DEFINE_ARRAY_OPT_BINARY
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_DEFINE_ARRAY_OPT_BINARY(OPT, NAME)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 5
    argNames:
    - (
    - OPT
    - ','
    - NAME
    - )
    argTypes:
    - auto
    - auto
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1453
      start: 1450
    functionDepth: 0
    functionLinenumber: 1450
    functionLinenumberEnd: 1453
    functionName: ZMQ_DEFINE_ARRAY_OPT_BIN_OR_Z85
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: ZMQ_DEFINE_ARRAY_OPT_BIN_OR_Z85(OPT, NAME)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1738
      start: 1738
    functionDepth: 0
    functionLinenumber: 1738
    functionLinenumberEnd: 1738
    functionName: detail::socket_base
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void socket_base()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1739,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - handle
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1739
      start: 1739
    functionDepth: 0
    functionLinenumber: 1739
    functionLinenumberEnd: 1739
    functionName: detail::socket_base
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - _handle
    linkageType: ''
    returnType: ZMQ_EXPLICIT
    signature: ZMQ_EXPLICIT socket_base(void *handle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::setsockopt
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1745,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - option_
    - optval
    argTypes:
    - int
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1746
      start: 1743
    functionDepth: 1
    functionLinenumber: 1743
    functionLinenumberEnd: 1746
    functionName: detail::setsockopt
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - detail::setsockopt
    linkageType: ''
    returnType: void
    signature: void setsockopt(int option_, T const &optval)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_setsockopt
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1751,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1753,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 3
    argNames:
    - option_
    - optval_
    - optvallen_
    argTypes:
    - int
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1754
      start: 1749
    functionDepth: 0
    functionLinenumber: 1749
    functionLinenumberEnd: 1754
    functionName: detail::setsockopt
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - error_t
    - zmq_setsockopt
    linkageType: ''
    returnType: void
    signature: void setsockopt(int option_, const void *optval_, size_t optvallen_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_getsockopt
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1759,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1761,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 3
    argNames:
    - option_
    - optval_
    - optvallen_
    argTypes:
    - int
    - void*
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1762
      start: 1757
    functionDepth: 0
    functionLinenumber: 1757
    functionLinenumberEnd: 1762
    functionName: detail::getsockopt
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_getsockopt
    - error_t
    linkageType: ''
    returnType: void
    signature: void getsockopt(int option_, void *optval_, size_t *optvallen_) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::getsockopt
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1770,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - option_
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1772
      start: 1766
    functionDepth: 1
    functionLinenumber: 1766
    functionLinenumberEnd: 1772
    functionName: detail::getsockopt
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - detail::getsockopt
    linkageType: ''
    returnType: T
    signature: T getsockopt(int option_) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_option
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1781,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1782
      start: 1778
    functionDepth: 0
    functionLinenumber: 1778
    functionLinenumberEnd: 1782
    functionName: detail::set
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - set_option
    linkageType: ''
    returnType: void
    signature: void set(sockopt::integral_option<Opt, T, BoolUnit>, const T &val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_option
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1791,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1792
      start: 1787
    functionDepth: 0
    functionLinenumber: 1787
    functionLinenumberEnd: 1792
    functionName: detail::set
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - set_option
    linkageType: ''
    returnType: void
    signature: void set(sockopt::integral_option<Opt, T, true>, bool val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_option
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1799,1
    - Dst: std::strlen
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1799,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buf
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1800
      start: 1797
    functionDepth: 0
    functionLinenumber: 1797
    functionLinenumberEnd: 1800
    functionName: detail::set
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::strlen
    - set_option
    linkageType: ''
    returnType: void
    signature: void set(sockopt::array_option<Opt, NullTerm>, const char *buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_option
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1807,1
    - Dst: const_buffer::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1807,1
    - Dst: const_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1807,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buf
    argTypes:
    - const_buffer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1808
      start: 1805
    functionDepth: 0
    functionLinenumber: 1805
    functionLinenumberEnd: 1808
    functionName: detail::set
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - const_buffer::data
    - set_option
    - const_buffer::size
    linkageType: ''
    returnType: void
    signature: void set(sockopt::array_option<Opt, NullTerm>, const_buffer buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_option
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1815,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1815,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1815,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buf
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1816
      start: 1813
    functionDepth: 1
    functionLinenumber: 1813
    functionLinenumberEnd: 1816
    functionName: detail::set
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::string::data
    - std::string::size
    - set_option
    linkageType: ''
    returnType: void
    signature: void set(sockopt::array_option<Opt, NullTerm>, const std::string &buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_option
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1824,1
    - Dst: std::string_view::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1824,1
    - Dst: std::string_view::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1824,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buf
    argTypes:
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1825
      start: 1822
    functionDepth: 1
    functionLinenumber: 1822
    functionLinenumberEnd: 1825
    functionName: detail::set
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::string_view::size
    - std::string_view::data
    - set_option
    linkageType: ''
    returnType: void
    signature: void set(sockopt::array_option<Opt, NullTerm>, std::string_view buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_option
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1836,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1837,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (size == sizeof val)
      pos:
        line_end: 1836
        line_start: 1836
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 1839
      start: 1831
    functionDepth: 1
    functionLinenumber: 1831
    functionLinenumberEnd: 1839
    functionName: detail::get
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - get_option
    - assert
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD get(sockopt::integral_option<Opt, T, BoolUnit>) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mutable_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1847,1
    - Dst: get_option
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1848,1
    - Dst: mutable_buffer::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - buf
    argTypes:
    - mutable_buffer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1850
      start: 1844
    functionDepth: 1
    functionLinenumber: 1844
    functionLinenumberEnd: 1850
    functionName: detail::get
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - mutable_buffer::data
    - mutable_buffer::size
    - get_option
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: "ZMQ_NODISCARD get(sockopt::array_option<Opt, NullTerm>,\n                             mutable_buffer
      buf) const"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1866,1
    - Dst: buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1866,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1869,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1873,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1875,1
    - Dst: std::string::resize
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1879,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (size == 32 || size == 41)
      pos:
        line_end: 1872
        line_start: 1872
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - condition: (str[size - 1] == '\0')
      pos:
        line_end: 1868
        line_start: 1868
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - condition: (str[size - 1] == '\0')
      pos:
        line_end: 1874
        line_start: 1874
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 1881
      start: 1857
    functionDepth: 1
    functionLinenumber: 1857
    functionLinenumberEnd: 1881
    functionName: "std::string get(sockopt::array_option<Opt, NullTerm>,\n                                  size_t
      init_size = 1024) const"
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - get
    - buffer
    - assert
    - std::string::resize
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: "ZMQ_NODISCARD std::string get(sockopt::array_option<Opt, NullTerm>,\n
      \                                 size_t init_size = 1024) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::bind
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1884,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1884,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - addr
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1884
      start: 1884
    functionDepth: 1
    functionLinenumber: 1884
    functionLinenumberEnd: 1884
    functionName: detail::bind
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - detail::bind
    - std::string::c_str
    linkageType: ''
    returnType: void
    signature: void bind(std::string const &addr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_bind
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1888,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1890,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - addr_
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1891
      start: 1886
    functionDepth: 0
    functionLinenumber: 1886
    functionLinenumberEnd: 1891
    functionName: detail::bind
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - zmq_bind
    - error_t
    linkageType: ''
    returnType: void
    signature: void bind(const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::unbind
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1893,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1893,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - addr
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1893
      start: 1893
    functionDepth: 1
    functionLinenumber: 1893
    functionLinenumberEnd: 1893
    functionName: detail::unbind
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - detail::unbind
    - std::string::c_str
    linkageType: ''
    returnType: void
    signature: void unbind(std::string const &addr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_unbind
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1897,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1899,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - addr_
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1900
      start: 1895
    functionDepth: 0
    functionLinenumber: 1895
    functionLinenumberEnd: 1900
    functionName: detail::unbind
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - zmq_unbind
    - error_t
    linkageType: ''
    returnType: void
    signature: void unbind(const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::connect
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1902,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1902,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - addr
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1902
      start: 1902
    functionDepth: 1
    functionLinenumber: 1902
    functionLinenumberEnd: 1902
    functionName: detail::connect
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - detail::connect
    - std::string::c_str
    linkageType: ''
    returnType: void
    signature: void connect(std::string const &addr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_connect
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1906,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1908,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - addr_
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1909
      start: 1904
    functionDepth: 0
    functionLinenumber: 1904
    functionLinenumberEnd: 1909
    functionName: detail::connect
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - error_t
    - zmq_connect
    linkageType: ''
    returnType: void
    signature: void connect(const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::disconnect
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1911,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1911,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - addr
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1911
      start: 1911
    functionDepth: 1
    functionLinenumber: 1911
    functionLinenumberEnd: 1911
    functionName: detail::disconnect
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - std::string::c_str
    - detail::disconnect
    linkageType: ''
    returnType: void
    signature: void disconnect(std::string const &addr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_disconnect
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1915,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1917,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - addr_
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1918
      start: 1913
    functionDepth: 0
    functionLinenumber: 1913
    functionLinenumberEnd: 1918
    functionName: detail::disconnect
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - zmq_disconnect
    - error_t
    linkageType: ''
    returnType: void
    signature: void disconnect(const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1921
      start: 1921
    functionDepth: 0
    functionLinenumber: 1921
    functionLinenumberEnd: 1921
    functionName: detail::connected
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool connected() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1926,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1928,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1929,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1931,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - buf_
    - len_
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1932
      start: 1924
    functionDepth: 0
    functionLinenumber: 1924
    functionLinenumberEnd: 1932
    functionName: detail::send
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_errno
    - zmq_send
    - static_cast<size_t>
    - error_t
    linkageType: ''
    returnType: size_t
    signature: size_t send(const void *buf_, size_t len_, int flags_ = 0)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1938,1
    - Dst: message_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1938,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1941,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1943,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - msg_
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1944
      start: 1935
    functionDepth: 0
    functionLinenumber: 1935
    functionLinenumberEnd: 1944
    functionName: detail::send
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_errno
    - message_t::handle
    - zmq_msg_send
    - error_t
    linkageType: ''
    returnType: bool
    signature: "bool send(message_t &msg_,\n              int flags_ = 0)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1953,1
    - Dst: zmq::message_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1953,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1956,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1958,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1959
      start: 1950
    functionDepth: 0
    functionLinenumber: 1950
    functionLinenumberEnd: 1959
    functionName: detail::send
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::message_t::handle
    - error_t
    - zmq_msg_send
    - zmq_errno
    linkageType: ''
    returnType: bool
    signature: bool send(T first, T last, int flags_ = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1967,1
    - Dst: static_cast<send_flags>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1967,1
    - Dst: detail::send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1969,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - msg_
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1971
      start: 1963
    functionDepth: 1
    functionLinenumber: 1963
    functionLinenumberEnd: 1971
    functionName: detail::send
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - detail::send
    - static_cast<send_flags>
    linkageType: ''
    returnType: bool
    signature: "bool send(message_t &&msg_,\n              int flags_ = 0)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1978,1
    - Dst: const_buffer::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1978,1
    - Dst: const_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1978,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1978,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1980,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1981,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1983,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - buf
    argTypes:
    - const_buffer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1984
      start: 1975
    functionDepth: 0
    functionLinenumber: 1975
    functionLinenumberEnd: 1984
    functionName: detail::send
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - const_buffer::data
    - error_t
    - zmq_send
    - zmq_errno
    - static_cast<size_t>
    - static_cast<int>
    - const_buffer::size
    linkageType: ''
    returnType: send_result_t
    signature: send_result_t send(const_buffer buf, send_flags flags = send_flags::none)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1988,1
    - Dst: message_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1988,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1988,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1990,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1991,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1993,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - msg
    - flags
    argTypes:
    - message_t
    - send_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1994
      start: 1986
    functionDepth: 0
    functionLinenumber: 1986
    functionLinenumberEnd: 1994
    functionName: detail::send
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - zmq_msg_send
    - error_t
    - zmq_errno
    - message_t::handle
    - static_cast<size_t>
    - static_cast<int>
    linkageType: ''
    returnType: send_result_t
    signature: send_result_t send(message_t &msg, send_flags flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1998,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - msg
    - flags
    argTypes:
    - message_t
    - send_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1999
      start: 1996
    functionDepth: 1
    functionLinenumber: 1996
    functionLinenumberEnd: 1999
    functionName: detail::send
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - detail::send
    linkageType: ''
    returnType: send_result_t
    signature: send_result_t send(message_t &&msg, send_flags flags)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2006,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2008,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2009,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2011,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - buf_
    - len_
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2012
      start: 2004
    functionDepth: 0
    functionLinenumber: 2004
    functionLinenumberEnd: 2012
    functionName: detail::recv
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_errno
    - error_t
    - static_cast<size_t>
    - zmq_recv
    linkageType: ''
    returnType: size_t
    signature: size_t recv(void *buf_, size_t len_, int flags_ = 0)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2018,1
    - Dst: message_t*::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2018,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2021,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2023,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - msg_
    argTypes:
    - message_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2024
      start: 2016
    functionDepth: 1
    functionLinenumber: 2016
    functionLinenumberEnd: 2024
    functionName: detail::recv
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_recv
    - error_t
    - zmq_errno
    - message_t*::handle
    linkageType: ''
    returnType: bool
    signature: bool recv(message_t *msg_, int flags_ = 0)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2032,1
    - Dst: mutable_buffer::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2032,1
    - Dst: mutable_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2032,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2032,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2035,1
    - Dst: mutable_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2035,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2036,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2038,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2040,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - buf
    argTypes:
    - mutable_buffer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2041
      start: 2027
    functionDepth: 0
    functionLinenumber: 2027
    functionLinenumberEnd: 2041
    functionName: detail::recv_buffer_result_t::recv
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_recv
    - error_t
    - zmq_errno
    - mutable_buffer::size
    - mutable_buffer::data
    - static_cast<size_t>
    - static_cast<int>
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: "ZMQ_NODISCARD recv_buffer_result_t recv(mutable_buffer buf,\n                              recv_flags
      flags = recv_flags::none)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2047,1
    - Dst: message_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2047,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2047,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2049,1
    - Dst: message_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2049,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2049,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2050,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2052,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2054,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - msg
    argTypes:
    - message_t
    assertStmts:
    - condition: (msg.size() == static_cast<size_t>(nbytes))
      pos:
        line_end: 2048
        line_start: 2048
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 2055
      start: 2043
    functionDepth: 1
    functionLinenumber: 2043
    functionLinenumberEnd: 2055
    functionName: detail::recv_result_t::recv
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - error_t
    - zmq_msg_recv
    - assert
    - zmq_errno
    - message_t::handle
    - static_cast<size_t>
    - message_t::size
    - static_cast<int>
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD recv_result_t recv(message_t &msg, recv_flags flags =
      recv_flags::none)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_join
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2061,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2063,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - group
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2064
      start: 2059
    functionDepth: 0
    functionLinenumber: 2059
    functionLinenumberEnd: 2064
    functionName: detail::join
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_join
    - error_t
    linkageType: ''
    returnType: void
    signature: void join(const char *group)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_leave
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2068,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2070,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - group
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2071
      start: 2066
    functionDepth: 0
    functionLinenumber: 2066
    functionLinenumberEnd: 2071
    functionName: detail::leave
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - error_t
    - zmq_leave
    linkageType: ''
    returnType: void
    signature: void leave(const char *group)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2074
      start: 2074
    functionDepth: 0
    functionLinenumber: 2074
    functionLinenumberEnd: 2074
    functionName: detail::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD *handle() ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2075
      start: 2075
    functionDepth: 0
    functionLinenumber: 2075
    functionLinenumberEnd: 2075
    functionName: detail::handle
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD *handle() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2077
      start: 2077
    functionDepth: 0
    functionLinenumber: 2077
    functionLinenumberEnd: 2077
    functionName: detail::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZMQ_EXPLICIT
    signature: ZMQ_EXPLICIT ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2080
      start: 2080
    functionDepth: 0
    functionLinenumber: 2080
    functionLinenumberEnd: 2080
    functionName: detail::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZMQ_EXPLICIT
    signature: ZMQ_EXPLICIT ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1738
      start: 1738
    functionDepth: 0
    functionLinenumber: 1738
    functionLinenumberEnd: 1738
    functionName: detail::socket_base
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void socket_base()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: _handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1739,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - handle
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1739
      start: 1739
    functionDepth: 0
    functionLinenumber: 1739
    functionLinenumberEnd: 1739
    functionName: detail::socket_base
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - _handle
    linkageType: ''
    returnType: ZMQ_EXPLICIT
    signature: ZMQ_EXPLICIT socket_base(void *handle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::setsockopt
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1745,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - option_
    - optval
    argTypes:
    - int
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1746
      start: 1743
    functionDepth: 1
    functionLinenumber: 1743
    functionLinenumberEnd: 1746
    functionName: detail::setsockopt
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - detail::setsockopt
    linkageType: ''
    returnType: void
    signature: void setsockopt(int option_, T const &optval)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_setsockopt
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1751,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1753,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 3
    argNames:
    - option_
    - optval_
    - optvallen_
    argTypes:
    - int
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1754
      start: 1749
    functionDepth: 0
    functionLinenumber: 1749
    functionLinenumberEnd: 1754
    functionName: detail::setsockopt
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - error_t
    - zmq_setsockopt
    linkageType: ''
    returnType: void
    signature: void setsockopt(int option_, const void *optval_, size_t optvallen_)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_getsockopt
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1759,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1761,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 3
    argNames:
    - option_
    - optval_
    - optvallen_
    argTypes:
    - int
    - void*
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1762
      start: 1757
    functionDepth: 0
    functionLinenumber: 1757
    functionLinenumberEnd: 1762
    functionName: detail::getsockopt
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - zmq_getsockopt
    - error_t
    linkageType: ''
    returnType: void
    signature: void getsockopt(int option_, void *optval_, size_t *optvallen_) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::getsockopt
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1770,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - option_
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1772
      start: 1766
    functionDepth: 1
    functionLinenumber: 1766
    functionLinenumberEnd: 1772
    functionName: detail::getsockopt
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - detail::getsockopt
    linkageType: ''
    returnType: T
    signature: T getsockopt(int option_) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_option
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1781,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1782
      start: 1778
    functionDepth: 0
    functionLinenumber: 1778
    functionLinenumberEnd: 1782
    functionName: detail::set
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - set_option
    linkageType: ''
    returnType: void
    signature: void set(sockopt::integral_option<Opt, T, BoolUnit>, const T &val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_option
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1791,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - val
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1792
      start: 1787
    functionDepth: 0
    functionLinenumber: 1787
    functionLinenumberEnd: 1792
    functionName: detail::set
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - set_option
    linkageType: ''
    returnType: void
    signature: void set(sockopt::integral_option<Opt, T, true>, bool val)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_option
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1799,1
    - Dst: std::strlen
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1799,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buf
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1800
      start: 1797
    functionDepth: 0
    functionLinenumber: 1797
    functionLinenumberEnd: 1800
    functionName: detail::set
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::strlen
    - set_option
    linkageType: ''
    returnType: void
    signature: void set(sockopt::array_option<Opt, NullTerm>, const char *buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_option
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1807,1
    - Dst: const_buffer::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1807,1
    - Dst: const_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1807,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buf
    argTypes:
    - const_buffer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1808
      start: 1805
    functionDepth: 0
    functionLinenumber: 1805
    functionLinenumberEnd: 1808
    functionName: detail::set
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - const_buffer::data
    - set_option
    - const_buffer::size
    linkageType: ''
    returnType: void
    signature: void set(sockopt::array_option<Opt, NullTerm>, const_buffer buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_option
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1815,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1815,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1815,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buf
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1816
      start: 1813
    functionDepth: 1
    functionLinenumber: 1813
    functionLinenumberEnd: 1816
    functionName: detail::set
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::string::data
    - std::string::size
    - set_option
    linkageType: ''
    returnType: void
    signature: void set(sockopt::array_option<Opt, NullTerm>, const std::string &buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: set_option
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1824,1
    - Dst: std::string_view::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1824,1
    - Dst: std::string_view::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1824,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - buf
    argTypes:
    - std::string_view
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1825
      start: 1822
    functionDepth: 1
    functionLinenumber: 1822
    functionLinenumberEnd: 1825
    functionName: detail::set
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::string_view::size
    - std::string_view::data
    - set_option
    linkageType: ''
    returnType: void
    signature: void set(sockopt::array_option<Opt, NullTerm>, std::string_view buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: get_option
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1836,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1837,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (size == sizeof val)
      pos:
        line_end: 1836
        line_start: 1836
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 1839
      start: 1831
    functionDepth: 1
    functionLinenumber: 1831
    functionLinenumberEnd: 1839
    functionName: detail::get
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - get_option
    - assert
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD get(sockopt::integral_option<Opt, T, BoolUnit>) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: mutable_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1847,1
    - Dst: get_option
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1848,1
    - Dst: mutable_buffer::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - buf
    argTypes:
    - mutable_buffer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1850
      start: 1844
    functionDepth: 1
    functionLinenumber: 1844
    functionLinenumberEnd: 1850
    functionName: detail::get
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - mutable_buffer::data
    - mutable_buffer::size
    - get_option
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: "ZMQ_NODISCARD get(sockopt::array_option<Opt, NullTerm>,\n                             mutable_buffer
      buf) const"
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1866,1
    - Dst: buffer
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1866,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1869,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1873,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1875,1
    - Dst: std::string::resize
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1879,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 21
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (size == 32 || size == 41)
      pos:
        line_end: 1872
        line_start: 1872
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - condition: (str[size - 1] == '\0')
      pos:
        line_end: 1868
        line_start: 1868
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - condition: (str[size - 1] == '\0')
      pos:
        line_end: 1874
        line_start: 1874
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 1881
      start: 1857
    functionDepth: 1
    functionLinenumber: 1857
    functionLinenumberEnd: 1881
    functionName: "std::string get(sockopt::array_option<Opt, NullTerm>,\n                                  size_t
      init_size = 1024) const"
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - get
    - buffer
    - assert
    - std::string::resize
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: "ZMQ_NODISCARD std::string get(sockopt::array_option<Opt, NullTerm>,\n
      \                                 size_t init_size = 1024) const"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::bind
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1884,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1884,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - addr
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1884
      start: 1884
    functionDepth: 1
    functionLinenumber: 1884
    functionLinenumberEnd: 1884
    functionName: detail::bind
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - detail::bind
    - std::string::c_str
    linkageType: ''
    returnType: void
    signature: void bind(std::string const &addr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_bind
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1888,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1890,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - addr_
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1891
      start: 1886
    functionDepth: 0
    functionLinenumber: 1886
    functionLinenumberEnd: 1891
    functionName: detail::bind
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - zmq_bind
    - error_t
    linkageType: ''
    returnType: void
    signature: void bind(const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::unbind
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1893,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1893,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - addr
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1893
      start: 1893
    functionDepth: 1
    functionLinenumber: 1893
    functionLinenumberEnd: 1893
    functionName: detail::unbind
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - detail::unbind
    - std::string::c_str
    linkageType: ''
    returnType: void
    signature: void unbind(std::string const &addr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_unbind
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1897,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1899,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - addr_
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1900
      start: 1895
    functionDepth: 0
    functionLinenumber: 1895
    functionLinenumberEnd: 1900
    functionName: detail::unbind
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - zmq_unbind
    - error_t
    linkageType: ''
    returnType: void
    signature: void unbind(const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::connect
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1902,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1902,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - addr
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1902
      start: 1902
    functionDepth: 1
    functionLinenumber: 1902
    functionLinenumberEnd: 1902
    functionName: detail::connect
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - detail::connect
    - std::string::c_str
    linkageType: ''
    returnType: void
    signature: void connect(std::string const &addr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_connect
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1906,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1908,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - addr_
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1909
      start: 1904
    functionDepth: 0
    functionLinenumber: 1904
    functionLinenumberEnd: 1909
    functionName: detail::connect
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - error_t
    - zmq_connect
    linkageType: ''
    returnType: void
    signature: void connect(const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::disconnect
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1911,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1911,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - addr
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1911
      start: 1911
    functionDepth: 1
    functionLinenumber: 1911
    functionLinenumberEnd: 1911
    functionName: detail::disconnect
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - std::string::c_str
    - detail::disconnect
    linkageType: ''
    returnType: void
    signature: void disconnect(std::string const &addr)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_disconnect
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1915,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1917,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - addr_
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1918
      start: 1913
    functionDepth: 0
    functionLinenumber: 1913
    functionLinenumberEnd: 1918
    functionName: detail::disconnect
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - zmq_disconnect
    - error_t
    linkageType: ''
    returnType: void
    signature: void disconnect(const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1921
      start: 1921
    functionDepth: 0
    functionLinenumber: 1921
    functionLinenumberEnd: 1921
    functionName: detail::connected
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool connected() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1926,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1928,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1929,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1931,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - buf_
    - len_
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1932
      start: 1924
    functionDepth: 0
    functionLinenumber: 1924
    functionLinenumberEnd: 1932
    functionName: detail::send
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - zmq_errno
    - zmq_send
    - static_cast<size_t>
    - error_t
    linkageType: ''
    returnType: size_t
    signature: size_t send(const void *buf_, size_t len_, int flags_ = 0)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1938,1
    - Dst: message_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1938,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1941,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1943,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - msg_
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1944
      start: 1935
    functionDepth: 0
    functionLinenumber: 1935
    functionLinenumberEnd: 1944
    functionName: detail::send
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - zmq_errno
    - message_t::handle
    - zmq_msg_send
    - error_t
    linkageType: ''
    returnType: bool
    signature: "bool send(message_t &msg_,\n              int flags_ = 0)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1953,1
    - Dst: zmq::message_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1953,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1956,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1958,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - first
    - last
    argTypes:
    - T
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1959
      start: 1950
    functionDepth: 0
    functionLinenumber: 1950
    functionLinenumberEnd: 1959
    functionName: detail::send
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - zmq::message_t::handle
    - error_t
    - zmq_msg_send
    - zmq_errno
    linkageType: ''
    returnType: bool
    signature: bool send(T first, T last, int flags_ = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1967,1
    - Dst: static_cast<send_flags>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1967,1
    - Dst: detail::send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1969,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - msg_
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1971
      start: 1963
    functionDepth: 1
    functionLinenumber: 1963
    functionLinenumberEnd: 1971
    functionName: detail::send
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 3
    functionsReached:
    - detail::send
    - static_cast<send_flags>
    linkageType: ''
    returnType: bool
    signature: "bool send(message_t &&msg_,\n              int flags_ = 0)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1978,1
    - Dst: const_buffer::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1978,1
    - Dst: const_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1978,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1978,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1980,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1981,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1983,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - buf
    argTypes:
    - const_buffer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1984
      start: 1975
    functionDepth: 0
    functionLinenumber: 1975
    functionLinenumberEnd: 1984
    functionName: detail::send
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 3
    functionsReached:
    - const_buffer::data
    - error_t
    - zmq_send
    - zmq_errno
    - static_cast<size_t>
    - static_cast<int>
    - const_buffer::size
    linkageType: ''
    returnType: send_result_t
    signature: send_result_t send(const_buffer buf, send_flags flags = send_flags::none)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1988,1
    - Dst: message_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1988,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1988,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1990,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1991,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1993,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - msg
    - flags
    argTypes:
    - message_t
    - send_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1994
      start: 1986
    functionDepth: 0
    functionLinenumber: 1986
    functionLinenumberEnd: 1994
    functionName: detail::send
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 3
    functionsReached:
    - zmq_msg_send
    - error_t
    - zmq_errno
    - message_t::handle
    - static_cast<size_t>
    - static_cast<int>
    linkageType: ''
    returnType: send_result_t
    signature: send_result_t send(message_t &msg, send_flags flags)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:1998,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 2
    argNames:
    - msg
    - flags
    argTypes:
    - message_t
    - send_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1999
      start: 1996
    functionDepth: 1
    functionLinenumber: 1996
    functionLinenumberEnd: 1999
    functionName: detail::send
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 4
    functionsReached:
    - detail::send
    linkageType: ''
    returnType: send_result_t
    signature: send_result_t send(message_t &&msg, send_flags flags)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2006,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2008,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2009,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2011,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 2
    argNames:
    - buf_
    - len_
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2012
      start: 2004
    functionDepth: 0
    functionLinenumber: 2004
    functionLinenumberEnd: 2012
    functionName: detail::recv
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_errno
    - error_t
    - static_cast<size_t>
    - zmq_recv
    linkageType: ''
    returnType: size_t
    signature: size_t recv(void *buf_, size_t len_, int flags_ = 0)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2018,1
    - Dst: message_t*::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2018,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2021,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2023,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 6
    argCount: 1
    argNames:
    - msg_
    argTypes:
    - message_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2024
      start: 2016
    functionDepth: 1
    functionLinenumber: 2016
    functionLinenumberEnd: 2024
    functionName: detail::recv
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_msg_recv
    - error_t
    - zmq_errno
    - message_t*::handle
    linkageType: ''
    returnType: bool
    signature: bool recv(message_t *msg_, int flags_ = 0)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2032,1
    - Dst: mutable_buffer::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2032,1
    - Dst: mutable_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2032,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2032,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2035,1
    - Dst: mutable_buffer::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2035,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2036,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2038,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2040,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - buf
    argTypes:
    - mutable_buffer
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2041
      start: 2027
    functionDepth: 0
    functionLinenumber: 2027
    functionLinenumberEnd: 2041
    functionName: detail::recv_buffer_result_t::recv
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_recv
    - error_t
    - zmq_errno
    - mutable_buffer::size
    - mutable_buffer::data
    - static_cast<size_t>
    - static_cast<int>
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: "ZMQ_NODISCARD recv_buffer_result_t recv(mutable_buffer buf,\n                              recv_flags
      flags = recv_flags::none)"
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2047,1
    - Dst: message_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2047,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2047,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2049,1
    - Dst: message_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2049,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2049,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2050,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2052,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2054,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - msg
    argTypes:
    - message_t
    assertStmts:
    - condition: (msg.size() == static_cast<size_t>(nbytes))
      pos:
        line_end: 2048
        line_start: 2048
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 2055
      start: 2043
    functionDepth: 1
    functionLinenumber: 2043
    functionLinenumberEnd: 2055
    functionName: detail::recv_result_t::recv
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - error_t
    - zmq_msg_recv
    - assert
    - zmq_errno
    - message_t::handle
    - static_cast<size_t>
    - message_t::size
    - static_cast<int>
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD recv_result_t recv(message_t &msg, recv_flags flags =
      recv_flags::none)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_join
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2061,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2063,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - group
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2064
      start: 2059
    functionDepth: 0
    functionLinenumber: 2059
    functionLinenumberEnd: 2064
    functionName: detail::join
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_join
    - error_t
    linkageType: ''
    returnType: void
    signature: void join(const char *group)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_leave
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2068,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2070,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - group
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2071
      start: 2066
    functionDepth: 0
    functionLinenumber: 2066
    functionLinenumberEnd: 2071
    functionName: detail::leave
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - error_t
    - zmq_leave
    linkageType: ''
    returnType: void
    signature: void leave(const char *group)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2074
      start: 2074
    functionDepth: 0
    functionLinenumber: 2074
    functionLinenumberEnd: 2074
    functionName: detail::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD *handle() ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2075
      start: 2075
    functionDepth: 0
    functionLinenumber: 2075
    functionLinenumberEnd: 2075
    functionName: detail::handle
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD *handle() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2077
      start: 2077
    functionDepth: 0
    functionLinenumber: 2077
    functionLinenumberEnd: 2077
    functionName: detail::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZMQ_EXPLICIT
    signature: ZMQ_EXPLICIT ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2080
      start: 2080
    functionDepth: 0
    functionLinenumber: 2080
    functionLinenumberEnd: 2080
    functionName: detail::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: ZMQ_EXPLICIT
    signature: ZMQ_EXPLICIT ZMQ_NOTHROW
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_getsockopt
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2095,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2097,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 3
    argNames:
    - option_
    - optval_
    - optvallen_
    argTypes:
    - int
    - void*
    - size_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2098
      start: 2093
    functionDepth: 0
    functionLinenumber: 2093
    functionLinenumberEnd: 2098
    functionName: get_option
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 4
    functionsReached:
    - zmq_getsockopt
    - error_t
    linkageType: ''
    returnType: void
    signature: void get_option(int option_, void *optval_, size_t *optvallen_) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2107
      start: 2107
    functionDepth: 0
    functionLinenumber: 2107
    functionLinenumberEnd: 2107
    functionName: (_private /*p*/)
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: from_handle_t
    signature: from_handle_t (_private /*p*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2118
      start: 2118
    functionDepth: 0
    functionLinenumber: 2118
    functionLinenumberEnd: 2118
    functionName: socket_ref::socket_ref
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void socket_ref()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2120
      start: 2120
    functionDepth: 0
    functionLinenumber: 2120
    functionLinenumberEnd: 2120
    functionName: socket_ref::socket_ref
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void socket_ref(std::nullptr_t)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - handle
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2125
      start: 2122
    functionDepth: 0
    functionLinenumber: 2122
    functionLinenumberEnd: 2125
    functionName: socket_ref::socket_ref
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void socket_ref(from_handle_t /*fh*/, void *handle)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2131,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sr
    argTypes:
    - socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2132
      start: 2129
    functionDepth: 0
    functionLinenumber: 2129
    functionLinenumberEnd: 2132
    functionName: operator==(socket_ref sr, std::nullptr_t /*p*/)
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - socket_ref::handle
    linkageType: ''
    returnType: bool
    signature: bool operator==(socket_ref sr, std::nullptr_t /*p*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2135,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sr
    argTypes:
    - socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2136
      start: 2133
    functionDepth: 0
    functionLinenumber: 2133
    functionLinenumberEnd: 2136
    functionName: operator==(std::nullptr_t /*p*/, socket_ref sr)
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - socket_ref::handle
    linkageType: ''
    returnType: bool
    signature: bool operator==(std::nullptr_t /*p*/, socket_ref sr)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sr
    argTypes:
    - socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2140
      start: 2137
    functionDepth: 0
    functionLinenumber: 2137
    functionLinenumberEnd: 2140
    functionName: operator!=(socket_ref sr, std::nullptr_t /*p*/)
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(socket_ref sr, std::nullptr_t /*p*/)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sr
    argTypes:
    - socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2144
      start: 2141
    functionDepth: 0
    functionLinenumber: 2141
    functionLinenumberEnd: 2144
    functionName: operator!=(std::nullptr_t /*p*/, socket_ref sr)
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(std::nullptr_t /*p*/, socket_ref sr)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::equal_to<const void *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2149,1
    - Dst: handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2149,1
    - Dst: handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2149,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' a'
    - ' b'
    argTypes:
    - detail::socket_base
    - detail::socket_base
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2150
      start: 2147
    functionDepth: 0
    functionLinenumber: 2147
    functionLinenumberEnd: 2150
    functionName: operator==(const detail::socket_base& a, const detail::socket_base&
      b)
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - std::equal_to<const void *>
    - handle
    linkageType: ''
    returnType: bool
    signature: bool operator==(const detail::socket_base& a, const detail::socket_base&
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' a'
    - ' b'
    argTypes:
    - detail::socket_base
    - detail::socket_base
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2154
      start: 2151
    functionDepth: 0
    functionLinenumber: 2151
    functionLinenumberEnd: 2154
    functionName: operator!=(const detail::socket_base& a, const detail::socket_base&
      b)
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const detail::socket_base& a, const detail::socket_base&
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::less<const void *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2157,1
    - Dst: handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2157,1
    - Dst: handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2157,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' a'
    - ' b'
    argTypes:
    - detail::socket_base
    - detail::socket_base
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2158
      start: 2155
    functionDepth: 0
    functionLinenumber: 2155
    functionLinenumberEnd: 2158
    functionName: operator<(const detail::socket_base& a, const detail::socket_base&
      b)
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - handle
    - std::less<const void *>
    linkageType: ''
    returnType: bool
    signature: bool operator<(const detail::socket_base& a, const detail::socket_base&
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' a'
    - ' b'
    argTypes:
    - detail::socket_base
    - detail::socket_base
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2162
      start: 2159
    functionDepth: 0
    functionLinenumber: 2159
    functionLinenumberEnd: 2162
    functionName: operator>(const detail::socket_base& a, const detail::socket_base&
      b)
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>(const detail::socket_base& a, const detail::socket_base&
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' a'
    - ' b'
    argTypes:
    - detail::socket_base
    - detail::socket_base
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2166
      start: 2163
    functionDepth: 0
    functionLinenumber: 2163
    functionLinenumberEnd: 2166
    functionName: operator<=(const detail::socket_base& a, const detail::socket_base&
      b)
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator<=(const detail::socket_base& a, const detail::socket_base&
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' a'
    - ' b'
    argTypes:
    - detail::socket_base
    - detail::socket_base
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2170
      start: 2167
    functionDepth: 0
    functionLinenumber: 2167
    functionLinenumberEnd: 2170
    functionName: operator>=(const detail::socket_base& a, const detail::socket_base&
      b)
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator>=(const detail::socket_base& a, const detail::socket_base&
      b)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hash
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2181,1
    - Dst: zmq::socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sr
    argTypes:
    - zmq::socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2182
      start: 2179
    functionDepth: 2
    functionLinenumber: 2179
    functionLinenumberEnd: 2182
    functionName: operator()(zmq::socket_ref sr) const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::socket_ref::handle
    - hash
    linkageType: ''
    returnType: size_t
    signature: size_t operator()(zmq::socket_ref sr) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hash
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2181,1
    - Dst: zmq::socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - sr
    argTypes:
    - zmq::socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2182
      start: 2179
    functionDepth: 2
    functionLinenumber: 2179
    functionLinenumberEnd: 2182
    functionName: operator()(zmq::socket_ref sr) const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::socket_ref::handle
    - hash
    linkageType: ''
    returnType: size_t
    signature: size_t operator()(zmq::socket_ref sr) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2194
      start: 2194
    functionDepth: 0
    functionLinenumber: 2194
    functionLinenumberEnd: 2194
    functionName: zmq::socket_t::socket_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void socket_t()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_socket
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2197,1
    - Dst: context_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2197,1
    - Dst: context_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2198,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2201,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - context_
    - type_
    argTypes:
    - context_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2202
      start: 2196
    functionDepth: 0
    functionLinenumber: 2196
    functionLinenumberEnd: 2202
    functionName: zmq::socket_t::socket_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - context_t::handle
    - zmq_socket
    - error_t
    linkageType: ''
    returnType: void
    signature: void socket_t(context_t &context_, int type_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - context_
    - type_
    argTypes:
    - context_t
    - socket_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2208
      start: 2205
    functionDepth: 0
    functionLinenumber: 2205
    functionLinenumberEnd: 2208
    functionName: zmq::socket_t::socket_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void socket_t(context_t &context_, socket_type type_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - socket_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2217
      start: 2212
    functionDepth: 0
    functionLinenumber: 2212
    functionLinenumberEnd: 2217
    functionName: zmq::socket_t::socket_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void socket_t(socket_t &&rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2220,1
    - Dst: zmq::swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2221,1
    - Dst: zmq::swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2222,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - socket_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2224
      start: 2218
    functionDepth: 0
    functionLinenumber: 2218
    functionLinenumberEnd: 2224
    functionName: '&operator=(socket_t &&rhs)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - close
    - zmq::swap
    linkageType: ''
    returnType: socket_t
    signature: socket_t &operator=(socket_t &&rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2227
      start: 2227
    functionDepth: 0
    functionLinenumber: 2227
    functionLinenumberEnd: 2227
    functionName: ~socket_t()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - close
    linkageType: ''
    returnType: void
    signature: void ~socket_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2229
      start: 2229
    functionDepth: 0
    functionLinenumber: 2229
    functionLinenumberEnd: 2229
    functionName: operator void *()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator void *()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2231
      start: 2231
    functionDepth: 0
    functionLinenumber: 2231
    functionLinenumberEnd: 2231
    functionName: operator void const *() const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator void const *() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2238,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2242
      start: 2233
    functionDepth: 1
    functionLinenumber: 2233
    functionLinenumberEnd: 2242
    functionName: zmq::socket_t::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - ZMQ_ASSERT
    - zmq_close
    linkageType: ''
    returnType: void
    signature: void ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::socket_t::swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2246,1
    - Dst: zmq::socket_t::swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - other
    argTypes:
    - socket_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2248
      start: 2244
    functionDepth: 0
    functionLinenumber: 2244
    functionLinenumberEnd: 2248
    functionName: zmq::socket_t::swap
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - zmq::socket_t::swap
    linkageType: ''
    returnType: void
    signature: void swap(socket_t &other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: socket_ref
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2250
      start: 2250
    functionDepth: 0
    functionLinenumber: 2250
    functionLinenumberEnd: 2250
    functionName: operator socket_ref()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - socket_ref
    linkageType: ''
    returnType: void
    signature: void operator socket_ref()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_socket
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2260,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2263,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2265,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    argCount: 2
    argNames:
    - context_
    - type_
    argTypes:
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2266
      start: 2259
    functionDepth: 0
    functionLinenumber: 2259
    functionLinenumberEnd: 2266
    functionName: zmq::socket_t::socket_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_socket
    - error_t
    linkageType: ''
    returnType: void
    signature: void socket_t(void *context_, int type_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: socket_t::swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - socket_t
    - socket_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2272
      start: 2269
    functionDepth: 0
    functionLinenumber: 2269
    functionLinenumberEnd: 2272
    functionName: zmq::swap
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 4
    functionsReached:
    - socket_t::swap
    linkageType: ''
    returnType: void
    signature: void swap(socket_t &a, socket_t &b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_proxy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2277,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2279,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 3
    argNames:
    - frontend
    - backend
    - capture
    argTypes:
    - void*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2280
      start: 2275
    functionDepth: 0
    functionLinenumber: 2275
    functionLinenumberEnd: 2280
    functionName: zmq::proxy
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_proxy
    - error_t
    linkageType: ''
    returnType: void
    signature: void proxy(void *frontend, void *backend, void *capture)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: socket_ref
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2283,1
    - Dst: zmq_proxy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2285,1
    - Dst: socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2285,1
    - Dst: socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2285,1
    - Dst: zmq::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2285,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2287,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - frontend
    - backend
    argTypes:
    - socket_ref
    - socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2288
      start: 2282
    functionDepth: 1
    functionLinenumber: 2282
    functionLinenumberEnd: 2288
    functionName: zmq::proxy
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - error_t
    - zmq::handle
    - socket_ref
    - zmq_proxy
    - socket_ref::handle
    linkageType: ''
    returnType: void
    signature: void proxy(socket_ref frontend, socket_ref backend, socket_ref capture
      = socket_ref())
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_proxy_steerable
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2295,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2297,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 4
    argNames:
    - frontend
    - backend
    - capture
    - control
    argTypes:
    - void*
    - void*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2298
      start: 2292
    functionDepth: 0
    functionLinenumber: 2292
    functionLinenumberEnd: 2298
    functionName: zmq::proxy_steerable
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_proxy_steerable
    - error_t
    linkageType: ''
    returnType: void
    signature: void proxy_steerable(void *frontend, void *backend, void *capture,
      void *control)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_proxy_steerable
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2305,1
    - Dst: socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2305,1
    - Dst: socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2305,1
    - Dst: socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2306,1
    - Dst: socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2306,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2308,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 4
    argNames:
    - frontend
    - backend
    - capture
    - control
    argTypes:
    - socket_ref
    - socket_ref
    - socket_ref
    - socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2309
      start: 2300
    functionDepth: 0
    functionLinenumber: 2300
    functionLinenumberEnd: 2309
    functionName: zmq::proxy_steerable
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - socket_ref::handle
    - zmq_proxy_steerable
    - error_t
    linkageType: ''
    returnType: void
    signature: "void proxy_steerable(socket_ref frontend,\n                            socket_ref
      backend,\n                            socket_ref capture,\n                            socket_ref
      control)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2315
      start: 2315
    functionDepth: 0
    functionLinenumber: 2315
    functionLinenumberEnd: 2315
    functionName: zmq::monitor_t::monitor_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void monitor_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2317
      start: 2317
    functionDepth: 0
    functionLinenumber: 2317
    functionLinenumberEnd: 2317
    functionName: ~monitor_t()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - close
    linkageType: ''
    returnType: void
    signature: void ~monitor_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2322,1
    - Dst: swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2323,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - monitor_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2324
      start: 2320
    functionDepth: 0
    functionLinenumber: 2320
    functionLinenumberEnd: 2324
    functionName: zmq::monitor_t::monitor_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: void
    signature: void monitor_t(monitor_t &&rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2328,1
    - Dst: socket_ref
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2329,1
    - Dst: zmq::swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2330,1
    - Dst: zmq::swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2331,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - monitor_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2333
      start: 2326
    functionDepth: 0
    functionLinenumber: 2326
    functionLinenumberEnd: 2333
    functionName: '&operator=(monitor_t &&rhs)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - close
    - socket_ref
    - zmq::swap
    linkageType: ''
    returnType: monitor_t
    signature: monitor_t &operator=(monitor_t &&rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::monitor_t::monitor
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2340,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - socket
    - addr
    argTypes:
    - socket_t
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2341
      start: 2337
    functionDepth: 1
    functionLinenumber: 2337
    functionLinenumberEnd: 2341
    functionName: zmq::monitor_t::monitor
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - std::string::c_str
    - zmq::monitor_t::monitor
    linkageType: ''
    returnType: void
    signature: void monitor(socket_t &socket, std::string const &addr, int events
      = ZMQ_EVENT_ALL)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::monitor_t::init
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2345,1
    - Dst: zmq::monitor_t::check_event
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2347,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - socket
    - addr_
    argTypes:
    - socket_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2349
      start: 2343
    functionDepth: 1
    functionLinenumber: 2343
    functionLinenumberEnd: 2349
    functionName: zmq::monitor_t::monitor
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - zmq::monitor_t::check_event
    - zmq::monitor_t::init
    linkageType: ''
    returnType: void
    signature: void monitor(socket_t &socket, const char *addr_, int events = ZMQ_EVENT_ALL)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::monitor_t::init
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2353,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2353,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - socket
    - addr
    argTypes:
    - socket_t
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2354
      start: 2351
    functionDepth: 1
    functionLinenumber: 2351
    functionLinenumberEnd: 2354
    functionName: zmq::monitor_t::init
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - std::string::c_str
    - zmq::monitor_t::init
    linkageType: ''
    returnType: void
    signature: void init(socket_t &socket, std::string const &addr, int events = ZMQ_EVENT_ALL)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_socket_monitor
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2358,1
    - Dst: socket_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2358,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2360,1
    - Dst: socket_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2363,1
    - Dst: connect
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2364,1
    - Dst: zmq::monitor_t::on_monitor_started
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2366,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - socket
    - addr_
    argTypes:
    - socket_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2367
      start: 2356
    functionDepth: 1
    functionLinenumber: 2356
    functionLinenumberEnd: 2367
    functionName: zmq::monitor_t::init
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - error_t
    - zmq_socket_monitor
    - zmq::monitor_t::on_monitor_started
    - socket_t::handle
    - connect
    - socket_t
    linkageType: ''
    returnType: void
    signature: void init(socket_t &socket, const char *addr_, int events = ZMQ_EVENT_ALL)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2371,1
    - Dst: handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2374,1
    - Dst: zmq::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2378,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2378,1
    - Dst: zmq::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2380,1
    - Dst: zmq::monitor_t::process_event
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (_monitor_socket)
      pos:
        line_end: 2370
        line_start: 2370
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 2384
      start: 2369
    functionDepth: 2
    functionLinenumber: 2369
    functionLinenumberEnd: 2384
    functionName: zmq::monitor_t::check_event
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - zmq::monitor_t::process_event
    - handle
    - assert
    - std::chrono::milliseconds
    - zmq::poll
    linkageType: ''
    returnType: bool
    signature: bool check_event(int timeout = 0)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_socket_monitor
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2390,1
    - Dst: handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2390,1
    - Dst: socket_ref
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2392,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2393
      start: 2387
    functionDepth: 0
    functionLinenumber: 2387
    functionLinenumberEnd: 2393
    functionName: zmq::monitor_t::abort
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - handle
    - zmq_socket_monitor
    - socket_ref
    linkageType: ''
    returnType: void
    signature: void abort()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2395
      start: 2395
    functionDepth: 0
    functionLinenumber: 2395
    functionLinenumberEnd: 2395
    functionName: zmq::monitor_t::on_monitor_stopped
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_monitor_stopped()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2397
      start: 2397
    functionDepth: 0
    functionLinenumber: 2397
    functionLinenumberEnd: 2397
    functionName: zmq::monitor_t::on_monitor_started
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_monitor_started()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2402
      start: 2398
    functionDepth: 0
    functionLinenumber: 2398
    functionLinenumberEnd: 2402
    functionName: zmq::monitor_t::on_event_connected
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_connected(const zmq_event_t &event_, const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2408
      start: 2403
    functionDepth: 0
    functionLinenumber: 2403
    functionLinenumberEnd: 2408
    functionName: zmq::monitor_t::on_event_connect_delayed
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void on_event_connect_delayed(const zmq_event_t &event_,\n                                          const
      char *addr_)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2414
      start: 2409
    functionDepth: 0
    functionLinenumber: 2409
    functionLinenumberEnd: 2414
    functionName: zmq::monitor_t::on_event_connect_retried
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void on_event_connect_retried(const zmq_event_t &event_,\n                                          const
      char *addr_)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2419
      start: 2415
    functionDepth: 0
    functionLinenumber: 2415
    functionLinenumberEnd: 2419
    functionName: zmq::monitor_t::on_event_listening
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_listening(const zmq_event_t &event_, const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2424
      start: 2420
    functionDepth: 0
    functionLinenumber: 2420
    functionLinenumberEnd: 2424
    functionName: zmq::monitor_t::on_event_bind_failed
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_bind_failed(const zmq_event_t &event_, const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2429
      start: 2425
    functionDepth: 0
    functionLinenumber: 2425
    functionLinenumberEnd: 2429
    functionName: zmq::monitor_t::on_event_accepted
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_accepted(const zmq_event_t &event_, const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2434
      start: 2430
    functionDepth: 0
    functionLinenumber: 2430
    functionLinenumberEnd: 2434
    functionName: zmq::monitor_t::on_event_accept_failed
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_accept_failed(const zmq_event_t &event_, const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2439
      start: 2435
    functionDepth: 0
    functionLinenumber: 2435
    functionLinenumberEnd: 2439
    functionName: zmq::monitor_t::on_event_closed
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_closed(const zmq_event_t &event_, const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2444
      start: 2440
    functionDepth: 0
    functionLinenumber: 2440
    functionLinenumberEnd: 2444
    functionName: zmq::monitor_t::on_event_close_failed
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_close_failed(const zmq_event_t &event_, const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2449
      start: 2445
    functionDepth: 0
    functionLinenumber: 2445
    functionLinenumberEnd: 2449
    functionName: zmq::monitor_t::on_event_disconnected
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_disconnected(const zmq_event_t &event_, const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2456
      start: 2451
    functionDepth: 0
    functionLinenumber: 2451
    functionLinenumberEnd: 2456
    functionName: zmq::monitor_t::on_event_handshake_failed_no_detail
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void on_event_handshake_failed_no_detail(const zmq_event_t &event_,\n
      \                                                    const char *addr_)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2462
      start: 2457
    functionDepth: 0
    functionLinenumber: 2457
    functionLinenumberEnd: 2462
    functionName: zmq::monitor_t::on_event_handshake_failed_protocol
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void on_event_handshake_failed_protocol(const zmq_event_t &event_,\n
      \                                                   const char *addr_)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2468
      start: 2463
    functionDepth: 0
    functionLinenumber: 2463
    functionLinenumberEnd: 2468
    functionName: zmq::monitor_t::on_event_handshake_failed_auth
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void on_event_handshake_failed_auth(const zmq_event_t &event_,\n                                                const
      char *addr_)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2474
      start: 2469
    functionDepth: 0
    functionLinenumber: 2469
    functionLinenumberEnd: 2474
    functionName: zmq::monitor_t::on_event_handshake_succeeded
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void on_event_handshake_succeeded(const zmq_event_t &event_,\n                                              const
      char *addr_)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2481
      start: 2476
    functionDepth: 0
    functionLinenumber: 2476
    functionLinenumberEnd: 2481
    functionName: zmq::monitor_t::on_event_handshake_failed
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void on_event_handshake_failed(const zmq_event_t &event_,\n                                           const
      char *addr_)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2487
      start: 2482
    functionDepth: 0
    functionLinenumber: 2482
    functionLinenumberEnd: 2487
    functionName: zmq::monitor_t::on_event_handshake_succeed
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void on_event_handshake_succeed(const zmq_event_t &event_,\n                                            const
      char *addr_)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2493
      start: 2489
    functionDepth: 0
    functionLinenumber: 2489
    functionLinenumberEnd: 2493
    functionName: zmq::monitor_t::on_event_unknown
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_unknown(const zmq_event_t &event_, const char *addr_)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2501,1
    - Dst: zmq::message_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2501,1
    - Dst: handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2501,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2502,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2504,1
    - Dst: static_cast<const char *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2511,1
    - Dst: zmq::message_t::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2511,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2513,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2515,1
    - Dst: static_cast<zmq_event_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2518,1
    - Dst: zmq::message_t::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2518,1
    - Dst: zmq_msg_recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2523,1
    - Dst: zmq::message_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2523,1
    - Dst: handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2523,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2524,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2528,1
    - Dst: zmq::message_t::to_string
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2529,1
    - Dst: zmq::monitor_t::on_monitor_stopped
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2537,1
    - Dst: zmq::monitor_t::on_event_connected
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2545,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2545,1
    - Dst: zmq::monitor_t::on_event_connect_delayed
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2548,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2548,1
    - Dst: zmq::monitor_t::on_event_connect_retried
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2551,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2551,1
    - Dst: zmq::monitor_t::on_event_listening
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2554,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2554,1
    - Dst: zmq::monitor_t::on_event_bind_failed
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2557,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2557,1
    - Dst: zmq::monitor_t::on_event_accepted
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2560,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2560,1
    - Dst: zmq::monitor_t::on_event_accept_failed
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2563,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2563,1
    - Dst: zmq::monitor_t::on_event_closed
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2566,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2566,1
    - Dst: zmq::monitor_t::on_event_close_failed
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2569,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2569,1
    - Dst: zmq::monitor_t::on_event_disconnected
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2572,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2572,1
    - Dst: ZMQ_MAKE_VERSION
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2574,1
    - Dst: ZMQ_MAKE_VERSION
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2574,1
    - Dst: zmq::monitor_t::on_event_handshake_failed_no_detail
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2576,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2576,1
    - Dst: zmq::monitor_t::on_event_handshake_failed_protocol
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2579,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2579,1
    - Dst: zmq::monitor_t::on_event_handshake_failed_auth
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2582,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2582,1
    - Dst: zmq::monitor_t::on_event_handshake_succeeded
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2585,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2585,1
    - Dst: ZMQ_MAKE_VERSION
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2587,1
    - Dst: zmq::monitor_t::on_event_handshake_failed
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2589,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2589,1
    - Dst: zmq::monitor_t::on_event_handshake_succeed
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2592,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2592,1
    - Dst: zmq::monitor_t::on_event_unknown
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2596,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2596,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 73
    argCount: 1
    argNames:
    - events
    argTypes:
    - short
    assertStmts:
    - condition: (rc != -1)
      pos:
        line_end: 2527
        line_start: 2527
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - condition: (rc != -1)
      pos:
        line_end: 2503
        line_start: 2503
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 2601
      start: 2496
    functionDepth: 4
    functionLinenumber: 2496
    functionLinenumberEnd: 2601
    functionName: zmq::monitor_t::process_event
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached:
    - zmq::monitor_t::on_event_bind_failed
    - memcpy
    - zmq::monitor_t::on_event_unknown
    - static_cast<const char *>
    - zmq::monitor_t::on_event_disconnected
    - zmq::monitor_t::on_event_listening
    - zmq::monitor_t::on_event_handshake_failed_protocol
    - zmq::monitor_t::on_event_connected
    - zmq::monitor_t::on_event_connect_delayed
    - zmq_msg_recv
    - std::string::c_str
    - zmq::monitor_t::on_event_connect_retried
    - assert
    - zmq::monitor_t::on_event_accepted
    - zmq::message_t::to_string
    - zmq::monitor_t::on_monitor_stopped
    - zmq::message_t::data
    - zmq::monitor_t::on_event_closed
    - ZMQ_MAKE_VERSION
    - handle
    - zmq::monitor_t::on_event_handshake_failed_auth
    - zmq_errno
    - zmq::monitor_t::on_event_close_failed
    - zmq::monitor_t::on_event_accept_failed
    - zmq::monitor_t::on_event_handshake_succeed
    - static_cast<zmq_event_t *>
    - zmq::monitor_t::on_event_handshake_succeeded
    - zmq::monitor_t::on_event_handshake_failed
    - zmq::message_t::handle
    - zmq::monitor_t::on_event_handshake_failed_no_detail
    linkageType: ''
    returnType: bool
    signature: bool process_event(short events)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2603
      start: 2603
    functionDepth: 0
    functionLinenumber: 2603
    functionLinenumberEnd: 2603
    functionName: zmq::monitor_t::monitor_socket
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: socket_ref
    signature: socket_ref monitor_socket()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_socket_monitor
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2615,1
    - Dst: handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2615,1
    - Dst: close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2616,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2617
      start: 2612
    functionDepth: 0
    functionLinenumber: 2612
    functionLinenumberEnd: 2617
    functionName: zmq::monitor_t::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - close
    - handle
    - zmq_socket_monitor
    linkageType: ''
    returnType: void
    signature: void ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::enum_bit_or
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2634,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - event_flags
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2635
      start: 2632
    functionDepth: 1
    functionLinenumber: 2632
    functionLinenumberEnd: 2635
    functionName: operator|(event_flags a, event_flags b) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - detail::enum_bit_or
    linkageType: ''
    returnType: event_flags
    signature: event_flags operator|(event_flags a, event_flags b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::enum_bit_and
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2638,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - event_flags
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2639
      start: 2636
    functionDepth: 1
    functionLinenumber: 2636
    functionLinenumberEnd: 2639
    functionName: operator&(event_flags a, event_flags b) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - detail::enum_bit_and
    linkageType: ''
    returnType: event_flags
    signature: event_flags operator&(event_flags a, event_flags b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::enum_bit_xor
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2642,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - event_flags
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2643
      start: 2640
    functionDepth: 1
    functionLinenumber: 2640
    functionLinenumberEnd: 2643
    functionName: operator^(event_flags a, event_flags b) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - detail::enum_bit_xor
    linkageType: ''
    returnType: event_flags
    signature: event_flags operator^(event_flags a, event_flags b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::enum_bit_not
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2646,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2647
      start: 2644
    functionDepth: 1
    functionLinenumber: 2644
    functionLinenumberEnd: 2647
    functionName: operator~(event_flags a) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - detail::enum_bit_not
    linkageType: ''
    returnType: event_flags
    signature: event_flags operator~(event_flags a) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_new
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2665,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2668,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2669
      start: 2665
    functionDepth: 0
    functionLinenumber: 2665
    functionLinenumberEnd: 2669
    functionName: zmq::poller_t::poller_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_poller_new
    - error_t
    linkageType: ''
    returnType: void
    signature: void poller_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::poller_t::add_impl
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2677,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - socket
    - events
    - user_data
    argTypes:
    - zmq::socket_ref
    - event_flags
    - T*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2678
      start: 2675
    functionDepth: 1
    functionLinenumber: 2675
    functionLinenumberEnd: 2678
    functionName: zmq::poller_t::add
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::poller_t::add_impl
    linkageType: ''
    returnType: void
    signature: void add(zmq::socket_ref socket, event_flags events, T *user_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::poller_t::add_impl
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2682,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - socket
    - events
    argTypes:
    - zmq::socket_ref
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2683
      start: 2680
    functionDepth: 1
    functionLinenumber: 2680
    functionLinenumberEnd: 2683
    functionName: zmq::poller_t::add
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::poller_t::add_impl
    linkageType: ''
    returnType: void
    signature: void add(zmq::socket_ref socket, event_flags events)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::poller_t::add_impl
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2691,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - fd
    - events
    - user_data
    argTypes:
    - fd_t
    - event_flags
    - T*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2692
      start: 2689
    functionDepth: 1
    functionLinenumber: 2689
    functionLinenumberEnd: 2692
    functionName: zmq::poller_t::add
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::poller_t::add_impl
    linkageType: ''
    returnType: void
    signature: void add(fd_t fd, event_flags events, T *user_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::poller_t::add_impl
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2694,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - fd
    - events
    argTypes:
    - fd_t
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2694
      start: 2694
    functionDepth: 1
    functionLinenumber: 2694
    functionLinenumberEnd: 2694
    functionName: zmq::poller_t::add
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::poller_t::add_impl
    linkageType: ''
    returnType: void
    signature: void add(fd_t fd, event_flags events)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_remove
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2698,1
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2698,1
    - Dst: zmq::socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2698,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2699,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - socket
    argTypes:
    - zmq::socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2701
      start: 2696
    functionDepth: 0
    functionLinenumber: 2696
    functionLinenumberEnd: 2701
    functionName: zmq::poller_t::remove
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_poller_remove
    - zmq::socket_ref::handle
    - get
    - error_t
    linkageType: ''
    returnType: void
    signature: void remove(zmq::socket_ref socket)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_remove_fd
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2705,1
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2705,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2706,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - fd
    argTypes:
    - fd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2708
      start: 2703
    functionDepth: 0
    functionLinenumber: 2703
    functionLinenumberEnd: 2708
    functionName: zmq::poller_t::remove
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - get
    - zmq_poller_remove_fd
    - error_t
    linkageType: ''
    returnType: void
    signature: void remove(fd_t fd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_modify
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2713,1
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2713,1
    - Dst: zmq::socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2713,1
    - Dst: static_cast<short>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2714,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2715,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - socket
    - events
    argTypes:
    - zmq::socket_ref
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2717
      start: 2710
    functionDepth: 0
    functionLinenumber: 2710
    functionLinenumberEnd: 2717
    functionName: zmq::poller_t::modify
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - get
    - zmq_poller_modify
    - error_t
    - static_cast<short>
    - zmq::socket_ref::handle
    linkageType: ''
    returnType: void
    signature: void modify(zmq::socket_ref socket, event_flags events)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_modify_fd
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2722,1
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2722,1
    - Dst: static_cast<short>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2723,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2724,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - fd
    - events
    argTypes:
    - fd_t
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2726
      start: 2719
    functionDepth: 0
    functionLinenumber: 2719
    functionLinenumberEnd: 2726
    functionName: zmq::poller_t::modify
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - get
    - static_cast<short>
    - zmq_poller_modify_fd
    - error_t
    linkageType: ''
    returnType: void
    signature: void modify(fd_t fd, event_flags events)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_wait_all
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2734,1
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2735,1
    - Dst: reinterpret_cast<zmq_poller_event_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2736,1
    - Dst: Sequence::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2736,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2737,1
    - Dst: Sequence::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2737,1
    - Dst: static_cast<long>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2738,1
    - Dst: std::chrono::milliseconds::count
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2738,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2740,1
    - Dst: ZMQ_MAKE_VERSION
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2742,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2743,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2745,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2749,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - poller_events
    - timeout
    argTypes:
    - Sequence
    - std::chrono::milliseconds
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2750
      start: 2729
    functionDepth: 2
    functionLinenumber: 2729
    functionLinenumberEnd: 2750
    functionName: zmq::poller_t::wait_all
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - get
    - ZMQ_MAKE_VERSION
    - std::chrono::milliseconds::count
    - error_t
    - Sequence::data
    - Sequence::size
    - zmq_errno
    - reinterpret_cast<zmq_poller_event_t *>
    - static_cast<long>
    - static_cast<size_t>
    - static_cast<int>
    - zmq_poller_wait_all
    linkageType: ''
    returnType: size_t
    signature: "size_t wait_all(Sequence &poller_events,\n                    const
      std::chrono::milliseconds timeout)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2755,1
    - Dst: const_cast<void *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2755,1
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2755,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2756,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2757,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2758
      start: 2753
    functionDepth: 1
    functionLinenumber: 2753
    functionLinenumberEnd: 2758
    functionName: zmq::poller_t::size
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - get
    - const_cast<void *>
    - ZMQ_ASSERT
    - zmq_poller_size
    - static_cast<size_t>
    linkageType: ''
    returnType: size_t
    signature: size_t size() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_destroy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2766,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2768
      start: 2764
    functionDepth: 1
    functionLinenumber: 2764
    functionLinenumberEnd: 2768
    functionName: operator()(void *ptr) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - ZMQ_ASSERT
    - zmq_poller_destroy
    linkageType: ''
    returnType: void
    signature: void operator()(void *ptr) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_add
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2776,1
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2776,1
    - Dst: zmq::socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2776,1
    - Dst: static_cast<short>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2777,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2778,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - socket
    - events
    - user_data
    argTypes:
    - zmq::socket_ref
    - event_flags
    - T*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2780
      start: 2773
    functionDepth: 0
    functionLinenumber: 2773
    functionLinenumberEnd: 2780
    functionName: zmq::poller_t::add_impl
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 4
    functionsReached:
    - get
    - error_t
    - static_cast<short>
    - zmq_poller_add
    - zmq::socket_ref::handle
    linkageType: ''
    returnType: void
    signature: void add_impl(zmq::socket_ref socket, event_flags events, T *user_data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_add_fd
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2785,1
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2785,1
    - Dst: static_cast<short>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2786,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2787,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - fd
    - events
    - user_data
    argTypes:
    - fd_t
    - event_flags
    - T*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2789
      start: 2782
    functionDepth: 0
    functionLinenumber: 2782
    functionLinenumberEnd: 2789
    functionName: zmq::poller_t::add_impl
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 4
    functionsReached:
    - get
    - static_cast<short>
    - error_t
    - zmq_poller_add_fd
    linkageType: ''
    returnType: void
    signature: void add_impl(fd_t fd, event_flags events, T *user_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: message_t::str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2795,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - os
    - msg
    argTypes:
    - std::ostream
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2796
      start: 2793
    functionDepth: 0
    functionLinenumber: 2793
    functionLinenumberEnd: 2796
    functionName: '&operator<<(std::ostream &os, const message_t &msg)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - message_t::str
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream &operator<<(std::ostream &os, const message_t &msg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_timers_new
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2812,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2815,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2816
      start: 2812
    functionDepth: 0
    functionLinenumber: 2812
    functionLinenumberEnd: 2816
    functionName: zmq::timers::timers
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_timers_new
    - error_t
    linkageType: ''
    returnType: void
    signature: void timers()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - other
    argTypes:
    - timers
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2818
      start: 2818
    functionDepth: 0
    functionLinenumber: 2818
    functionLinenumberEnd: 2818
    functionName: zmq::timers::timers
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void timers(const timers &other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - other
    argTypes:
    - timers
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2819
      start: 2819
    functionDepth: 0
    functionLinenumber: 2819
    functionLinenumberEnd: 2819
    functionName: '&operator=(const timers &other)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: timers
    signature: timers &operator=(const timers &other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_timers_destroy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2823,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2824,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2825
      start: 2821
    functionDepth: 1
    functionLinenumber: 2821
    functionLinenumberEnd: 2825
    functionName: ~timers()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - ZMQ_ASSERT
    - zmq_timers_destroy
    linkageType: ''
    returnType: void
    signature: void ~timers()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_timers_add
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2829,1
    - Dst: std::chrono::milliseconds::count
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2829,1
    - Dst: zmq::error_t::error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2831,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - interval
    - handler
    - arg
    argTypes:
    - std::chrono::milliseconds
    - zmq_timer_fn
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2833
      start: 2827
    functionDepth: 2
    functionLinenumber: 2827
    functionLinenumberEnd: 2833
    functionName: zmq::timers::add
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::error_t::error_t
    - std::chrono::milliseconds::count
    - zmq_timers_add
    linkageType: ''
    returnType: id_t
    signature: id_t add(std::chrono::milliseconds interval, zmq_timer_fn handler,
      void *arg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_timers_cancel
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2837,1
    - Dst: zmq::error_t::error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2839,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - timer_id
    argTypes:
    - id_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2840
      start: 2835
    functionDepth: 1
    functionLinenumber: 2835
    functionLinenumberEnd: 2840
    functionName: zmq::timers::cancel
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::error_t::error_t
    - zmq_timers_cancel
    linkageType: ''
    returnType: void
    signature: void cancel(id_t timer_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_timers_set_interval
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2844,1
    - Dst: std::chrono::milliseconds::count
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2844,1
    - Dst: zmq::error_t::error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2846,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - timer_id
    - interval
    argTypes:
    - id_t
    - std::chrono::milliseconds
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2847
      start: 2842
    functionDepth: 2
    functionLinenumber: 2842
    functionLinenumberEnd: 2847
    functionName: zmq::timers::set_interval
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::error_t::error_t
    - std::chrono::milliseconds::count
    - zmq_timers_set_interval
    linkageType: ''
    returnType: void
    signature: void set_interval(id_t timer_id, std::chrono::milliseconds interval)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_timers_reset
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2851,1
    - Dst: zmq::error_t::error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2853,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - timer_id
    argTypes:
    - id_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2854
      start: 2849
    functionDepth: 1
    functionLinenumber: 2849
    functionLinenumberEnd: 2854
    functionName: zmq::timers::reset
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_timers_reset
    - zmq::error_t::error_t
    linkageType: ''
    returnType: void
    signature: void reset(id_t timer_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_timers_timeout
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2858,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2862
      start: 2856
    functionDepth: 0
    functionLinenumber: 2856
    functionLinenumberEnd: 2862
    functionName: zmq::timers::timeout
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_timers_timeout
    linkageType: ''
    returnType: timeout_result_t
    signature: timeout_result_t timeout() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_timers_execute
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2866,1
    - Dst: zmq::error_t::error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2868,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2869
      start: 2864
    functionDepth: 1
    functionLinenumber: 2864
    functionLinenumberEnd: 2869
    functionName: zmq::timers::execute
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_timers_execute
    - zmq::error_t::error_t
    linkageType: ''
    returnType: void
    signature: void execute()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2194
      start: 2194
    functionDepth: 0
    functionLinenumber: 2194
    functionLinenumberEnd: 2194
    functionName: zmq::socket_t::socket_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void socket_t()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_socket
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2197,1
    - Dst: context_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2197,1
    - Dst: context_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2198,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2201,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - context_
    - type_
    argTypes:
    - context_t
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2202
      start: 2196
    functionDepth: 0
    functionLinenumber: 2196
    functionLinenumberEnd: 2202
    functionName: zmq::socket_t::socket_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - context_t::handle
    - zmq_socket
    - error_t
    linkageType: ''
    returnType: void
    signature: void socket_t(context_t &context_, int type_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2206,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 2
    argNames:
    - context_
    - type_
    argTypes:
    - context_t
    - socket_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2208
      start: 2205
    functionDepth: 0
    functionLinenumber: 2205
    functionLinenumberEnd: 2208
    functionName: zmq::socket_t::socket_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void socket_t(context_t &context_, socket_type type_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - socket_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2217
      start: 2212
    functionDepth: 0
    functionLinenumber: 2212
    functionLinenumberEnd: 2217
    functionName: zmq::socket_t::socket_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void socket_t(socket_t &&rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2220,1
    - Dst: swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2221,1
    - Dst: swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2222,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - socket_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2224
      start: 2218
    functionDepth: 0
    functionLinenumber: 2218
    functionLinenumberEnd: 2224
    functionName: '&operator=(socket_t &&rhs)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - close
    - swap
    linkageType: ''
    returnType: socket_t
    signature: socket_t &operator=(socket_t &&rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2227,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2227
      start: 2227
    functionDepth: 0
    functionLinenumber: 2227
    functionLinenumberEnd: 2227
    functionName: ~socket_t()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - close
    linkageType: ''
    returnType: void
    signature: void ~socket_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2229
      start: 2229
    functionDepth: 0
    functionLinenumber: 2229
    functionLinenumberEnd: 2229
    functionName: operator void *()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator void *()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2231
      start: 2231
    functionDepth: 0
    functionLinenumber: 2231
    functionLinenumberEnd: 2231
    functionName: operator void const *() const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void operator void const *() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2238,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2239,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2242
      start: 2233
    functionDepth: 1
    functionLinenumber: 2233
    functionLinenumberEnd: 2242
    functionName: zmq::socket_t::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - ZMQ_ASSERT
    - zmq_close
    linkageType: ''
    returnType: void
    signature: void ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::socket_t::swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2246,1
    - Dst: zmq::socket_t::swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2247,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - other
    argTypes:
    - socket_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2248
      start: 2244
    functionDepth: 0
    functionLinenumber: 2244
    functionLinenumberEnd: 2248
    functionName: zmq::socket_t::swap
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - zmq::socket_t::swap
    linkageType: ''
    returnType: void
    signature: void swap(socket_t &other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: socket_ref
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2250,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2250
      start: 2250
    functionDepth: 0
    functionLinenumber: 2250
    functionLinenumberEnd: 2250
    functionName: operator socket_ref()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - socket_ref
    linkageType: ''
    returnType: void
    signature: void operator socket_ref()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq_socket
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2260,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2263,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2265,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 5
    argCount: 2
    argNames:
    - context_
    - type_
    argTypes:
    - void*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2266
      start: 2259
    functionDepth: 0
    functionLinenumber: 2259
    functionLinenumberEnd: 2266
    functionName: zmq::socket_t::socket_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_socket
    - error_t
    linkageType: ''
    returnType: void
    signature: void socket_t(void *context_, int type_)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: socket_t::swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2271,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - socket_t
    - socket_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2272
      start: 2269
    functionDepth: 0
    functionLinenumber: 2269
    functionLinenumberEnd: 2272
    functionName: zmq::swap
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 5
    functionsReached:
    - socket_t::swap
    linkageType: ''
    returnType: void
    signature: void swap(socket_t &a, socket_t &b)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_proxy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2277,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2279,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 3
    argNames:
    - frontend
    - backend
    - capture
    argTypes:
    - void*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2280
      start: 2275
    functionDepth: 0
    functionLinenumber: 2275
    functionLinenumberEnd: 2280
    functionName: zmq::proxy
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_proxy
    - error_t
    linkageType: ''
    returnType: void
    signature: void proxy(void *frontend, void *backend, void *capture)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: socket_ref
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2283,1
    - Dst: zmq_proxy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2285,1
    - Dst: socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2285,1
    - Dst: socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2285,1
    - Dst: zmq::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2285,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2287,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - frontend
    - backend
    argTypes:
    - socket_ref
    - socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2288
      start: 2282
    functionDepth: 1
    functionLinenumber: 2282
    functionLinenumberEnd: 2288
    functionName: zmq::proxy
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - error_t
    - zmq::handle
    - socket_ref
    - zmq_proxy
    - socket_ref::handle
    linkageType: ''
    returnType: void
    signature: void proxy(socket_ref frontend, socket_ref backend, socket_ref capture
      = socket_ref())
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_proxy_steerable
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2295,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2297,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 4
    argNames:
    - frontend
    - backend
    - capture
    - control
    argTypes:
    - void*
    - void*
    - void*
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2298
      start: 2292
    functionDepth: 0
    functionLinenumber: 2292
    functionLinenumberEnd: 2298
    functionName: zmq::proxy_steerable
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_proxy_steerable
    - error_t
    linkageType: ''
    returnType: void
    signature: void proxy_steerable(void *frontend, void *backend, void *capture,
      void *control)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_proxy_steerable
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2305,1
    - Dst: socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2305,1
    - Dst: socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2305,1
    - Dst: socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2306,1
    - Dst: socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2306,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2308,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 4
    argNames:
    - frontend
    - backend
    - capture
    - control
    argTypes:
    - socket_ref
    - socket_ref
    - socket_ref
    - socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2309
      start: 2300
    functionDepth: 0
    functionLinenumber: 2300
    functionLinenumberEnd: 2309
    functionName: zmq::proxy_steerable
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - socket_ref::handle
    - zmq_proxy_steerable
    - error_t
    linkageType: ''
    returnType: void
    signature: "void proxy_steerable(socket_ref frontend,\n                            socket_ref
      backend,\n                            socket_ref capture,\n                            socket_ref
      control)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2315
      start: 2315
    functionDepth: 0
    functionLinenumber: 2315
    functionLinenumberEnd: 2315
    functionName: zmq::monitor_t::monitor_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void monitor_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2317,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2317
      start: 2317
    functionDepth: 0
    functionLinenumber: 2317
    functionLinenumberEnd: 2317
    functionName: ~monitor_t()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - close
    linkageType: ''
    returnType: void
    signature: void ~monitor_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2322,1
    - Dst: swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2323,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - monitor_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2324
      start: 2320
    functionDepth: 0
    functionLinenumber: 2320
    functionLinenumberEnd: 2324
    functionName: zmq::monitor_t::monitor_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - swap
    linkageType: ''
    returnType: void
    signature: void monitor_t(monitor_t &&rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2328,1
    - Dst: socket_ref
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2329,1
    - Dst: swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2330,1
    - Dst: swap
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2331,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - rhs
    argTypes:
    - monitor_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2333
      start: 2326
    functionDepth: 0
    functionLinenumber: 2326
    functionLinenumberEnd: 2333
    functionName: '&operator=(monitor_t &&rhs)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - close
    - swap
    - socket_ref
    linkageType: ''
    returnType: monitor_t
    signature: monitor_t &operator=(monitor_t &&rhs)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::monitor_t::monitor
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2340,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2340,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - socket
    - addr
    argTypes:
    - socket_t
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2341
      start: 2337
    functionDepth: 1
    functionLinenumber: 2337
    functionLinenumberEnd: 2341
    functionName: zmq::monitor_t::monitor
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - std::string::c_str
    - zmq::monitor_t::monitor
    linkageType: ''
    returnType: void
    signature: void monitor(socket_t &socket, std::string const &addr, int events
      = ZMQ_EVENT_ALL)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::monitor_t::init
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2345,1
    - Dst: zmq::monitor_t::check_event
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2347,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - socket
    - addr_
    argTypes:
    - socket_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2349
      start: 2343
    functionDepth: 3
    functionLinenumber: 2343
    functionLinenumberEnd: 2349
    functionName: zmq::monitor_t::monitor
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - zmq::monitor_t::check_event
    - zmq::monitor_t::init
    linkageType: ''
    returnType: void
    signature: void monitor(socket_t &socket, const char *addr_, int events = ZMQ_EVENT_ALL)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::monitor_t::init
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2353,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2353,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - socket
    - addr
    argTypes:
    - socket_t
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2354
      start: 2351
    functionDepth: 1
    functionLinenumber: 2351
    functionLinenumberEnd: 2354
    functionName: zmq::monitor_t::init
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 4
    functionsReached:
    - std::string::c_str
    - zmq::monitor_t::init
    linkageType: ''
    returnType: void
    signature: void init(socket_t &socket, std::string const &addr, int events = ZMQ_EVENT_ALL)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_socket_monitor
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2358,1
    - Dst: socket_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2358,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2360,1
    - Dst: socket_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2363,1
    - Dst: connect
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2364,1
    - Dst: zmq::monitor_t::on_monitor_started
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2366,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - socket
    - addr_
    argTypes:
    - socket_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2367
      start: 2356
    functionDepth: 1
    functionLinenumber: 2356
    functionLinenumberEnd: 2367
    functionName: zmq::monitor_t::init
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 4
    functionsReached:
    - error_t
    - zmq_socket_monitor
    - zmq::monitor_t::on_monitor_started
    - socket_t::handle
    - connect
    - socket_t
    linkageType: ''
    returnType: void
    signature: void init(socket_t &socket, const char *addr_, int events = ZMQ_EVENT_ALL)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2371,1
    - Dst: handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2374,1
    - Dst: zmq::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2378,1
    - Dst: std::chrono::milliseconds
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2378,1
    - Dst: zmq::poll
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2380,1
    - Dst: zmq::monitor_t::process_event
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2383,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts:
    - condition: (_monitor_socket)
      pos:
        line_end: 2370
        line_start: 2370
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 2384
      start: 2369
    functionDepth: 5
    functionLinenumber: 2369
    functionLinenumberEnd: 2384
    functionName: zmq::monitor_t::check_event
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - zmq::monitor_t::process_event
    - handle
    - assert
    - std::chrono::milliseconds
    - zmq::poll
    linkageType: ''
    returnType: bool
    signature: bool check_event(int timeout = 0)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_socket_monitor
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2390,1
    - Dst: handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2390,1
    - Dst: socket_ref
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2392,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2393
      start: 2387
    functionDepth: 0
    functionLinenumber: 2387
    functionLinenumberEnd: 2393
    functionName: zmq::monitor_t::abort
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - handle
    - zmq_socket_monitor
    - socket_ref
    linkageType: ''
    returnType: void
    signature: void abort()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2395
      start: 2395
    functionDepth: 0
    functionLinenumber: 2395
    functionLinenumberEnd: 2395
    functionName: zmq::monitor_t::on_monitor_stopped
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_monitor_stopped()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2397
      start: 2397
    functionDepth: 0
    functionLinenumber: 2397
    functionLinenumberEnd: 2397
    functionName: zmq::monitor_t::on_monitor_started
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_monitor_started()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2402
      start: 2398
    functionDepth: 0
    functionLinenumber: 2398
    functionLinenumberEnd: 2402
    functionName: zmq::monitor_t::on_event_connected
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_connected(const zmq_event_t &event_, const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2408
      start: 2403
    functionDepth: 0
    functionLinenumber: 2403
    functionLinenumberEnd: 2408
    functionName: zmq::monitor_t::on_event_connect_delayed
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void on_event_connect_delayed(const zmq_event_t &event_,\n                                          const
      char *addr_)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2414
      start: 2409
    functionDepth: 0
    functionLinenumber: 2409
    functionLinenumberEnd: 2414
    functionName: zmq::monitor_t::on_event_connect_retried
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void on_event_connect_retried(const zmq_event_t &event_,\n                                          const
      char *addr_)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2419
      start: 2415
    functionDepth: 0
    functionLinenumber: 2415
    functionLinenumberEnd: 2419
    functionName: zmq::monitor_t::on_event_listening
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_listening(const zmq_event_t &event_, const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2424
      start: 2420
    functionDepth: 0
    functionLinenumber: 2420
    functionLinenumberEnd: 2424
    functionName: zmq::monitor_t::on_event_bind_failed
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_bind_failed(const zmq_event_t &event_, const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2429
      start: 2425
    functionDepth: 0
    functionLinenumber: 2425
    functionLinenumberEnd: 2429
    functionName: zmq::monitor_t::on_event_accepted
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_accepted(const zmq_event_t &event_, const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2434
      start: 2430
    functionDepth: 0
    functionLinenumber: 2430
    functionLinenumberEnd: 2434
    functionName: zmq::monitor_t::on_event_accept_failed
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_accept_failed(const zmq_event_t &event_, const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2439
      start: 2435
    functionDepth: 0
    functionLinenumber: 2435
    functionLinenumberEnd: 2439
    functionName: zmq::monitor_t::on_event_closed
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_closed(const zmq_event_t &event_, const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2444
      start: 2440
    functionDepth: 0
    functionLinenumber: 2440
    functionLinenumberEnd: 2444
    functionName: zmq::monitor_t::on_event_close_failed
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_close_failed(const zmq_event_t &event_, const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2449
      start: 2445
    functionDepth: 0
    functionLinenumber: 2445
    functionLinenumberEnd: 2449
    functionName: zmq::monitor_t::on_event_disconnected
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_disconnected(const zmq_event_t &event_, const char *addr_)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2456
      start: 2451
    functionDepth: 0
    functionLinenumber: 2451
    functionLinenumberEnd: 2456
    functionName: zmq::monitor_t::on_event_handshake_failed_no_detail
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void on_event_handshake_failed_no_detail(const zmq_event_t &event_,\n
      \                                                    const char *addr_)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2462
      start: 2457
    functionDepth: 0
    functionLinenumber: 2457
    functionLinenumberEnd: 2462
    functionName: zmq::monitor_t::on_event_handshake_failed_protocol
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void on_event_handshake_failed_protocol(const zmq_event_t &event_,\n
      \                                                   const char *addr_)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2468
      start: 2463
    functionDepth: 0
    functionLinenumber: 2463
    functionLinenumberEnd: 2468
    functionName: zmq::monitor_t::on_event_handshake_failed_auth
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void on_event_handshake_failed_auth(const zmq_event_t &event_,\n                                                const
      char *addr_)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2474
      start: 2469
    functionDepth: 0
    functionLinenumber: 2469
    functionLinenumberEnd: 2474
    functionName: zmq::monitor_t::on_event_handshake_succeeded
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void on_event_handshake_succeeded(const zmq_event_t &event_,\n                                              const
      char *addr_)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2481
      start: 2476
    functionDepth: 0
    functionLinenumber: 2476
    functionLinenumberEnd: 2481
    functionName: zmq::monitor_t::on_event_handshake_failed
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void on_event_handshake_failed(const zmq_event_t &event_,\n                                           const
      char *addr_)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2487
      start: 2482
    functionDepth: 0
    functionLinenumber: 2482
    functionLinenumberEnd: 2487
    functionName: zmq::monitor_t::on_event_handshake_succeed
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: "void on_event_handshake_succeed(const zmq_event_t &event_,\n                                            const
      char *addr_)"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - event_
    - addr_
    argTypes:
    - zmq_event_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2493
      start: 2489
    functionDepth: 0
    functionLinenumber: 2489
    functionLinenumberEnd: 2493
    functionName: zmq::monitor_t::on_event_unknown
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void on_event_unknown(const zmq_event_t &event_, const char *addr_)
  - BBCount: 22
    BranchProfiles: []
    Callsites:
    - Dst: zmq_msg_recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2501,1
    - Dst: zmq::message_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2501,1
    - Dst: handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2501,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2502,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2504,1
    - Dst: static_cast<const char *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2511,1
    - Dst: zmq::message_t::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2511,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2513,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2515,1
    - Dst: static_cast<zmq_event_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2518,1
    - Dst: zmq::message_t::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2518,1
    - Dst: zmq_msg_recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2523,1
    - Dst: zmq::message_t::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2523,1
    - Dst: handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2523,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2524,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2528,1
    - Dst: zmq::message_t::to_string
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2529,1
    - Dst: zmq::monitor_t::on_monitor_stopped
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2537,1
    - Dst: zmq::monitor_t::on_event_connected
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2545,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2545,1
    - Dst: zmq::monitor_t::on_event_connect_delayed
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2548,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2548,1
    - Dst: zmq::monitor_t::on_event_connect_retried
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2551,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2551,1
    - Dst: zmq::monitor_t::on_event_listening
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2554,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2554,1
    - Dst: zmq::monitor_t::on_event_bind_failed
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2557,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2557,1
    - Dst: zmq::monitor_t::on_event_accepted
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2560,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2560,1
    - Dst: zmq::monitor_t::on_event_accept_failed
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2563,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2563,1
    - Dst: zmq::monitor_t::on_event_closed
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2566,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2566,1
    - Dst: zmq::monitor_t::on_event_close_failed
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2569,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2569,1
    - Dst: zmq::monitor_t::on_event_disconnected
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2572,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2572,1
    - Dst: ZMQ_MAKE_VERSION
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2574,1
    - Dst: ZMQ_MAKE_VERSION
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2574,1
    - Dst: zmq::monitor_t::on_event_handshake_failed_no_detail
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2576,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2576,1
    - Dst: zmq::monitor_t::on_event_handshake_failed_protocol
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2579,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2579,1
    - Dst: zmq::monitor_t::on_event_handshake_failed_auth
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2582,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2582,1
    - Dst: zmq::monitor_t::on_event_handshake_succeeded
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2585,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2585,1
    - Dst: ZMQ_MAKE_VERSION
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2587,1
    - Dst: zmq::monitor_t::on_event_handshake_failed
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2589,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2589,1
    - Dst: zmq::monitor_t::on_event_handshake_succeed
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2592,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2592,1
    - Dst: zmq::monitor_t::on_event_unknown
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2596,1
    - Dst: std::string::c_str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2596,1
    CyclomaticComplexity: 27
    EdgeCount: 27
    ICount: 73
    argCount: 1
    argNames:
    - events
    argTypes:
    - short
    assertStmts:
    - condition: (rc != -1)
      pos:
        line_end: 2527
        line_start: 2527
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - condition: (rc != -1)
      pos:
        line_end: 2503
        line_start: 2503
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    constantsTouched: []
    func_position:
      end: 2601
      start: 2496
    functionDepth: 4
    functionLinenumber: 2496
    functionLinenumberEnd: 2601
    functionName: zmq::monitor_t::process_event
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 2
    functionsReached:
    - zmq::monitor_t::on_event_bind_failed
    - memcpy
    - zmq::monitor_t::on_event_unknown
    - static_cast<const char *>
    - zmq::monitor_t::on_event_disconnected
    - zmq::monitor_t::on_event_listening
    - zmq::monitor_t::on_event_handshake_failed_protocol
    - zmq::monitor_t::on_event_connected
    - zmq::monitor_t::on_event_connect_delayed
    - zmq_msg_recv
    - std::string::c_str
    - zmq::monitor_t::on_event_connect_retried
    - assert
    - zmq::monitor_t::on_event_accepted
    - zmq::message_t::to_string
    - zmq::monitor_t::on_monitor_stopped
    - zmq::message_t::data
    - zmq::monitor_t::on_event_closed
    - ZMQ_MAKE_VERSION
    - handle
    - zmq::monitor_t::on_event_handshake_failed_auth
    - zmq_errno
    - zmq::monitor_t::on_event_close_failed
    - zmq::monitor_t::on_event_accept_failed
    - zmq::monitor_t::on_event_handshake_succeed
    - static_cast<zmq_event_t *>
    - zmq::monitor_t::on_event_handshake_succeeded
    - zmq::monitor_t::on_event_handshake_failed
    - zmq::message_t::handle
    - zmq::monitor_t::on_event_handshake_failed_no_detail
    linkageType: ''
    returnType: bool
    signature: bool process_event(short events)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2603
      start: 2603
    functionDepth: 0
    functionLinenumber: 2603
    functionLinenumberEnd: 2603
    functionName: zmq::monitor_t::monitor_socket
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: socket_ref
    signature: socket_ref monitor_socket()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_socket_monitor
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2615,1
    - Dst: handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2615,1
    - Dst: close
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2616,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2617
      start: 2612
    functionDepth: 0
    functionLinenumber: 2612
    functionLinenumberEnd: 2617
    functionName: zmq::monitor_t::ZMQ_NOTHROW
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - close
    - handle
    - zmq_socket_monitor
    linkageType: ''
    returnType: void
    signature: void ZMQ_NOTHROW
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::enum_bit_or
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2634,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - event_flags
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2635
      start: 2632
    functionDepth: 1
    functionLinenumber: 2632
    functionLinenumberEnd: 2635
    functionName: operator|(event_flags a, event_flags b) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - detail::enum_bit_or
    linkageType: ''
    returnType: event_flags
    signature: event_flags operator|(event_flags a, event_flags b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::enum_bit_and
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2638,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - event_flags
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2639
      start: 2636
    functionDepth: 1
    functionLinenumber: 2636
    functionLinenumberEnd: 2639
    functionName: operator&(event_flags a, event_flags b) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - detail::enum_bit_and
    linkageType: ''
    returnType: event_flags
    signature: event_flags operator&(event_flags a, event_flags b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::enum_bit_xor
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2642,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - a
    - b
    argTypes:
    - event_flags
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2643
      start: 2640
    functionDepth: 1
    functionLinenumber: 2640
    functionLinenumberEnd: 2643
    functionName: operator^(event_flags a, event_flags b) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - detail::enum_bit_xor
    linkageType: ''
    returnType: event_flags
    signature: event_flags operator^(event_flags a, event_flags b) noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::enum_bit_not
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2646,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - a
    argTypes:
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2647
      start: 2644
    functionDepth: 1
    functionLinenumber: 2644
    functionLinenumberEnd: 2647
    functionName: operator~(event_flags a) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - detail::enum_bit_not
    linkageType: ''
    returnType: event_flags
    signature: event_flags operator~(event_flags a) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_new
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2665,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2668,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2669
      start: 2665
    functionDepth: 0
    functionLinenumber: 2665
    functionLinenumberEnd: 2669
    functionName: zmq::poller_t::poller_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_poller_new
    - error_t
    linkageType: ''
    returnType: void
    signature: void poller_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::poller_t::add_impl
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2677,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - socket
    - events
    - user_data
    argTypes:
    - zmq::socket_ref
    - event_flags
    - T*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2678
      start: 2675
    functionDepth: 1
    functionLinenumber: 2675
    functionLinenumberEnd: 2678
    functionName: zmq::poller_t::add
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::poller_t::add_impl
    linkageType: ''
    returnType: void
    signature: void add(zmq::socket_ref socket, event_flags events, T *user_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::poller_t::add_impl
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2682,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - socket
    - events
    argTypes:
    - zmq::socket_ref
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2683
      start: 2680
    functionDepth: 1
    functionLinenumber: 2680
    functionLinenumberEnd: 2683
    functionName: zmq::poller_t::add
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::poller_t::add_impl
    linkageType: ''
    returnType: void
    signature: void add(zmq::socket_ref socket, event_flags events)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::poller_t::add_impl
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2691,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - fd
    - events
    - user_data
    argTypes:
    - fd_t
    - event_flags
    - T*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2692
      start: 2689
    functionDepth: 1
    functionLinenumber: 2689
    functionLinenumberEnd: 2692
    functionName: zmq::poller_t::add
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::poller_t::add_impl
    linkageType: ''
    returnType: void
    signature: void add(fd_t fd, event_flags events, T *user_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::poller_t::add_impl
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2694,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - fd
    - events
    argTypes:
    - fd_t
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2694
      start: 2694
    functionDepth: 1
    functionLinenumber: 2694
    functionLinenumberEnd: 2694
    functionName: zmq::poller_t::add
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::poller_t::add_impl
    linkageType: ''
    returnType: void
    signature: void add(fd_t fd, event_flags events)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_remove
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2698,1
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2698,1
    - Dst: zmq::socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2698,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2699,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - socket
    argTypes:
    - zmq::socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2701
      start: 2696
    functionDepth: 0
    functionLinenumber: 2696
    functionLinenumberEnd: 2701
    functionName: zmq::poller_t::remove
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_poller_remove
    - zmq::socket_ref::handle
    - get
    - error_t
    linkageType: ''
    returnType: void
    signature: void remove(zmq::socket_ref socket)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_remove_fd
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2705,1
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2705,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2706,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - fd
    argTypes:
    - fd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2708
      start: 2703
    functionDepth: 0
    functionLinenumber: 2703
    functionLinenumberEnd: 2708
    functionName: zmq::poller_t::remove
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - get
    - zmq_poller_remove_fd
    - error_t
    linkageType: ''
    returnType: void
    signature: void remove(fd_t fd)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_modify
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2713,1
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2713,1
    - Dst: zmq::socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2713,1
    - Dst: static_cast<short>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2714,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2715,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - socket
    - events
    argTypes:
    - zmq::socket_ref
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2717
      start: 2710
    functionDepth: 0
    functionLinenumber: 2710
    functionLinenumberEnd: 2717
    functionName: zmq::poller_t::modify
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - get
    - zmq_poller_modify
    - error_t
    - static_cast<short>
    - zmq::socket_ref::handle
    linkageType: ''
    returnType: void
    signature: void modify(zmq::socket_ref socket, event_flags events)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_modify_fd
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2722,1
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2722,1
    - Dst: static_cast<short>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2723,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2724,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 2
    argNames:
    - fd
    - events
    argTypes:
    - fd_t
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2726
      start: 2719
    functionDepth: 0
    functionLinenumber: 2719
    functionLinenumberEnd: 2726
    functionName: zmq::poller_t::modify
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - get
    - static_cast<short>
    - zmq_poller_modify_fd
    - error_t
    linkageType: ''
    returnType: void
    signature: void modify(fd_t fd, event_flags events)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_wait_all
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2734,1
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2735,1
    - Dst: reinterpret_cast<zmq_poller_event_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2736,1
    - Dst: Sequence::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2736,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2737,1
    - Dst: Sequence::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2737,1
    - Dst: static_cast<long>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2738,1
    - Dst: std::chrono::milliseconds::count
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2738,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2740,1
    - Dst: ZMQ_MAKE_VERSION
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2742,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2743,1
    - Dst: zmq_errno
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2745,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2749,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 8
    argCount: 2
    argNames:
    - poller_events
    - timeout
    argTypes:
    - Sequence
    - std::chrono::milliseconds
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2750
      start: 2729
    functionDepth: 2
    functionLinenumber: 2729
    functionLinenumberEnd: 2750
    functionName: zmq::poller_t::wait_all
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - get
    - ZMQ_MAKE_VERSION
    - std::chrono::milliseconds::count
    - error_t
    - Sequence::data
    - Sequence::size
    - zmq_errno
    - reinterpret_cast<zmq_poller_event_t *>
    - static_cast<long>
    - static_cast<size_t>
    - static_cast<int>
    - zmq_poller_wait_all
    linkageType: ''
    returnType: size_t
    signature: "size_t wait_all(Sequence &poller_events,\n                    const
      std::chrono::milliseconds timeout)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2755,1
    - Dst: const_cast<void *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2755,1
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2755,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2756,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2757,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2758
      start: 2753
    functionDepth: 1
    functionLinenumber: 2753
    functionLinenumberEnd: 2758
    functionName: zmq::poller_t::size
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - get
    - const_cast<void *>
    - ZMQ_ASSERT
    - zmq_poller_size
    - static_cast<size_t>
    linkageType: ''
    returnType: size_t
    signature: size_t size() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_destroy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2766,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2767,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ptr
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2768
      start: 2764
    functionDepth: 1
    functionLinenumber: 2764
    functionLinenumberEnd: 2768
    functionName: operator()(void *ptr) noexcept
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - ZMQ_ASSERT
    - zmq_poller_destroy
    linkageType: ''
    returnType: void
    signature: void operator()(void *ptr) noexcept
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_add
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2776,1
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2776,1
    - Dst: zmq::socket_ref::handle
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2776,1
    - Dst: static_cast<short>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2777,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2778,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - socket
    - events
    - user_data
    argTypes:
    - zmq::socket_ref
    - event_flags
    - T*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2780
      start: 2773
    functionDepth: 0
    functionLinenumber: 2773
    functionLinenumberEnd: 2780
    functionName: zmq::poller_t::add_impl
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 8
    functionsReached:
    - get
    - error_t
    - static_cast<short>
    - zmq_poller_add
    - zmq::socket_ref::handle
    linkageType: ''
    returnType: void
    signature: void add_impl(zmq::socket_ref socket, event_flags events, T *user_data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_poller_add_fd
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2785,1
    - Dst: get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2785,1
    - Dst: static_cast<short>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2786,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2787,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - fd
    - events
    - user_data
    argTypes:
    - fd_t
    - event_flags
    - T*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2789
      start: 2782
    functionDepth: 0
    functionLinenumber: 2782
    functionLinenumberEnd: 2789
    functionName: zmq::poller_t::add_impl
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 8
    functionsReached:
    - get
    - static_cast<short>
    - error_t
    - zmq_poller_add_fd
    linkageType: ''
    returnType: void
    signature: void add_impl(fd_t fd, event_flags events, T *user_data)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: message_t::str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2795,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - os
    - msg
    argTypes:
    - std::ostream
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2796
      start: 2793
    functionDepth: 0
    functionLinenumber: 2793
    functionLinenumberEnd: 2796
    functionName: '&operator<<(std::ostream &os, const message_t &msg)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - message_t::str
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream &operator<<(std::ostream &os, const message_t &msg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_timers_new
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2812,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2815,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2816
      start: 2812
    functionDepth: 0
    functionLinenumber: 2812
    functionLinenumberEnd: 2816
    functionName: zmq::timers::timers
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_timers_new
    - error_t
    linkageType: ''
    returnType: void
    signature: void timers()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - other
    argTypes:
    - timers
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2818
      start: 2818
    functionDepth: 0
    functionLinenumber: 2818
    functionLinenumberEnd: 2818
    functionName: zmq::timers::timers
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void timers(const timers &other)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 1
    argNames:
    - other
    argTypes:
    - timers
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2819
      start: 2819
    functionDepth: 0
    functionLinenumber: 2819
    functionLinenumberEnd: 2819
    functionName: '&operator=(const timers &other)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: timers
    signature: timers &operator=(const timers &other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq_timers_destroy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2823,1
    - Dst: ZMQ_ASSERT
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2824,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2825
      start: 2821
    functionDepth: 1
    functionLinenumber: 2821
    functionLinenumberEnd: 2825
    functionName: ~timers()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - ZMQ_ASSERT
    - zmq_timers_destroy
    linkageType: ''
    returnType: void
    signature: void ~timers()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_timers_add
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2829,1
    - Dst: std::chrono::milliseconds::count
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2829,1
    - Dst: zmq::error_t::error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2831,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 3
    argNames:
    - interval
    - handler
    - arg
    argTypes:
    - std::chrono::milliseconds
    - zmq_timer_fn
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2833
      start: 2827
    functionDepth: 2
    functionLinenumber: 2827
    functionLinenumberEnd: 2833
    functionName: zmq::timers::add
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::error_t::error_t
    - std::chrono::milliseconds::count
    - zmq_timers_add
    linkageType: ''
    returnType: id_t
    signature: id_t add(std::chrono::milliseconds interval, zmq_timer_fn handler,
      void *arg)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_timers_cancel
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2837,1
    - Dst: zmq::error_t::error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2839,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - timer_id
    argTypes:
    - id_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2840
      start: 2835
    functionDepth: 1
    functionLinenumber: 2835
    functionLinenumberEnd: 2840
    functionName: zmq::timers::cancel
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::error_t::error_t
    - zmq_timers_cancel
    linkageType: ''
    returnType: void
    signature: void cancel(id_t timer_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_timers_set_interval
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2844,1
    - Dst: std::chrono::milliseconds::count
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2844,1
    - Dst: zmq::error_t::error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2846,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 2
    argNames:
    - timer_id
    - interval
    argTypes:
    - id_t
    - std::chrono::milliseconds
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2847
      start: 2842
    functionDepth: 2
    functionLinenumber: 2842
    functionLinenumberEnd: 2847
    functionName: zmq::timers::set_interval
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq::error_t::error_t
    - std::chrono::milliseconds::count
    - zmq_timers_set_interval
    linkageType: ''
    returnType: void
    signature: void set_interval(id_t timer_id, std::chrono::milliseconds interval)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_timers_reset
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2851,1
    - Dst: zmq::error_t::error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2853,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - timer_id
    argTypes:
    - id_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2854
      start: 2849
    functionDepth: 1
    functionLinenumber: 2849
    functionLinenumberEnd: 2854
    functionName: zmq::timers::reset
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_timers_reset
    - zmq::error_t::error_t
    linkageType: ''
    returnType: void
    signature: void reset(id_t timer_id)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_timers_timeout
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2858,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2862
      start: 2856
    functionDepth: 0
    functionLinenumber: 2856
    functionLinenumberEnd: 2862
    functionName: zmq::timers::timeout
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_timers_timeout
    linkageType: ''
    returnType: timeout_result_t
    signature: timeout_result_t timeout() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq_timers_execute
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2866,1
    - Dst: zmq::error_t::error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp:2868,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2869
      start: 2864
    functionDepth: 1
    functionLinenumber: 2864
    functionLinenumberEnd: 2869
    functionName: zmq::timers::execute
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    functionUses: 0
    functionsReached:
    - zmq_timers_execute
    - zmq::error_t::error_t
    linkageType: ''
    returnType: void
    signature: void execute()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: zmq::poller_ref_t::poller_ref_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void poller_ref_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' socket'
    argTypes:
    - zmq::socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 54
    functionName: zmq::poller_ref_t::poller_ref_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void poller_ref_t(const zmq::socket_ref& socket)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - fd
    argTypes:
    - zmq::fd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: zmq::poller_ref_t::poller_ref_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void poller_ref_t(zmq::fd_t fd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::poller_ref_t::hash_combine
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:62,1
    - Dst: std::get<0>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:62,1
    - Dst: zmq::poller_ref_t::hash_combine
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:63,1
    - Dst: std::get<1>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:63,1
    - Dst: zmq::poller_ref_t::hash_combine
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:64,1
    - Dst: std::get<2>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 66
    functionName: zmq::poller_ref_t::hash
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::get<2>
    - zmq::poller_ref_t::hash_combine
    - std::get<0>
    - std::get<1>
    linkageType: ''
    returnType: size_t
    signature: size_t hash() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - poller_ref_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: operator == (const poller_ref_t& o) const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator == (const poller_ref_t& o) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hasher
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' seed'
    - ' v'
    argTypes:
    - std::size_t
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 79
    functionName: zmq::poller_ref_t::hash_combine
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - hasher
    linkageType: ''
    returnType: void
    signature: void hash_combine(std::size_t& seed, const T& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 50
    functionDepth: 0
    functionLinenumber: 50
    functionLinenumberEnd: 51
    functionName: zmq::poller_ref_t::poller_ref_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void poller_ref_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' socket'
    argTypes:
    - zmq::socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 54
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 54
    functionName: zmq::poller_ref_t::poller_ref_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void poller_ref_t(const zmq::socket_ref& socket)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - fd
    argTypes:
    - zmq::fd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 56
    functionDepth: 0
    functionLinenumber: 56
    functionLinenumberEnd: 57
    functionName: zmq::poller_ref_t::poller_ref_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void poller_ref_t(zmq::fd_t fd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::poller_ref_t::hash_combine
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:62,1
    - Dst: std::get<0>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:62,1
    - Dst: zmq::poller_ref_t::hash_combine
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:63,1
    - Dst: std::get<1>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:63,1
    - Dst: zmq::poller_ref_t::hash_combine
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:64,1
    - Dst: std::get<2>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:64,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 66
      start: 59
    functionDepth: 1
    functionLinenumber: 59
    functionLinenumberEnd: 66
    functionName: zmq::poller_ref_t::hash
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::get<2>
    - zmq::poller_ref_t::hash_combine
    - std::get<0>
    - std::get<1>
    linkageType: ''
    returnType: size_t
    signature: size_t hash() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' o'
    argTypes:
    - poller_ref_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 71
      start: 68
    functionDepth: 0
    functionLinenumber: 68
    functionLinenumberEnd: 71
    functionName: operator == (const poller_ref_t& o) const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator == (const poller_ref_t& o) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hasher
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:78,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - ' seed'
    - ' v'
    argTypes:
    - std::size_t
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 79
      start: 75
    functionDepth: 0
    functionLinenumber: 75
    functionLinenumberEnd: 79
    functionName: zmq::poller_ref_t::hash_combine
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - hasher
    linkageType: ''
    returnType: void
    signature: void hash_combine(std::size_t& seed, const T& v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: hash
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:92,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' ref'
    argTypes:
    - zmq::poller_ref_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 90
    functionDepth: 2
    functionLinenumber: 90
    functionLinenumberEnd: 93
    functionName: operator()(const zmq::poller_ref_t& ref) const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - hash
    linkageType: ''
    returnType: size_t
    signature: size_t operator()(const zmq::poller_ref_t& ref) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:112,1
    - Dst: socket_ref::recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:115,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:117,1
    - Dst: message_t::more
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:121,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:122,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 4
    argNames:
    - s
    - out
    - n
    - flags
    argTypes:
    - socket_ref
    - OutputIt
    - size_t
    - recv_flags
    assertStmts:
    - condition: (msg_count == 0)
      pos:
        line_end: 116
        line_start: 116
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    constantsTouched: []
    func_position:
      end: 127
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 127
    functionName: zmq::detail::recv_multipart_n
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - message_t::more
    - assert
    - socket_ref::recv
    - std::runtime_error
    linkageType: ''
    returnType: recv_result_t
    signature: recv_result_t recv_multipart_n(socket_ref s, OutputIt out, size_t n,
      recv_flags flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:112,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: zmq::detail::ZMQ_CONSTEXPR_IF
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void ZMQ_CONSTEXPR_IF (CheckN)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<const uint8_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: zmq::detail::is_little_endian
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - reinterpret_cast<const uint8_t *>
    linkageType: ''
    returnType: bool
    signature: bool is_little_endian()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::is_little_endian
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:137,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:139,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:140,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:141,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:142,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - buf
    - value
    argTypes:
    - unsigned char*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 146
    functionName: zmq::detail::write_network_order
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::memcpy
    - static_cast<unsigned char>
    - zmq::detail::is_little_endian
    linkageType: ''
    returnType: void
    signature: void write_network_order(unsigned char *buf, const uint32_t value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::is_little_endian
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:150,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:151,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:152,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:153,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:154,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:157,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - buf
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 160
    functionName: zmq::detail::read_u32_network_order
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - static_cast<uint32_t>
    - std::memcpy
    - zmq::detail::is_little_endian
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t read_u32_network_order(const unsigned char *buf)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:112,1
    - Dst: socket_ref::recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:115,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:117,1
    - Dst: message_t::more
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:121,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:122,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 4
    argNames:
    - s
    - out
    - n
    - flags
    argTypes:
    - socket_ref
    - OutputIt
    - size_t
    - recv_flags
    assertStmts:
    - condition: (msg_count == 0)
      pos:
        line_end: 116
        line_start: 116
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    constantsTouched: []
    func_position:
      end: 127
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 127
    functionName: zmq::detail::recv_multipart_n
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - message_t::more
    - assert
    - socket_ref::recv
    - std::runtime_error
    linkageType: ''
    returnType: recv_result_t
    signature: recv_result_t recv_multipart_n(socket_ref s, OutputIt out, size_t n,
      recv_flags flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:112,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: zmq::detail::ZMQ_CONSTEXPR_IF
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void ZMQ_CONSTEXPR_IF (CheckN)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<const uint8_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: zmq::detail::is_little_endian
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - reinterpret_cast<const uint8_t *>
    linkageType: ''
    returnType: bool
    signature: bool is_little_endian()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::is_little_endian
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:137,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:139,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:140,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:141,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:142,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - buf
    - value
    argTypes:
    - unsigned char*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 146
    functionName: zmq::detail::write_network_order
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::memcpy
    - static_cast<unsigned char>
    - zmq::detail::is_little_endian
    linkageType: ''
    returnType: void
    signature: void write_network_order(unsigned char *buf, const uint32_t value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::is_little_endian
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:150,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:151,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:152,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:153,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:154,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:157,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - buf
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 160
    functionName: zmq::detail::read_u32_network_order
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - static_cast<uint32_t>
    - std::memcpy
    - zmq::detail::is_little_endian
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t read_u32_network_order(const unsigned char *buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::recv_multipart_n<false>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:180,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - out
    argTypes:
    - socket_ref
    - OutputIt
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 181
    functionName: zmq::recv_result_t::recv_multipart
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - detail::recv_multipart_n<false>
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: "ZMQ_NODISCARD recv_result_t recv_multipart(socket_ref s,\n                                           OutputIt
      out,\n                                           recv_flags flags = recv_flags::none)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::recv_multipart_n<true>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:203,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - s
    - out
    - n
    argTypes:
    - socket_ref
    - OutputIt
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 204
    functionName: zmq::recv_result_t::recv_multipart_n
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - detail::recv_multipart_n<true>
    - std::move
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: "ZMQ_NODISCARD recv_result_t recv_multipart_n(socket_ref s,\n                                             OutputIt
      out,\n                                             size_t n,\n                                             recv_flags
      flags = recv_flags::none)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:232,1
    - Dst: end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:233,1
    - Dst: std::next
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:236,1
    - Dst: socket_ref::send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:239,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:241,1
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:241,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - s
    - msgs
    argTypes:
    - socket_ref
    - Range
    assertStmts:
    - condition: (it == begin(msgs))
      pos:
        line_end: 240
        line_start: 240
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    constantsTouched: []
    func_position:
      end: 248
      start: 227
    functionDepth: 3
    functionLinenumber: 227
    functionLinenumberEnd: 248
    functionName: zmq::send_multipart
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - socket_ref::send
    - begin
    - assert
    - std::next
    - end
    linkageType: ''
    returnType: send_result_t
    signature: send_result_t send_multipart(socket_ref s, Range &&msgs, send_flags
      flags = send_flags::none)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:284,1
    - Dst: std::range_error
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:287,1
    - Dst: message_t::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:295,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:297,1
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:297,1
    - Dst: static_cast<const unsigned char *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:299,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:299,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:303,1
    - Dst: zmq::detail::write_network_order
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:307,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:310,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:314,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:314,1
    - Dst: message_t::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:314,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - parts
    argTypes:
    - Range
    assertStmts:
    - condition: (static_cast<size_t>(buf - encoded.data<unsigned char>()) == mmsg_size)
      pos:
        line_end: 313
        line_start: 313
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    constantsTouched: []
    func_position:
      end: 316
      start: 278
    functionDepth: 2
    functionLinenumber: 278
    functionLinenumberEnd: 316
    functionName: zmq::encode
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - zmq::detail::write_network_order
    - zmq::data
    - message_t::data
    - assert
    - zmq::size
    - std::range_error
    - std::memcpy
    - static_cast<unsigned char>
    - static_cast<uint32_t>
    - static_cast<const unsigned char *>
    - static_cast<size_t>
    linkageType: ''
    returnType: message_t
    signature: message_t encode(const Range &parts)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: message_t::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:335,1
    - Dst: message_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:336,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:341,1
    - Dst: std::out_of_range
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:342,1
    - Dst: zmq::detail::read_u32_network_order
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:345,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:350,1
    - Dst: std::out_of_range
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:351,1
    - Dst: zmq::message_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:353,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:358,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - encoded
    - out
    argTypes:
    - message_t
    - OutputIt
    assertStmts:
    - condition: (source == limit)
      pos:
        line_end: 357
        line_start: 357
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    constantsTouched: []
    func_position:
      end: 360
      start: 333
    functionDepth: 2
    functionLinenumber: 333
    functionLinenumberEnd: 360
    functionName: zmq::decode
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::out_of_range
    - message_t::data
    - zmq::message_t
    - assert
    - zmq::detail::read_u32_network_order
    - static_cast<size_t>
    - message_t::size
    linkageType: ''
    returnType: OutputIt
    signature: OutputIt decode(const message_t &encoded, OutputIt out)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 389
    functionDepth: 0
    functionLinenumber: 389
    functionLinenumberEnd: 389
    functionName: zmq::multipart_t::multipart_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void multipart_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - socket
    argTypes:
    - socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 392
    functionDepth: 1
    functionLinenumber: 392
    functionLinenumberEnd: 392
    functionName: zmq::multipart_t::multipart_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached:
    - zmq::multipart_t::recv
    linkageType: ''
    returnType: void
    signature: void multipart_t(socket_ref socket)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::addmem
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:395,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - src
    - size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 395
    functionDepth: 1
    functionLinenumber: 395
    functionLinenumberEnd: 395
    functionName: zmq::multipart_t::multipart_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached:
    - zmq::multipart_t::addmem
    linkageType: ''
    returnType: void
    signature: void multipart_t(const void *src, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - string
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 398
    functionDepth: 1
    functionLinenumber: 398
    functionLinenumberEnd: 398
    functionName: zmq::multipart_t::multipart_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached:
    - zmq::multipart_t::addstr
    linkageType: ''
    returnType: void
    signature: void multipart_t(const std::string &string)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::add
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:401,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:401,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - message
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 401
    functionDepth: 0
    functionLinenumber: 401
    functionLinenumberEnd: 401
    functionName: zmq::multipart_t::multipart_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached:
    - zmq::multipart_t::add
    - std::move
    linkageType: ''
    returnType: void
    signature: void multipart_t(message_t &&message)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:404,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - other
    argTypes:
    - multipart_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 404
    functionDepth: 0
    functionLinenumber: 404
    functionLinenumberEnd: 404
    functionName: zmq::multipart_t::multipart_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void multipart_t(multipart_t &&other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:409,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - other
    argTypes:
    - multipart_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 407
    functionDepth: 1
    functionLinenumber: 407
    functionLinenumberEnd: 411
    functionName: '&operator=(multipart_t &&other)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - zmq::move
    linkageType: ''
    returnType: multipart_t
    signature: multipart_t &operator=(multipart_t &&other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:414,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 414
    functionDepth: 2
    functionLinenumber: 414
    functionLinenumberEnd: 414
    functionName: ~multipart_t()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - clear
    linkageType: ''
    returnType: void
    signature: void ~multipart_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 416
    functionName: '&operator[](size_t n)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: message_t
    signature: message_t &operator[](size_t n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 418
    functionDepth: 0
    functionLinenumber: 418
    functionLinenumberEnd: 418
    functionName: '&operator[](size_t n) const'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: message_t
    signature: message_t &operator[](size_t n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 420
    functionDepth: 2
    functionLinenumber: 420
    functionLinenumberEnd: 420
    functionName: '&at(size_t n)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: message_t
    signature: message_t &at(size_t n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:422,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 422
    functionDepth: 2
    functionLinenumber: 422
    functionLinenumberEnd: 422
    functionName: '&at(size_t n) const'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: message_t
    signature: message_t &at(size_t n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:424,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 424
    functionDepth: 0
    functionLinenumber: 424
    functionLinenumberEnd: 424
    functionName: zmq::multipart_t::begin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - zmq::multipart_t::begin
    linkageType: ''
    returnType: iterator
    signature: iterator begin()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:426,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 426
    functionDepth: 0
    functionLinenumber: 426
    functionLinenumberEnd: 426
    functionName: zmq::multipart_t::begin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - zmq::multipart_t::begin
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator begin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::cbegin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 428
    functionDepth: 0
    functionLinenumber: 428
    functionLinenumberEnd: 428
    functionName: zmq::multipart_t::cbegin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - zmq::multipart_t::cbegin
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator cbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::rbegin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 430
    functionDepth: 0
    functionLinenumber: 430
    functionLinenumberEnd: 430
    functionName: zmq::multipart_t::rbegin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - zmq::multipart_t::rbegin
    linkageType: ''
    returnType: reverse_iterator
    signature: reverse_iterator rbegin()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::rbegin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:432,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 432
    functionDepth: 0
    functionLinenumber: 432
    functionLinenumberEnd: 432
    functionName: zmq::multipart_t::rbegin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - zmq::multipart_t::rbegin
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:434,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 434
    functionDepth: 0
    functionLinenumber: 434
    functionLinenumberEnd: 434
    functionName: zmq::multipart_t::end
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - zmq::multipart_t::end
    linkageType: ''
    returnType: iterator
    signature: iterator end()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:436,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 436
    functionDepth: 0
    functionLinenumber: 436
    functionLinenumberEnd: 436
    functionName: zmq::multipart_t::end
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - zmq::multipart_t::end
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator end() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::cend
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 438
    functionDepth: 0
    functionLinenumber: 438
    functionLinenumberEnd: 438
    functionName: zmq::multipart_t::cend
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - zmq::multipart_t::cend
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator cend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::rend
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:440,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 440
    functionDepth: 0
    functionLinenumber: 440
    functionLinenumberEnd: 440
    functionName: zmq::multipart_t::rend
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - zmq::multipart_t::rend
    linkageType: ''
    returnType: reverse_iterator
    signature: reverse_iterator rend()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::rend
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 442
    functionDepth: 0
    functionLinenumber: 442
    functionLinenumberEnd: 442
    functionName: zmq::multipart_t::rend
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - zmq::multipart_t::rend
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::clear
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 445
    functionDepth: 0
    functionLinenumber: 445
    functionLinenumberEnd: 445
    functionName: zmq::multipart_t::clear
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - zmq::multipart_t::clear
    linkageType: ''
    returnType: void
    signature: void clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 448
    functionDepth: 0
    functionLinenumber: 448
    functionLinenumberEnd: 448
    functionName: zmq::multipart_t::size
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 3
    functionsReached:
    - zmq::multipart_t::size
    linkageType: ''
    returnType: size_t
    signature: size_t size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::empty
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 451
    functionDepth: 0
    functionLinenumber: 451
    functionLinenumberEnd: 451
    functionName: zmq::multipart_t::empty
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - zmq::multipart_t::empty
    linkageType: ''
    returnType: bool
    signature: bool empty() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::clear
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:456,1
    - Dst: socket_ref::recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:461,1
    - Dst: static_cast<recv_flags>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:461,1
    - Dst: socket_ref::recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:464,1
    - Dst: message_t::more
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:467,1
    - Dst: zmq::multipart_t::add
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:468,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:468,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - socket
    argTypes:
    - socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 454
    functionDepth: 0
    functionLinenumber: 454
    functionLinenumberEnd: 471
    functionName: zmq::multipart_t::recv
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 5
    functionsReached:
    - zmq::multipart_t::add
    - message_t::more
    - std::move
    - socket_ref::recv
    - zmq::multipart_t::clear
    - static_cast<recv_flags>
    linkageType: ''
    returnType: bool
    signature: bool recv(socket_ref socket, int flags = 0)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:477,1
    - Dst: zmq::multipart_t::pop
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:479,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:480,1
    - Dst: socket_ref::send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:482,1
    - Dst: static_cast<send_flags>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:482,1
    - Dst: socket_ref::send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:486,1
    - Dst: zmq::multipart_t::clear
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:490,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - socket
    argTypes:
    - socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 474
    functionDepth: 1
    functionLinenumber: 474
    functionLinenumberEnd: 492
    functionName: zmq::multipart_t::send
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached:
    - socket_ref::send
    - zmq::multipart_t::pop
    - zmq::multipart_t::size
    - zmq::multipart_t::clear
    - static_cast<send_flags>
    linkageType: ''
    returnType: bool
    signature: bool send(socket_ref socket, int flags = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: multipart_t::empty
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:497,1
    - Dst: zmq::multipart_t::push
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:498,1
    - Dst: multipart_t::remove
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:498,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - other
    argTypes:
    - multipart_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 495
    functionDepth: 2
    functionLinenumber: 495
    functionLinenumberEnd: 499
    functionName: zmq::multipart_t::prepend
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - zmq::multipart_t::push
    - multipart_t::empty
    - multipart_t::remove
    linkageType: ''
    returnType: void
    signature: void prepend(multipart_t &&other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: multipart_t::empty
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:504,1
    - Dst: zmq::multipart_t::add
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:505,1
    - Dst: multipart_t::pop
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:505,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - other
    argTypes:
    - multipart_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 502
    functionDepth: 2
    functionLinenumber: 502
    functionLinenumberEnd: 506
    functionName: zmq::multipart_t::append
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - zmq::multipart_t::add
    - multipart_t::empty
    - multipart_t::pop
    linkageType: ''
    returnType: void
    signature: void append(multipart_t &&other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:511,1
    - Dst: message_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:511,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - src
    - size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 509
    functionDepth: 0
    functionLinenumber: 509
    functionLinenumberEnd: 512
    functionName: zmq::multipart_t::pushmem
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - push_front
    - message_t
    linkageType: ''
    returnType: void
    signature: void pushmem(const void *src, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::push_back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:517,1
    - Dst: message_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:517,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - src
    - size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 515
    functionDepth: 0
    functionLinenumber: 515
    functionLinenumberEnd: 518
    functionName: zmq::multipart_t::addmem
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 3
    functionsReached:
    - zmq::multipart_t::push_back
    - message_t
    linkageType: ''
    returnType: void
    signature: void addmem(const void *src, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:523,1
    - Dst: message_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:523,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:523,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:523,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - string
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 521
    functionDepth: 1
    functionLinenumber: 521
    functionLinenumberEnd: 524
    functionName: zmq::multipart_t::pushstr
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::string::data
    - push_front
    - std::string::size
    - message_t
    linkageType: ''
    returnType: void
    signature: void pushstr(const std::string &string)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::push_back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:529,1
    - Dst: message_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:529,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:529,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - string
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 527
    functionDepth: 1
    functionLinenumber: 527
    functionLinenumberEnd: 530
    functionName: zmq::multipart_t::addstr
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 7
    functionsReached:
    - std::string::data
    - zmq::multipart_t::push_back
    - std::string::size
    - message_t
    linkageType: ''
    returnType: void
    signature: void addstr(const std::string &string)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:537,1
    - Dst: message_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:537,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 533
    functionDepth: 0
    functionLinenumber: 533
    functionLinenumberEnd: 538
    functionName: zmq::multipart_t::pushtyp
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - push_front
    - message_t
    linkageType: ''
    returnType: void
    signature: void pushtyp(const T &type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::push_back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:545,1
    - Dst: message_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:545,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 541
    functionDepth: 0
    functionLinenumber: 541
    functionLinenumberEnd: 546
    functionName: zmq::multipart_t::addtyp
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - zmq::multipart_t::push_back
    - message_t
    linkageType: ''
    returnType: void
    signature: void addtyp(const T &type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:549,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:549,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - message
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 549
    functionDepth: 0
    functionLinenumber: 549
    functionLinenumberEnd: 549
    functionName: zmq::multipart_t::push
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - push_front
    - std::move
    linkageType: ''
    returnType: void
    signature: void push(message_t &&message)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::push_back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:552,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:552,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - message
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 552
    functionName: zmq::multipart_t::add
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 3
    functionsReached:
    - zmq::multipart_t::push_back
    - std::move
    linkageType: ''
    returnType: void
    signature: void add(message_t &&message)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::push_back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:555,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:555,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - message
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 555
    functionDepth: 0
    functionLinenumber: 555
    functionLinenumberEnd: 555
    functionName: zmq::multipart_t::push_back
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 5
    functionsReached:
    - zmq::multipart_t::push_back
    - std::move
    linkageType: ''
    returnType: void
    signature: void push_back(message_t &&message)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:560,1
    - Dst: front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:560,1
    - Dst: pop_front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:561,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 558
    functionDepth: 2
    functionLinenumber: 558
    functionLinenumberEnd: 563
    functionName: zmq::multipart_t::popstr
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - pop_front
    - front
    linkageType: ''
    returnType: std::string
    signature: std::string popstr()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:570,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:571,1
    - Dst: front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:573,1
    - Dst: pop_front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:574,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 566
    functionDepth: 2
    functionLinenumber: 566
    functionLinenumberEnd: 576
    functionName: zmq::multipart_t::poptyp
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - pop_front
    - front
    - std::runtime_error
    linkageType: ''
    returnType: T
    signature: T poptyp()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:581,1
    - Dst: front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:581,1
    - Dst: pop_front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:582,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 579
    functionDepth: 2
    functionLinenumber: 579
    functionLinenumberEnd: 584
    functionName: zmq::multipart_t::pop
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - pop_front
    - std::move
    - front
    linkageType: ''
    returnType: message_t
    signature: message_t pop()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:589,1
    - Dst: back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:589,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:590,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 587
    functionDepth: 5
    functionLinenumber: 587
    functionLinenumberEnd: 592
    functionName: zmq::multipart_t::remove
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - pop_back
    - back
    - std::move
    linkageType: ''
    returnType: message_t
    signature: message_t remove()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:595,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 595
    functionDepth: 2
    functionLinenumber: 595
    functionLinenumberEnd: 595
    functionName: '&front()'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - front
    linkageType: ''
    returnType: message_t
    signature: message_t &front()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 598
    functionDepth: 5
    functionLinenumber: 598
    functionLinenumberEnd: 598
    functionName: '&back()'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: message_t
    signature: message_t &back()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 601
    functionDepth: 0
    functionLinenumber: 601
    functionLinenumberEnd: 601
    functionName: zmq::multipart_t::peek
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: message_t
    signature: message_t *peek(size_t index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:606,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:606,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 604
    functionDepth: 1
    functionLinenumber: 604
    functionLinenumberEnd: 608
    functionName: zmq::multipart_t::peekstr
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - data
    - zmq::multipart_t::size
    linkageType: ''
    returnType: std::string
    signature: std::string peekstr(size_t index) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:615,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:616,1
    - Dst: data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:618,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - index
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 611
    functionDepth: 1
    functionLinenumber: 611
    functionLinenumberEnd: 620
    functionName: zmq::multipart_t::peektyp
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - data
    - std::runtime_error
    - zmq::multipart_t::size
    linkageType: ''
    returnType: T
    signature: T peektyp(size_t index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: multipart_t::addtyp
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:626,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 623
    functionDepth: 0
    functionLinenumber: 623
    functionLinenumberEnd: 628
    functionName: zmq::multipart_t::create
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - multipart_t::addtyp
    linkageType: ''
    returnType: multipart_t
    signature: multipart_t create(const T &type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:634,1
    - Dst: multipart_t::addmem
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:635,1
    - Dst: data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:635,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:635,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 631
    functionDepth: 1
    functionLinenumber: 631
    functionLinenumberEnd: 637
    functionName: zmq::multipart_t::clone
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - data
    - multipart_t::addmem
    - zmq::multipart_t::size
    linkageType: ''
    returnType: multipart_t
    signature: multipart_t clone() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:643,1
    - Dst: data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:644,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:645,1
    - Dst: std::setw
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:655,1
    - Dst: std::setfill
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:655,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:663,1
    - Dst: std::setw
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:665,1
    - Dst: std::setfill
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:665,1
    - Dst: static_cast<short>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:666,1
    - Dst: std::stringstream::str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:669,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 640
    functionDepth: 1
    functionLinenumber: 640
    functionLinenumberEnd: 670
    functionName: zmq::multipart_t::str
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::setfill
    - static_cast<char>
    - std::setw
    - zmq::multipart_t::size
    - static_cast<short>
    - data
    - std::stringstream::str
    linkageType: ''
    returnType: std::string
    signature: std::string str() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - other
    argTypes:
    - multipart_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 673
    functionDepth: 0
    functionLinenumber: 673
    functionLinenumberEnd: 676
    functionName: zmq::multipart_t::equal
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool equal(const multipart_t *other) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:680,1
    - Dst: multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:680,1
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:682,1
    - Dst: at
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:683,1
    - Dst: multipart_t::at
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:683,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - other
    argTypes:
    - multipart_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 678
    functionDepth: 2
    functionLinenumber: 678
    functionLinenumberEnd: 686
    functionName: operator==(const multipart_t &other) const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - multipart_t::size
    - at
    - multipart_t::at
    - zmq::size
    linkageType: ''
    returnType: bool
    signature: bool operator==(const multipart_t &other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - other
    argTypes:
    - multipart_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 688
    functionDepth: 0
    functionLinenumber: 688
    functionLinenumberEnd: 691
    functionName: operator!=(const multipart_t &other) const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const multipart_t &other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::encode
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:696,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 696
    functionDepth: 3
    functionLinenumber: 696
    functionLinenumberEnd: 696
    functionName: zmq::multipart_t::encode
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - zmq::encode
    linkageType: ''
    returnType: message_t
    signature: message_t encode() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::decode
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:701,1
    - Dst: std::back_inserter
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:701,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - encoded
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 699
    functionDepth: 0
    functionLinenumber: 699
    functionLinenumberEnd: 702
    functionName: zmq::multipart_t::decode_append
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::back_inserter
    - zmq::decode
    linkageType: ''
    returnType: void
    signature: void decode_append(const message_t &encoded)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::decode
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:708,1
    - Dst: std::back_inserter
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:708,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - encoded
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 710
      start: 705
    functionDepth: 0
    functionLinenumber: 705
    functionLinenumberEnd: 710
    functionName: zmq::multipart_t::decode
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::back_inserter
    - zmq::decode
    linkageType: ''
    returnType: multipart_t
    signature: multipart_t decode(const message_t &encoded)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: multipart_t::str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:722,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - os
    - msg
    argTypes:
    - std::ostream
    - multipart_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 720
    functionDepth: 0
    functionLinenumber: 720
    functionLinenumberEnd: 723
    functionName: '&operator<<(std::ostream &os, const multipart_t &msg)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - multipart_t::str
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream &operator<<(std::ostream &os, const multipart_t &msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 731
    functionDepth: 0
    functionLinenumber: 731
    functionLinenumberEnd: 731
    functionName: zmq::active_poller_t::active_poller_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void active_poller_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 732
      start: 732
    functionDepth: 0
    functionLinenumber: 732
    functionLinenumberEnd: 732
    functionName: ~active_poller_t()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~active_poller_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 734
    functionDepth: 0
    functionLinenumber: 734
    functionLinenumberEnd: 734
    functionName: zmq::active_poller_t::active_poller_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void active_poller_t(const active_poller_t &)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 735
    functionDepth: 0
    functionLinenumber: 735
    functionLinenumberEnd: 735
    functionName: '&operator=(const active_poller_t &)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: active_poller_t
    signature: active_poller_t &operator=(const active_poller_t &)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - src
    argTypes:
    - active_poller_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 737
      start: 737
    functionDepth: 0
    functionLinenumber: 737
    functionLinenumberEnd: 737
    functionName: zmq::active_poller_t::active_poller_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void active_poller_t(active_poller_t &&src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - src
    argTypes:
    - active_poller_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 738
    functionDepth: 0
    functionLinenumber: 738
    functionLinenumberEnd: 738
    functionName: '&operator=(active_poller_t &&src)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: active_poller_t
    signature: active_poller_t &operator=(active_poller_t &&src)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::invalid_argument
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:747,1
    - Dst: emplace
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:748,1
    - Dst: std::make_shared<handler_type>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:749,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:749,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:751,1
    - Dst: zmq::active_poller_t::add
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:753,1
    - Dst: auto::first::second::get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:753,1
    - Dst: erase
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:758,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 3
    argNames:
    - socket
    - events
    - handler
    argTypes:
    - zmq::socket_ref
    - event_flags
    - handler_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 742
    functionDepth: 6
    functionLinenumber: 742
    functionLinenumberEnd: 761
    functionName: zmq::active_poller_t::add
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - std::move
    - error_t
    - std::make_shared<handler_type>
    - auto::first::second::get
    - erase
    - zmq::active_poller_t::add
    - std::invalid_argument
    - emplace
    linkageType: ''
    returnType: void
    signature: void add(zmq::socket_ref socket, event_flags events, handler_type handler)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::invalid_argument
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:768,1
    - Dst: emplace
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:769,1
    - Dst: std::make_shared<handler_type>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:770,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:770,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:772,1
    - Dst: zmq::active_poller_t::add
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:774,1
    - Dst: auto::first::second::get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:774,1
    - Dst: erase
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:779,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 3
    argNames:
    - fd
    - events
    - handler
    argTypes:
    - fd_t
    - event_flags
    - handler_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 763
    functionDepth: 6
    functionLinenumber: 763
    functionLinenumberEnd: 782
    functionName: zmq::active_poller_t::add
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - std::move
    - error_t
    - std::make_shared<handler_type>
    - auto::first::second::get
    - erase
    - zmq::active_poller_t::add
    - std::invalid_argument
    - emplace
    linkageType: ''
    returnType: void
    signature: void add(fd_t fd, event_flags events, handler_type handler)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::active_poller_t::remove
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:786,1
    - Dst: erase
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:787,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - socket
    argTypes:
    - zmq::socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 789
      start: 784
    functionDepth: 6
    functionLinenumber: 784
    functionLinenumberEnd: 789
    functionName: zmq::active_poller_t::remove
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - erase
    - zmq::active_poller_t::remove
    linkageType: ''
    returnType: void
    signature: void remove(zmq::socket_ref socket)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::active_poller_t::remove
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:793,1
    - Dst: erase
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:794,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - fd
    argTypes:
    - fd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 796
      start: 791
    functionDepth: 6
    functionLinenumber: 791
    functionLinenumberEnd: 796
    functionName: zmq::active_poller_t::remove
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - erase
    - zmq::active_poller_t::remove
    linkageType: ''
    returnType: void
    signature: void remove(fd_t fd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::active_poller_t::modify
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:800,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - socket
    - events
    argTypes:
    - zmq::socket_ref
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 801
      start: 798
    functionDepth: 1
    functionLinenumber: 798
    functionLinenumberEnd: 801
    functionName: zmq::active_poller_t::modify
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - zmq::active_poller_t::modify
    linkageType: ''
    returnType: void
    signature: void modify(zmq::socket_ref socket, event_flags events)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::active_poller_t::modify
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:805,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - fd
    - events
    argTypes:
    - fd_t
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 803
    functionDepth: 1
    functionLinenumber: 803
    functionLinenumberEnd: 806
    functionName: zmq::active_poller_t::modify
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - zmq::active_poller_t::modify
    linkageType: ''
    returnType: void
    signature: void modify(fd_t fd, event_flags events)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:811,1
    - Dst: zmq::active_poller_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:811,1
    - Dst: clear
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:812,1
    - Dst: reserve
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:813,1
    - Dst: zmq::active_poller_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:813,1
    - Dst: push_back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:815,1
    - Dst: wait_all
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:819,1
    - Dst: std::for_each
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:820,1
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:820,1
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:821,1
    - Dst: static_cast<ptrdiff_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:821,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:823,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - timeout
    argTypes:
    - std::chrono::milliseconds
    assertStmts:
    - condition: (event.user_data != nullptr)
      pos:
        line_end: 822
        line_start: 822
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    constantsTouched: []
    func_position:
      end: 827
      start: 808
    functionDepth: 2
    functionLinenumber: 808
    functionLinenumberEnd: 827
    functionName: zmq::active_poller_t::wait
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - begin
    - static_cast<ptrdiff_t>
    - reserve
    - assert
    - push_back
    - resize
    - wait_all
    - std::for_each
    - clear
    - zmq::active_poller_t::size
    linkageType: ''
    returnType: size_t
    signature: size_t wait(std::chrono::milliseconds timeout)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::active_poller_t::empty
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:829,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 829
      start: 829
    functionDepth: 0
    functionLinenumber: 829
    functionLinenumberEnd: 829
    functionName: zmq::active_poller_t::empty
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - zmq::active_poller_t::empty
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD empty() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::active_poller_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:831,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 831
      start: 831
    functionDepth: 0
    functionLinenumber: 831
    functionLinenumberEnd: 831
    functionName: zmq::active_poller_t::size
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - zmq::active_poller_t::size
    linkageType: ''
    returnType: size_t
    signature: size_t size() const noexcept
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:112,1
    - Dst: socket_ref::recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:115,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:117,1
    - Dst: message_t::more
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:121,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:122,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 4
    argNames:
    - s
    - out
    - n
    - flags
    argTypes:
    - socket_ref
    - OutputIt
    - size_t
    - recv_flags
    assertStmts:
    - condition: (msg_count == 0)
      pos:
        line_end: 116
        line_start: 116
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    constantsTouched: []
    func_position:
      end: 127
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 127
    functionName: zmq::detail::recv_multipart_n
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - message_t::more
    - assert
    - socket_ref::recv
    - std::runtime_error
    linkageType: ''
    returnType: recv_result_t
    signature: recv_result_t recv_multipart_n(socket_ref s, OutputIt out, size_t n,
      recv_flags flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:112,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: zmq::detail::ZMQ_CONSTEXPR_IF
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void ZMQ_CONSTEXPR_IF (CheckN)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<const uint8_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: zmq::detail::is_little_endian
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 4
    functionsReached:
    - reinterpret_cast<const uint8_t *>
    linkageType: ''
    returnType: bool
    signature: bool is_little_endian()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::is_little_endian
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:137,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:139,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:140,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:141,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:142,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - buf
    - value
    argTypes:
    - unsigned char*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 146
    functionName: zmq::detail::write_network_order
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - std::memcpy
    - static_cast<unsigned char>
    - zmq::detail::is_little_endian
    linkageType: ''
    returnType: void
    signature: void write_network_order(unsigned char *buf, const uint32_t value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::is_little_endian
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:150,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:151,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:152,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:153,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:154,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:157,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - buf
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 160
    functionName: zmq::detail::read_u32_network_order
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - static_cast<uint32_t>
    - std::memcpy
    - zmq::detail::is_little_endian
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t read_u32_network_order(const unsigned char *buf)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:112,1
    - Dst: socket_ref::recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:115,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:117,1
    - Dst: message_t::more
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:121,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:122,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 15
    argCount: 4
    argNames:
    - s
    - out
    - n
    - flags
    argTypes:
    - socket_ref
    - OutputIt
    - size_t
    - recv_flags
    assertStmts:
    - condition: (msg_count == 0)
      pos:
        line_end: 116
        line_start: 116
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    constantsTouched: []
    func_position:
      end: 127
      start: 104
    functionDepth: 0
    functionLinenumber: 104
    functionLinenumberEnd: 127
    functionName: zmq::detail::recv_multipart_n
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - message_t::more
    - assert
    - socket_ref::recv
    - std::runtime_error
    linkageType: ''
    returnType: recv_result_t
    signature: recv_result_t recv_multipart_n(socket_ref s, OutputIt out, size_t n,
      recv_flags flags)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:112,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 114
      start: 110
    functionDepth: 0
    functionLinenumber: 110
    functionLinenumberEnd: 114
    functionName: zmq::detail::ZMQ_CONSTEXPR_IF
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::runtime_error
    linkageType: ''
    returnType: void
    signature: void ZMQ_CONSTEXPR_IF (CheckN)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: reinterpret_cast<const uint8_t *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:132,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 133
      start: 129
    functionDepth: 0
    functionLinenumber: 129
    functionLinenumberEnd: 133
    functionName: zmq::detail::is_little_endian
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached:
    - reinterpret_cast<const uint8_t *>
    linkageType: ''
    returnType: bool
    signature: bool is_little_endian()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::is_little_endian
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:137,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:139,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:140,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:141,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:142,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:144,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 2
    argNames:
    - buf
    - value
    argTypes:
    - unsigned char*
    - uint32_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 135
    functionDepth: 1
    functionLinenumber: 135
    functionLinenumberEnd: 146
    functionName: zmq::detail::write_network_order
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - std::memcpy
    - static_cast<unsigned char>
    - zmq::detail::is_little_endian
    linkageType: ''
    returnType: void
    signature: void write_network_order(unsigned char *buf, const uint32_t value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq::detail::is_little_endian
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:150,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:151,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:152,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:153,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:154,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:157,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - buf
    argTypes:
    - unsigned char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 160
      start: 148
    functionDepth: 1
    functionLinenumber: 148
    functionLinenumberEnd: 160
    functionName: zmq::detail::read_u32_network_order
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - static_cast<uint32_t>
    - std::memcpy
    - zmq::detail::is_little_endian
    linkageType: ''
    returnType: uint32_t
    signature: uint32_t read_u32_network_order(const unsigned char *buf)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::recv_multipart_n<false>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:180,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:180,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - s
    - out
    argTypes:
    - socket_ref
    - OutputIt
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 181
      start: 176
    functionDepth: 0
    functionLinenumber: 176
    functionLinenumberEnd: 181
    functionName: zmq::recv_result_t::recv_multipart
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::move
    - detail::recv_multipart_n<false>
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: "ZMQ_NODISCARD recv_result_t recv_multipart(socket_ref s,\n                                           OutputIt
      out,\n                                           recv_flags flags = recv_flags::none)"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: detail::recv_multipart_n<true>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:203,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - s
    - out
    - n
    argTypes:
    - socket_ref
    - OutputIt
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 198
    functionDepth: 0
    functionLinenumber: 198
    functionLinenumberEnd: 204
    functionName: zmq::recv_result_t::recv_multipart_n
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - detail::recv_multipart_n<true>
    - std::move
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: "ZMQ_NODISCARD recv_result_t recv_multipart_n(socket_ref s,\n                                             OutputIt
      out,\n                                             size_t n,\n                                             recv_flags
      flags = recv_flags::none)"
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:232,1
    - Dst: end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:233,1
    - Dst: std::next
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:236,1
    - Dst: socket_ref::send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:239,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:241,1
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:241,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - s
    - msgs
    argTypes:
    - socket_ref
    - Range
    assertStmts:
    - condition: (it == begin(msgs))
      pos:
        line_end: 240
        line_start: 240
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    constantsTouched: []
    func_position:
      end: 248
      start: 227
    functionDepth: 3
    functionLinenumber: 227
    functionLinenumberEnd: 248
    functionName: zmq::send_multipart
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - socket_ref::send
    - begin
    - assert
    - std::next
    - end
    linkageType: ''
    returnType: send_result_t
    signature: send_result_t send_multipart(socket_ref s, Range &&msgs, send_flags
      flags = send_flags::none)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:284,1
    - Dst: std::range_error
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:287,1
    - Dst: message_t::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:295,1
    - Dst: static_cast<uint32_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:297,1
    - Dst: zmq::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:297,1
    - Dst: static_cast<const unsigned char *>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:299,1
    - Dst: zmq::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:299,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:303,1
    - Dst: zmq::detail::write_network_order
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:307,1
    - Dst: std::memcpy
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:310,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:314,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:314,1
    - Dst: message_t::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:314,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - parts
    argTypes:
    - Range
    assertStmts:
    - condition: (static_cast<size_t>(buf - encoded.data<unsigned char>()) == mmsg_size)
      pos:
        line_end: 313
        line_start: 313
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    constantsTouched: []
    func_position:
      end: 316
      start: 278
    functionDepth: 2
    functionLinenumber: 278
    functionLinenumberEnd: 316
    functionName: zmq::encode
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 1
    functionsReached:
    - zmq::detail::write_network_order
    - zmq::data
    - message_t::data
    - assert
    - zmq::size
    - std::range_error
    - std::memcpy
    - static_cast<unsigned char>
    - static_cast<uint32_t>
    - static_cast<const unsigned char *>
    - static_cast<size_t>
    linkageType: ''
    returnType: message_t
    signature: message_t encode(const Range &parts)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: message_t::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:335,1
    - Dst: message_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:336,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:341,1
    - Dst: std::out_of_range
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:342,1
    - Dst: zmq::detail::read_u32_network_order
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:345,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:350,1
    - Dst: std::out_of_range
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:351,1
    - Dst: zmq::message_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:353,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:358,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 18
    argCount: 2
    argNames:
    - encoded
    - out
    argTypes:
    - message_t
    - OutputIt
    assertStmts:
    - condition: (source == limit)
      pos:
        line_end: 357
        line_start: 357
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    constantsTouched: []
    func_position:
      end: 360
      start: 333
    functionDepth: 2
    functionLinenumber: 333
    functionLinenumberEnd: 360
    functionName: zmq::decode
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - std::out_of_range
    - message_t::data
    - zmq::message_t
    - assert
    - zmq::detail::read_u32_network_order
    - static_cast<size_t>
    - message_t::size
    linkageType: ''
    returnType: OutputIt
    signature: OutputIt decode(const message_t &encoded, OutputIt out)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 389
      start: 389
    functionDepth: 0
    functionLinenumber: 389
    functionLinenumberEnd: 389
    functionName: zmq::multipart_t::multipart_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void multipart_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:392,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - socket
    argTypes:
    - socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 392
      start: 392
    functionDepth: 1
    functionLinenumber: 392
    functionLinenumberEnd: 392
    functionName: zmq::multipart_t::multipart_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached:
    - zmq::multipart_t::recv
    linkageType: ''
    returnType: void
    signature: void multipart_t(socket_ref socket)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::addmem
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:395,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - src
    - size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 395
    functionDepth: 1
    functionLinenumber: 395
    functionLinenumberEnd: 395
    functionName: zmq::multipart_t::multipart_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached:
    - zmq::multipart_t::addmem
    linkageType: ''
    returnType: void
    signature: void multipart_t(const void *src, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::addstr
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:398,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - string
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 398
      start: 398
    functionDepth: 2
    functionLinenumber: 398
    functionLinenumberEnd: 398
    functionName: zmq::multipart_t::multipart_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached:
    - zmq::multipart_t::addstr
    linkageType: ''
    returnType: void
    signature: void multipart_t(const std::string &string)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::add
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:401,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:401,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - message
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 401
      start: 401
    functionDepth: 0
    functionLinenumber: 401
    functionLinenumberEnd: 401
    functionName: zmq::multipart_t::multipart_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached:
    - zmq::multipart_t::add
    - std::move
    linkageType: ''
    returnType: void
    signature: void multipart_t(message_t &&message)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:404,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - other
    argTypes:
    - multipart_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 404
      start: 404
    functionDepth: 0
    functionLinenumber: 404
    functionLinenumberEnd: 404
    functionName: zmq::multipart_t::multipart_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached:
    - std::move
    linkageType: ''
    returnType: void
    signature: void multipart_t(multipart_t &&other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:409,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - other
    argTypes:
    - multipart_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 411
      start: 407
    functionDepth: 0
    functionLinenumber: 407
    functionLinenumberEnd: 411
    functionName: '&operator=(multipart_t &&other)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::move
    linkageType: ''
    returnType: multipart_t
    signature: multipart_t &operator=(multipart_t &&other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: clear
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:414,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 414
    functionDepth: 2
    functionLinenumber: 414
    functionLinenumberEnd: 414
    functionName: ~multipart_t()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - clear
    linkageType: ''
    returnType: void
    signature: void ~multipart_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 416
      start: 416
    functionDepth: 0
    functionLinenumber: 416
    functionLinenumberEnd: 416
    functionName: '&operator[](size_t n)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: message_t
    signature: message_t &operator[](size_t n)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 418
      start: 418
    functionDepth: 0
    functionLinenumber: 418
    functionLinenumberEnd: 418
    functionName: '&operator[](size_t n) const'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: message_t
    signature: message_t &operator[](size_t n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:420,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 420
      start: 420
    functionDepth: 2
    functionLinenumber: 420
    functionLinenumberEnd: 420
    functionName: '&at(size_t n)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: message_t
    signature: message_t &at(size_t n)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: at
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:422,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 422
      start: 422
    functionDepth: 2
    functionLinenumber: 422
    functionLinenumberEnd: 422
    functionName: '&at(size_t n) const'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - at
    linkageType: ''
    returnType: message_t
    signature: message_t &at(size_t n) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:424,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 424
      start: 424
    functionDepth: 0
    functionLinenumber: 424
    functionLinenumberEnd: 424
    functionName: zmq::multipart_t::begin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 3
    functionsReached:
    - zmq::multipart_t::begin
    linkageType: ''
    returnType: iterator
    signature: iterator begin()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:426,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 426
      start: 426
    functionDepth: 0
    functionLinenumber: 426
    functionLinenumberEnd: 426
    functionName: zmq::multipart_t::begin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 4
    functionsReached:
    - zmq::multipart_t::begin
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator begin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::cbegin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:428,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 428
      start: 428
    functionDepth: 0
    functionLinenumber: 428
    functionLinenumberEnd: 428
    functionName: zmq::multipart_t::cbegin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - zmq::multipart_t::cbegin
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator cbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::rbegin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:430,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 430
      start: 430
    functionDepth: 0
    functionLinenumber: 430
    functionLinenumberEnd: 430
    functionName: zmq::multipart_t::rbegin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 3
    functionsReached:
    - zmq::multipart_t::rbegin
    linkageType: ''
    returnType: reverse_iterator
    signature: reverse_iterator rbegin()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::rbegin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:432,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 432
      start: 432
    functionDepth: 0
    functionLinenumber: 432
    functionLinenumberEnd: 432
    functionName: zmq::multipart_t::rbegin
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 4
    functionsReached:
    - zmq::multipart_t::rbegin
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rbegin() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:434,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 434
      start: 434
    functionDepth: 0
    functionLinenumber: 434
    functionLinenumberEnd: 434
    functionName: zmq::multipart_t::end
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 3
    functionsReached:
    - zmq::multipart_t::end
    linkageType: ''
    returnType: iterator
    signature: iterator end()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::end
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:436,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 436
      start: 436
    functionDepth: 0
    functionLinenumber: 436
    functionLinenumberEnd: 436
    functionName: zmq::multipart_t::end
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 4
    functionsReached:
    - zmq::multipart_t::end
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator end() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::cend
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:438,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 438
      start: 438
    functionDepth: 0
    functionLinenumber: 438
    functionLinenumberEnd: 438
    functionName: zmq::multipart_t::cend
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - zmq::multipart_t::cend
    linkageType: ''
    returnType: const_iterator
    signature: const_iterator cend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::rend
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:440,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 440
      start: 440
    functionDepth: 0
    functionLinenumber: 440
    functionLinenumberEnd: 440
    functionName: zmq::multipart_t::rend
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 3
    functionsReached:
    - zmq::multipart_t::rend
    linkageType: ''
    returnType: reverse_iterator
    signature: reverse_iterator rend()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::rend
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 442
      start: 442
    functionDepth: 0
    functionLinenumber: 442
    functionLinenumberEnd: 442
    functionName: zmq::multipart_t::rend
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 4
    functionsReached:
    - zmq::multipart_t::rend
    linkageType: ''
    returnType: const_reverse_iterator
    signature: const_reverse_iterator rend() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::clear
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:445,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 445
      start: 445
    functionDepth: 0
    functionLinenumber: 445
    functionLinenumberEnd: 445
    functionName: zmq::multipart_t::clear
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 4
    functionsReached:
    - zmq::multipart_t::clear
    linkageType: ''
    returnType: void
    signature: void clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:448,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 448
      start: 448
    functionDepth: 0
    functionLinenumber: 448
    functionLinenumberEnd: 448
    functionName: zmq::multipart_t::size
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 9
    functionsReached:
    - zmq::multipart_t::size
    linkageType: ''
    returnType: size_t
    signature: size_t size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::empty
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 451
      start: 451
    functionDepth: 0
    functionLinenumber: 451
    functionLinenumberEnd: 451
    functionName: zmq::multipart_t::empty
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - zmq::multipart_t::empty
    linkageType: ''
    returnType: bool
    signature: bool empty() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::clear
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:456,1
    - Dst: socket_ref::recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:461,1
    - Dst: static_cast<recv_flags>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:461,1
    - Dst: socket_ref::recv
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:464,1
    - Dst: message_t::more
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:467,1
    - Dst: zmq::multipart_t::add
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:468,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:468,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - socket
    argTypes:
    - socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 471
      start: 454
    functionDepth: 0
    functionLinenumber: 454
    functionLinenumberEnd: 471
    functionName: zmq::multipart_t::recv
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached:
    - zmq::multipart_t::add
    - message_t::more
    - std::move
    - socket_ref::recv
    - zmq::multipart_t::clear
    - static_cast<recv_flags>
    linkageType: ''
    returnType: bool
    signature: bool recv(socket_ref socket, int flags = 0)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:477,1
    - Dst: zmq::multipart_t::pop
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:479,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:480,1
    - Dst: socket_ref::send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:482,1
    - Dst: static_cast<send_flags>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:482,1
    - Dst: socket_ref::send
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:486,1
    - Dst: zmq::multipart_t::clear
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:490,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - socket
    argTypes:
    - socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 492
      start: 474
    functionDepth: 3
    functionLinenumber: 474
    functionLinenumberEnd: 492
    functionName: zmq::multipart_t::send
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached:
    - socket_ref::send
    - zmq::multipart_t::pop
    - zmq::multipart_t::size
    - zmq::multipart_t::clear
    - static_cast<send_flags>
    linkageType: ''
    returnType: bool
    signature: bool send(socket_ref socket, int flags = 0)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: multipart_t::empty
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:497,1
    - Dst: zmq::multipart_t::push
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:498,1
    - Dst: multipart_t::remove
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:498,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - other
    argTypes:
    - multipart_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 499
      start: 495
    functionDepth: 2
    functionLinenumber: 495
    functionLinenumberEnd: 499
    functionName: zmq::multipart_t::prepend
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - zmq::multipart_t::push
    - multipart_t::empty
    - multipart_t::remove
    linkageType: ''
    returnType: void
    signature: void prepend(multipart_t &&other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: multipart_t::empty
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:504,1
    - Dst: zmq::multipart_t::add
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:505,1
    - Dst: multipart_t::pop
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:505,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 3
    argCount: 1
    argNames:
    - other
    argTypes:
    - multipart_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 506
      start: 502
    functionDepth: 2
    functionLinenumber: 502
    functionLinenumberEnd: 506
    functionName: zmq::multipart_t::append
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - zmq::multipart_t::add
    - multipart_t::empty
    - multipart_t::pop
    linkageType: ''
    returnType: void
    signature: void append(multipart_t &&other)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:511,1
    - Dst: message_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:511,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - src
    - size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 512
      start: 509
    functionDepth: 0
    functionLinenumber: 509
    functionLinenumberEnd: 512
    functionName: zmq::multipart_t::pushmem
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - push_front
    - message_t
    linkageType: ''
    returnType: void
    signature: void pushmem(const void *src, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::push_back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:517,1
    - Dst: message_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:517,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - src
    - size
    argTypes:
    - void*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 518
      start: 515
    functionDepth: 0
    functionLinenumber: 515
    functionLinenumberEnd: 518
    functionName: zmq::multipart_t::addmem
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 4
    functionsReached:
    - zmq::multipart_t::push_back
    - message_t
    linkageType: ''
    returnType: void
    signature: void addmem(const void *src, size_t size)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:523,1
    - Dst: message_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:523,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:523,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:523,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - string
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 524
      start: 521
    functionDepth: 1
    functionLinenumber: 521
    functionLinenumberEnd: 524
    functionName: zmq::multipart_t::pushstr
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::string::data
    - push_front
    - std::string::size
    - message_t
    linkageType: ''
    returnType: void
    signature: void pushstr(const std::string &string)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::push_back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:529,1
    - Dst: message_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:529,1
    - Dst: std::string::data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:529,1
    - Dst: std::string::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:529,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - string
    argTypes:
    - std::string
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 530
      start: 527
    functionDepth: 1
    functionLinenumber: 527
    functionLinenumberEnd: 530
    functionName: zmq::multipart_t::addstr
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 8
    functionsReached:
    - std::string::data
    - zmq::multipart_t::push_back
    - std::string::size
    - message_t
    linkageType: ''
    returnType: void
    signature: void addstr(const std::string &string)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:537,1
    - Dst: message_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:537,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 538
      start: 533
    functionDepth: 0
    functionLinenumber: 533
    functionLinenumberEnd: 538
    functionName: zmq::multipart_t::pushtyp
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - push_front
    - message_t
    linkageType: ''
    returnType: void
    signature: void pushtyp(const T &type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::push_back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:545,1
    - Dst: message_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:545,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - type
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 546
      start: 541
    functionDepth: 0
    functionLinenumber: 541
    functionLinenumberEnd: 546
    functionName: zmq::multipart_t::addtyp
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - zmq::multipart_t::push_back
    - message_t
    linkageType: ''
    returnType: void
    signature: void addtyp(const T &type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:549,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:549,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - message
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 549
      start: 549
    functionDepth: 0
    functionLinenumber: 549
    functionLinenumberEnd: 549
    functionName: zmq::multipart_t::push
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - push_front
    - std::move
    linkageType: ''
    returnType: void
    signature: void push(message_t &&message)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::push_back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:552,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:552,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - message
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 552
      start: 552
    functionDepth: 0
    functionLinenumber: 552
    functionLinenumberEnd: 552
    functionName: zmq::multipart_t::add
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 6
    functionsReached:
    - zmq::multipart_t::push_back
    - std::move
    linkageType: ''
    returnType: void
    signature: void add(message_t &&message)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::push_back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:555,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:555,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - message
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 555
      start: 555
    functionDepth: 0
    functionLinenumber: 555
    functionLinenumberEnd: 555
    functionName: zmq::multipart_t::push_back
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 10
    functionsReached:
    - zmq::multipart_t::push_back
    - std::move
    linkageType: ''
    returnType: void
    signature: void push_back(message_t &&message)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:560,1
    - Dst: front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:560,1
    - Dst: pop_front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:561,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 563
      start: 558
    functionDepth: 2
    functionLinenumber: 558
    functionLinenumberEnd: 563
    functionName: zmq::multipart_t::popstr
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - pop_front
    - front
    linkageType: ''
    returnType: std::string
    signature: std::string popstr()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:570,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:571,1
    - Dst: front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:573,1
    - Dst: pop_front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:574,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 576
      start: 566
    functionDepth: 2
    functionLinenumber: 566
    functionLinenumberEnd: 576
    functionName: zmq::multipart_t::poptyp
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - pop_front
    - front
    - std::runtime_error
    linkageType: ''
    returnType: T
    signature: T poptyp()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:581,1
    - Dst: front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:581,1
    - Dst: pop_front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:582,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 584
      start: 579
    functionDepth: 2
    functionLinenumber: 579
    functionLinenumberEnd: 584
    functionName: zmq::multipart_t::pop
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - pop_front
    - std::move
    - front
    linkageType: ''
    returnType: message_t
    signature: message_t pop()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:589,1
    - Dst: back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:589,1
    - Dst: pop_back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:590,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 592
      start: 587
    functionDepth: 5
    functionLinenumber: 587
    functionLinenumberEnd: 592
    functionName: zmq::multipart_t::remove
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - pop_back
    - back
    - std::move
    linkageType: ''
    returnType: message_t
    signature: message_t remove()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: front
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:595,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 595
    functionDepth: 2
    functionLinenumber: 595
    functionLinenumberEnd: 595
    functionName: '&front()'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - front
    linkageType: ''
    returnType: message_t
    signature: message_t &front()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:598,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 598
      start: 598
    functionDepth: 5
    functionLinenumber: 598
    functionLinenumberEnd: 598
    functionName: '&back()'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - back
    linkageType: ''
    returnType: message_t
    signature: message_t &back()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 601
    functionDepth: 0
    functionLinenumber: 601
    functionLinenumberEnd: 601
    functionName: zmq::multipart_t::peek
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: message_t
    signature: message_t *peek(size_t index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:606,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:606,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - index
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 608
      start: 604
    functionDepth: 1
    functionLinenumber: 604
    functionLinenumberEnd: 608
    functionName: zmq::multipart_t::peekstr
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - data
    - zmq::multipart_t::size
    linkageType: ''
    returnType: std::string
    signature: std::string peekstr(size_t index) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:615,1
    - Dst: std::runtime_error
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:616,1
    - Dst: data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:618,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - index
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 620
      start: 611
    functionDepth: 1
    functionLinenumber: 611
    functionLinenumberEnd: 620
    functionName: zmq::multipart_t::peektyp
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - data
    - std::runtime_error
    - zmq::multipart_t::size
    linkageType: ''
    returnType: T
    signature: T peektyp(size_t index) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: multipart_t::addtyp
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:626,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - type
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 628
      start: 623
    functionDepth: 0
    functionLinenumber: 623
    functionLinenumberEnd: 628
    functionName: zmq::multipart_t::create
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - multipart_t::addtyp
    linkageType: ''
    returnType: multipart_t
    signature: multipart_t create(const T &type)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:634,1
    - Dst: multipart_t::addmem
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:635,1
    - Dst: data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:635,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:635,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 637
      start: 631
    functionDepth: 1
    functionLinenumber: 631
    functionLinenumberEnd: 637
    functionName: zmq::multipart_t::clone
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - data
    - multipart_t::addmem
    - zmq::multipart_t::size
    linkageType: ''
    returnType: multipart_t
    signature: multipart_t clone() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:643,1
    - Dst: data
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:644,1
    - Dst: zmq::multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:645,1
    - Dst: std::setw
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:655,1
    - Dst: std::setfill
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:655,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:663,1
    - Dst: std::setw
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:665,1
    - Dst: std::setfill
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:665,1
    - Dst: static_cast<short>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:666,1
    - Dst: std::stringstream::str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:669,1
    CyclomaticComplexity: 9
    EdgeCount: 9
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 670
      start: 640
    functionDepth: 1
    functionLinenumber: 640
    functionLinenumberEnd: 670
    functionName: zmq::multipart_t::str
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::setfill
    - static_cast<char>
    - std::setw
    - zmq::multipart_t::size
    - static_cast<short>
    - data
    - std::stringstream::str
    linkageType: ''
    returnType: std::string
    signature: std::string str() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - other
    argTypes:
    - multipart_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 676
      start: 673
    functionDepth: 0
    functionLinenumber: 673
    functionLinenumberEnd: 676
    functionName: zmq::multipart_t::equal
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool equal(const multipart_t *other) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:680,1
    - Dst: multipart_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:680,1
    - Dst: size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:682,1
    - Dst: at
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:683,1
    - Dst: multipart_t::at
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:683,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 1
    argNames:
    - other
    argTypes:
    - multipart_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 686
      start: 678
    functionDepth: 2
    functionLinenumber: 678
    functionLinenumberEnd: 686
    functionName: operator==(const multipart_t &other) const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - multipart_t::size
    - at
    - multipart_t::at
    - size
    linkageType: ''
    returnType: bool
    signature: bool operator==(const multipart_t &other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - other
    argTypes:
    - multipart_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 691
      start: 688
    functionDepth: 0
    functionLinenumber: 688
    functionLinenumberEnd: 691
    functionName: operator!=(const multipart_t &other) const
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool operator!=(const multipart_t &other) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::encode
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:696,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 696
      start: 696
    functionDepth: 3
    functionLinenumber: 696
    functionLinenumberEnd: 696
    functionName: zmq::multipart_t::encode
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - zmq::encode
    linkageType: ''
    returnType: message_t
    signature: message_t encode() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::decode
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:701,1
    - Dst: std::back_inserter
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:701,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - encoded
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 699
    functionDepth: 0
    functionLinenumber: 699
    functionLinenumberEnd: 702
    functionName: zmq::multipart_t::decode_append
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::back_inserter
    - zmq::decode
    linkageType: ''
    returnType: void
    signature: void decode_append(const message_t &encoded)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::decode
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:708,1
    - Dst: std::back_inserter
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:708,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - encoded
    argTypes:
    - message_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 710
      start: 705
    functionDepth: 0
    functionLinenumber: 705
    functionLinenumberEnd: 710
    functionName: zmq::multipart_t::decode
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - std::back_inserter
    - zmq::decode
    linkageType: ''
    returnType: multipart_t
    signature: multipart_t decode(const message_t &encoded)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: multipart_t::str
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:722,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - os
    - msg
    argTypes:
    - std::ostream
    - multipart_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 720
    functionDepth: 0
    functionLinenumber: 720
    functionLinenumberEnd: 723
    functionName: '&operator<<(std::ostream &os, const multipart_t &msg)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - multipart_t::str
    linkageType: ''
    returnType: std::ostream
    signature: std::ostream &operator<<(std::ostream &os, const multipart_t &msg)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 731
      start: 731
    functionDepth: 0
    functionLinenumber: 731
    functionLinenumberEnd: 731
    functionName: zmq::active_poller_t::active_poller_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void active_poller_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 732
      start: 732
    functionDepth: 0
    functionLinenumber: 732
    functionLinenumberEnd: 732
    functionName: ~active_poller_t()
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~active_poller_t()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 734
      start: 734
    functionDepth: 0
    functionLinenumber: 734
    functionLinenumberEnd: 734
    functionName: zmq::active_poller_t::active_poller_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void active_poller_t(const active_poller_t &)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 0
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 735
      start: 735
    functionDepth: 0
    functionLinenumber: 735
    functionLinenumberEnd: 735
    functionName: '&operator=(const active_poller_t &)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: active_poller_t
    signature: active_poller_t &operator=(const active_poller_t &)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - src
    argTypes:
    - active_poller_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 737
      start: 737
    functionDepth: 0
    functionLinenumber: 737
    functionLinenumberEnd: 737
    functionName: zmq::active_poller_t::active_poller_t
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void active_poller_t(active_poller_t &&src)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 0
    argCount: 1
    argNames:
    - src
    argTypes:
    - active_poller_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 738
      start: 738
    functionDepth: 0
    functionLinenumber: 738
    functionLinenumberEnd: 738
    functionName: '&operator=(active_poller_t &&src)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: active_poller_t
    signature: active_poller_t &operator=(active_poller_t &&src)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::invalid_argument
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:747,1
    - Dst: emplace
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:748,1
    - Dst: std::make_shared<handler_type>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:749,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:749,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:751,1
    - Dst: zmq::active_poller_t::add
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:753,1
    - Dst: auto::first::second::get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:753,1
    - Dst: erase
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:758,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 3
    argNames:
    - socket
    - events
    - handler
    argTypes:
    - zmq::socket_ref
    - event_flags
    - handler_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 761
      start: 742
    functionDepth: 6
    functionLinenumber: 742
    functionLinenumberEnd: 761
    functionName: zmq::active_poller_t::add
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 3
    functionsReached:
    - std::move
    - error_t
    - std::make_shared<handler_type>
    - auto::first::second::get
    - erase
    - zmq::active_poller_t::add
    - std::invalid_argument
    - emplace
    linkageType: ''
    returnType: void
    signature: void add(zmq::socket_ref socket, event_flags events, handler_type handler)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: std::invalid_argument
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:768,1
    - Dst: emplace
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:769,1
    - Dst: std::make_shared<handler_type>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:770,1
    - Dst: std::move
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:770,1
    - Dst: error_t
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:772,1
    - Dst: zmq::active_poller_t::add
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:774,1
    - Dst: auto::first::second::get
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:774,1
    - Dst: erase
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:779,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 3
    argNames:
    - fd
    - events
    - handler
    argTypes:
    - fd_t
    - event_flags
    - handler_type
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 782
      start: 763
    functionDepth: 6
    functionLinenumber: 763
    functionLinenumberEnd: 782
    functionName: zmq::active_poller_t::add
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 4
    functionsReached:
    - std::move
    - error_t
    - std::make_shared<handler_type>
    - auto::first::second::get
    - erase
    - zmq::active_poller_t::add
    - std::invalid_argument
    - emplace
    linkageType: ''
    returnType: void
    signature: void add(fd_t fd, event_flags events, handler_type handler)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::active_poller_t::remove
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:786,1
    - Dst: erase
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:787,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - socket
    argTypes:
    - zmq::socket_ref
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 789
      start: 784
    functionDepth: 6
    functionLinenumber: 784
    functionLinenumberEnd: 789
    functionName: zmq::active_poller_t::remove
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 3
    functionsReached:
    - erase
    - zmq::active_poller_t::remove
    linkageType: ''
    returnType: void
    signature: void remove(zmq::socket_ref socket)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::active_poller_t::remove
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:793,1
    - Dst: erase
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:794,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 1
    argNames:
    - fd
    argTypes:
    - fd_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 796
      start: 791
    functionDepth: 6
    functionLinenumber: 791
    functionLinenumberEnd: 796
    functionName: zmq::active_poller_t::remove
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 4
    functionsReached:
    - erase
    - zmq::active_poller_t::remove
    linkageType: ''
    returnType: void
    signature: void remove(fd_t fd)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::active_poller_t::modify
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:800,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - socket
    - events
    argTypes:
    - zmq::socket_ref
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 801
      start: 798
    functionDepth: 1
    functionLinenumber: 798
    functionLinenumberEnd: 801
    functionName: zmq::active_poller_t::modify
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 3
    functionsReached:
    - zmq::active_poller_t::modify
    linkageType: ''
    returnType: void
    signature: void modify(zmq::socket_ref socket, event_flags events)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::active_poller_t::modify
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:805,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - fd
    - events
    argTypes:
    - fd_t
    - event_flags
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 806
      start: 803
    functionDepth: 1
    functionLinenumber: 803
    functionLinenumberEnd: 806
    functionName: zmq::active_poller_t::modify
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 4
    functionsReached:
    - zmq::active_poller_t::modify
    linkageType: ''
    returnType: void
    signature: void modify(fd_t fd, event_flags events)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: resize
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:811,1
    - Dst: zmq::active_poller_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:811,1
    - Dst: clear
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:812,1
    - Dst: reserve
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:813,1
    - Dst: zmq::active_poller_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:813,1
    - Dst: push_back
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:815,1
    - Dst: wait_all
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:819,1
    - Dst: std::for_each
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:820,1
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:820,1
    - Dst: begin
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:821,1
    - Dst: static_cast<ptrdiff_t>
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:821,1
    - Dst: assert
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:823,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - timeout
    argTypes:
    - std::chrono::milliseconds
    assertStmts:
    - condition: (event.user_data != nullptr)
      pos:
        line_end: 822
        line_start: 822
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    constantsTouched: []
    func_position:
      end: 827
      start: 808
    functionDepth: 2
    functionLinenumber: 808
    functionLinenumberEnd: 827
    functionName: zmq::active_poller_t::wait
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 0
    functionsReached:
    - begin
    - static_cast<ptrdiff_t>
    - reserve
    - assert
    - push_back
    - resize
    - wait_all
    - std::for_each
    - clear
    - zmq::active_poller_t::size
    linkageType: ''
    returnType: size_t
    signature: size_t wait(std::chrono::milliseconds timeout)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::active_poller_t::empty
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:829,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 829
      start: 829
    functionDepth: 0
    functionLinenumber: 829
    functionLinenumberEnd: 829
    functionName: zmq::active_poller_t::empty
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 2
    functionsReached:
    - zmq::active_poller_t::empty
    linkageType: ''
    returnType: ZMQ_NODISCARD
    signature: ZMQ_NODISCARD empty() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: zmq::active_poller_t::size
      Src: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp:831,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 831
      start: 831
    functionDepth: 0
    functionLinenumber: 831
    functionLinenumberEnd: 831
    functionName: zmq::active_poller_t::size
    functionSourceFile: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    functionUses: 4
    functionsReached:
    - zmq::active_poller_t::size
    linkageType: ''
    returnType: size_t
    signature: size_t size() const noexcept
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:47,1
    - Dst: vsnprintf_s
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:48,1
    - Dst: va_end
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:49,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 3
    argNames:
    - buffer
    - size
    - format
    argTypes:
    - char*
    - size_t
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 51
      start: 44
    functionDepth: 0
    functionLinenumber: 44
    functionLinenumberEnd: 51
    functionName: TIXML_SNPRINTF
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - va_end
    - va_start
    - vsnprintf_s
    linkageType: ''
    returnType: int
    signature: int TIXML_SNPRINTF( char* buffer, size_t size, const char* format,
      ... )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vsnprintf_s
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:55,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 4
    argNames:
    - buffer
    - size
    - format
    - va
    argTypes:
    - char*
    - size_t
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 57
      start: 53
    functionDepth: 0
    functionLinenumber: 53
    functionLinenumberEnd: 57
    functionName: TIXML_VSNPRINTF
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - vsnprintf_s
    linkageType: ''
    returnType: int
    signature: int TIXML_VSNPRINTF( char* buffer, size_t size, const char* format,
      va_list va )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: char::char
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:76,1
    - Dst: _vsnprintf
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:77,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:80,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:85,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - format
    - va
    argTypes:
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 71
    functionDepth: 1
    functionLinenumber: 71
    functionLinenumberEnd: 87
    functionName: TIXML_VSCPRINTF
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - _vsnprintf
    - char::char
    - TIXMLASSERT
    linkageType: ''
    returnType: int
    signature: int TIXML_VSCPRINTF( const char* format, va_list va )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: vsnprintf
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:96,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:97,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - format
    - va
    argTypes:
    - char*
    - va_list
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 99
      start: 94
    functionDepth: 1
    functionLinenumber: 94
    functionLinenumberEnd: 99
    functionName: TIXML_VSCPRINTF
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    - vsnprintf
    linkageType: ''
    returnType: int
    signature: int TIXML_VSCPRINTF( const char* format, va_list va )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: StrPair::~StrPair()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - Reset
    linkageType: ''
    returnType: void
    signature: void StrPair::~StrPair()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:166,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:167,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:168,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:169,1
    - Dst: StrPair*::Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - other
    argTypes:
    - StrPair*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 180
    functionName: tinyxml2::StrPair::TransferTo
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    - StrPair*::Reset
    linkageType: ''
    returnType: void
    signature: void StrPair::TransferTo( StrPair* other )
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 191
    functionName: tinyxml2::StrPair::Reset
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StrPair::Reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:196,1
    - Dst: tinyxml2::StrPair::Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:197,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:198,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:199,1
    - Dst: char::char
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:200,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - str
    - flags
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 204
    functionName: tinyxml2::StrPair::SetStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - char::char
    - memcpy
    - tinyxml2::StrPair::Reset
    - TIXMLASSERT
    - strlen
    linkageType: ''
    returnType: void
    signature: void StrPair::SetStr( const char* str, int flags )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:209,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:210,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:211,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:215,1
    - Dst: strncmp
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:219,1
    - Dst: Set
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:220,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:226,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 4
    argNames:
    - p
    - endTag
    - strFlags
    - curLineNumPtr
    argTypes:
    - char*
    - char*
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 229
    functionName: tinyxml2::StrPair::ParseText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - strlen
    - TIXMLASSERT
    - Set
    - strncmp
    linkageType: ''
    returnType: char
    signature: char * StrPair::ParseText( char* p, const char* endTag, int strFlags,
      int* curLineNumPtr )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::IsNameStartChar
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:237,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:237,1
    - Dst: tinyxml2::IsNameChar
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:243,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:243,1
    - Dst: Set
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:247,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - p
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 249
    functionName: tinyxml2::StrPair::ParseName
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::IsNameChar
    - tinyxml2::IsNameStartChar
    - Set
    - static_cast<unsigned char>
    linkageType: ''
    returnType: char
    signature: char * StrPair::ParseName( char* p )
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:255,1
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:257,1
    - Dst: tinyxml2::IsWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:264,1
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:265,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 278
    functionName: tinyxml2::StrPair::CollapseWhitespace
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::IsWhiteSpace
    - tinyxml2::SkipWhiteSpace
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void StrPair::CollapseWhitespace()
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:283,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:284,1
    - Dst: const_cast<char*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:327,1
    - Dst: tinyxml2::XMLUtil::GetCharacterRef
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:327,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:334,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:335,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:337,1
    - Dst: strncmp
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:345,1
    - Dst: tinyxml2::StrPair::CollapseWhitespace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:373,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:377,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 69
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 281
    functionDepth: 2
    functionLinenumber: 281
    functionLinenumberEnd: 379
    functionName: tinyxml2::StrPair::GetStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::StrPair::CollapseWhitespace
    - memcpy
    - strncmp
    - TIXMLASSERT
    - tinyxml2::XMLUtil::GetCharacterRef
    - const_cast<char*>
    linkageType: ''
    returnType: char
    signature: char * StrPair::GetStr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - writeTrue
    - writeFalse
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 389
    functionDepth: 0
    functionLinenumber: 389
    functionLinenumberEnd: 396
    functionName: tinyxml2::XMLUtil::SetBoolSerialization
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLUtil::SetBoolSerialization(const char* writeTrue, const char*
      writeFalse)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:401,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:402,1
    - Dst: reinterpret_cast<const unsigned char*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:404,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:412,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - p
    - bom
    argTypes:
    - char*
    - bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 399
    functionDepth: 1
    functionLinenumber: 399
    functionLinenumberEnd: 414
    functionName: tinyxml2::XMLUtil::ReadBOM
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    - reinterpret_cast<const unsigned char*>
    linkageType: ''
    returnType: char
    signature: char * XMLUtil::ReadBOM( const char* p, bool* bom )
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:447,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:452,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:457,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:462,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:465,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 37
    argCount: 3
    argNames:
    - input
    - output
    - length
    argTypes:
    - unsigned long
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 467
    functionName: tinyxml2::XMLUtil::ConvertUTF32ToUTF8
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - static_cast<char>
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void XMLUtil::ConvertUTF32ToUTF8( unsigned long input, char* output,
      int* length )
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:504,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:508,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:528,1
    - Dst: tinyxml2::XMLUtil::ConvertUTF32ToUTF8
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:547,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 51
    argCount: 3
    argNames:
    - p
    - value
    - length
    argTypes:
    - char*
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 470
    functionDepth: 2
    functionLinenumber: 470
    functionLinenumberEnd: 556
    functionName: tinyxml2::XMLUtil::GetCharacterRef
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - TIXMLASSERT
    - strchr
    - tinyxml2::XMLUtil::ConvertUTF32ToUTF8
    linkageType: ''
    returnType: char
    signature: char * XMLUtil::GetCharacterRef(const char* p, char* value, int* length)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:560,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - buffer
    - bufferSize
    argTypes:
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 558
    functionDepth: 1
    functionLinenumber: 558
    functionLinenumberEnd: 561
    functionName: tinyxml2::XMLUtil::ToStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXML_SNPRINTF
    linkageType: ''
    returnType: void
    signature: void XMLUtil::ToStr( int v, char* buffer, int bufferSize )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:566,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - buffer
    - bufferSize
    argTypes:
    - unsigned
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 564
    functionDepth: 1
    functionLinenumber: 564
    functionLinenumberEnd: 567
    functionName: tinyxml2::XMLUtil::ToStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXML_SNPRINTF
    linkageType: ''
    returnType: void
    signature: void XMLUtil::ToStr( unsigned v, char* buffer, int bufferSize )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - buffer
    - bufferSize
    argTypes:
    - bool
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 570
    functionDepth: 1
    functionLinenumber: 570
    functionLinenumberEnd: 573
    functionName: tinyxml2::XMLUtil::ToStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXML_SNPRINTF
    linkageType: ''
    returnType: void
    signature: void XMLUtil::ToStr( bool v, char* buffer, int bufferSize )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:581,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - buffer
    - bufferSize
    argTypes:
    - float
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 579
    functionDepth: 1
    functionLinenumber: 579
    functionLinenumberEnd: 582
    functionName: tinyxml2::XMLUtil::ToStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXML_SNPRINTF
    linkageType: ''
    returnType: void
    signature: void XMLUtil::ToStr( float v, char* buffer, int bufferSize )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - buffer
    - bufferSize
    argTypes:
    - double
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 585
    functionDepth: 1
    functionLinenumber: 585
    functionLinenumberEnd: 588
    functionName: tinyxml2::XMLUtil::ToStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXML_SNPRINTF
    linkageType: ''
    returnType: void
    signature: void XMLUtil::ToStr( double v, char* buffer, int bufferSize )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:594,1
    - Dst: static_cast<long long>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:594,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - buffer
    - bufferSize
    argTypes:
    - int64_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 591
    functionDepth: 1
    functionLinenumber: 591
    functionLinenumberEnd: 595
    functionName: tinyxml2::XMLUtil::ToStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - static_cast<long long>
    - TIXML_SNPRINTF
    linkageType: ''
    returnType: void
    signature: void XMLUtil::ToStr( int64_t v, char* buffer, int bufferSize )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:600,1
    - Dst: static_cast<unsigned long long>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:600,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - buffer
    - bufferSize
    argTypes:
    - uint64_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 597
    functionDepth: 1
    functionLinenumber: 597
    functionLinenumberEnd: 601
    functionName: tinyxml2::XMLUtil::ToStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - static_cast<unsigned long long>
    - TIXML_SNPRINTF
    linkageType: ''
    returnType: void
    signature: void XMLUtil::ToStr( uint64_t v, char* buffer, int bufferSize )
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: IsPrefixHex
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:605,1
    - Dst: TIXML_SSCANF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:607,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:608,1
    - Dst: TIXML_SSCANF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:613,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - str
    - value
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 603
    functionDepth: 0
    functionLinenumber: 603
    functionLinenumberEnd: 618
    functionName: tinyxml2::XMLUtil::ToInt
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - static_cast<int>
    - TIXML_SSCANF
    - IsPrefixHex
    linkageType: ''
    returnType: bool
    signature: bool XMLUtil::ToInt(const char* str, int* value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SSCANF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:622,1
    - Dst: IsPrefixHex
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:622,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - str
    - value
    argTypes:
    - char*
    - unsigned*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 620
    functionDepth: 0
    functionLinenumber: 620
    functionLinenumberEnd: 626
    functionName: tinyxml2::XMLUtil::ToUnsigned
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXML_SSCANF
    - IsPrefixHex
    linkageType: ''
    returnType: bool
    signature: bool XMLUtil::ToUnsigned(const char* str, unsigned* value)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToInt
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:631,1
    - Dst: StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:639,1
    - Dst: StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:645,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - str
    - value
    argTypes:
    - char*
    - bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 628
    functionDepth: 1
    functionLinenumber: 628
    functionLinenumberEnd: 651
    functionName: tinyxml2::XMLUtil::ToBool
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - StringEqual
    - tinyxml2::XMLUtil::ToInt
    linkageType: ''
    returnType: bool
    signature: bool XMLUtil::ToBool( const char* str, bool* value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SSCANF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:656,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - str
    - value
    argTypes:
    - char*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 654
    functionDepth: 0
    functionLinenumber: 654
    functionLinenumberEnd: 660
    functionName: tinyxml2::XMLUtil::ToFloat
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXML_SSCANF
    linkageType: ''
    returnType: bool
    signature: bool XMLUtil::ToFloat( const char* str, float* value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SSCANF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:665,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - str
    - value
    argTypes:
    - char*
    - double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 663
    functionDepth: 0
    functionLinenumber: 663
    functionLinenumberEnd: 669
    functionName: tinyxml2::XMLUtil::ToDouble
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXML_SSCANF
    linkageType: ''
    returnType: bool
    signature: bool XMLUtil::ToDouble( const char* str, double* value )
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: IsPrefixHex
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:674,1
    - Dst: TIXML_SSCANF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:676,1
    - Dst: static_cast<int64_t>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:677,1
    - Dst: TIXML_SSCANF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:683,1
    - Dst: static_cast<int64_t>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:684,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - str
    - value
    argTypes:
    - char*
    - int64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 689
    functionName: tinyxml2::XMLUtil::ToInt64
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - static_cast<int64_t>
    - TIXML_SSCANF
    - IsPrefixHex
    linkageType: ''
    returnType: bool
    signature: bool XMLUtil::ToInt64(const char* str, int64_t* value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SSCANF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:694,1
    - Dst: IsPrefixHex
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:694,1
    - Dst: static_cast<uint64_t>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:695,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - str
    - value
    argTypes:
    - char*
    - uint64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 699
      start: 692
    functionDepth: 0
    functionLinenumber: 692
    functionLinenumberEnd: 699
    functionName: tinyxml2::XMLUtil::ToUnsigned64
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - static_cast<uint64_t>
    - TIXML_SSCANF
    - IsPrefixHex
    linkageType: ''
    returnType: bool
    signature: bool XMLUtil::ToUnsigned64(const char* str, uint64_t* value)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:704,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:705,1
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:708,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:711,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:728,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:729,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:731,1
    - Dst: CreateUnlinkedNode<XMLDeclaration>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:732,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:736,1
    - Dst: CreateUnlinkedNode<XMLComment>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:737,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:741,1
    - Dst: CreateUnlinkedNode<XMLText>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:742,1
    - Dst: XMLText*::SetCData
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:746,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:748,1
    - Dst: CreateUnlinkedNode<XMLUnknown>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:749,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:753,1
    - Dst: WhitespaceMode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:756,1
    - Dst: CreateUnlinkedNode<XMLText>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:757,1
    - Dst: CreateUnlinkedNode<XMLElement>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:763,1
    - Dst: CreateUnlinkedNode<XMLText>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:769,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:775,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:776,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 53
    argCount: 3
    argNames:
    - p
    - node
    - first
    argTypes:
    - char*
    - XMLNode**
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 702
    functionDepth: 1
    functionLinenumber: 702
    functionLinenumberEnd: 779
    functionName: tinyxml2::XMLDocument::Identify
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - WhitespaceMode
    - CreateUnlinkedNode<XMLComment>
    - CreateUnlinkedNode<XMLElement>
    - CreateUnlinkedNode<XMLText>
    - TIXMLASSERT
    - tinyxml2::SkipWhiteSpace
    - XMLText*::SetCData
    - CreateUnlinkedNode<XMLUnknown>
    - tinyxml2::StringEqual
    - CreateUnlinkedNode<XMLDeclaration>
    linkageType: ''
    returnType: char
    signature: char * XMLDocument::Identify( char* p, XMLNode** node, bool first )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:784,1
    - Dst: XMLVisitor*::VisitEnter
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:785,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:786,1
    - Dst: XMLNode*::NextSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:786,1
    - Dst: XMLNode*::Accept
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:787,1
    - Dst: XMLVisitor*::VisitExit
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:792,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - visitor
    argTypes:
    - XMLVisitor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 782
    functionDepth: 1
    functionLinenumber: 782
    functionLinenumberEnd: 793
    functionName: tinyxml2::XMLDocument::Accept
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::NextSibling
    - TIXMLASSERT
    - XMLVisitor*::VisitExit
    - XMLNode*::Accept
    - XMLVisitor*::VisitEnter
    - FirstChild
    linkageType: ''
    returnType: bool
    signature: bool XMLDocument::Accept( XMLVisitor* visitor ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 798
    functionDepth: 0
    functionLinenumber: 798
    functionLinenumberEnd: 808
    functionName: tinyxml2::XMLNode::XMLNode
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLNode::XMLNode( XMLDocument* doc )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteChildren
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:813,1
    - Dst: Unlink
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:815,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 811
    functionDepth: 0
    functionLinenumber: 811
    functionLinenumberEnd: 817
    functionName: XMLNode::~XMLNode()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - DeleteChildren
    - Unlink
    linkageType: ''
    returnType: void
    signature: void XMLNode::~XMLNode()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLNode::FirstChildElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:824,1
    - Dst: XMLElement*::NextSiblingElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:827,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - value
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 821
    functionDepth: 1
    functionLinenumber: 821
    functionLinenumberEnd: 832
    functionName: tinyxml2::XMLNode::ChildElementCount
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLElement*::NextSiblingElement
    - tinyxml2::XMLNode::FirstChildElement
    linkageType: ''
    returnType: int
    signature: int XMLNode::ChildElementCount(const char *value) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLNode::FirstChildElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:837,1
    - Dst: XMLElement*::NextSiblingElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:840,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 845
      start: 834
    functionDepth: 1
    functionLinenumber: 834
    functionLinenumberEnd: 845
    functionName: tinyxml2::XMLNode::ChildElementCount
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLElement*::NextSiblingElement
    - tinyxml2::XMLNode::FirstChildElement
    linkageType: ''
    returnType: int
    signature: int XMLNode::ChildElementCount() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLNode::ToDocument
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:850,1
    - Dst: GetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:852,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 847
    functionDepth: 1
    functionLinenumber: 847
    functionLinenumberEnd: 853
    functionName: tinyxml2::XMLNode::Value
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLNode::ToDocument
    - GetStr
    linkageType: ''
    returnType: char
    signature: char * XMLNode::Value() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SetInternedStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:858,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:861,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - str
    - staticMem
    argTypes:
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 863
      start: 855
    functionDepth: 0
    functionLinenumber: 855
    functionLinenumberEnd: 863
    functionName: tinyxml2::XMLNode::SetValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetInternedStr
    - SetStr
    linkageType: ''
    returnType: void
    signature: void XMLNode::SetValue( const char* str, bool staticMem )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLNode::ShallowClone
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:867,1
    - Dst: tinyxml2::XMLNode::FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:870,1
    - Dst: XMLNode*::NextSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:870,1
    - Dst: XMLNode*::DeepClone
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:871,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:872,1
    - Dst: XMLNode*::InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:873,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - target
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 876
      start: 865
    functionDepth: 1
    functionLinenumber: 865
    functionLinenumberEnd: 876
    functionName: tinyxml2::XMLNode::DeepClone
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::DeepClone
    - tinyxml2::XMLNode::ShallowClone
    - XMLNode*::NextSibling
    - TIXMLASSERT
    - XMLNode*::InsertEndChild
    - tinyxml2::XMLNode::FirstChild
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLNode::DeepClone(XMLDocument* target) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:881,1
    - Dst: tinyxml2::XMLNode::DeleteChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:882,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 885
      start: 878
    functionDepth: 1
    functionLinenumber: 878
    functionLinenumberEnd: 885
    functionName: tinyxml2::XMLNode::DeleteChildren
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLNode::DeleteChild
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void XMLNode::DeleteChildren()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:890,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:891,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:892,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - child
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 888
    functionDepth: 1
    functionLinenumber: 888
    functionLinenumberEnd: 909
    functionName: tinyxml2::XMLNode::Unlink
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void XMLNode::Unlink( XMLNode* child )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:914,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:915,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:916,1
    - Dst: tinyxml2::XMLNode::Unlink
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:917,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:918,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:919,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:920,1
    - Dst: tinyxml2::XMLNode::DeleteNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:921,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 912
    functionDepth: 2
    functionLinenumber: 912
    functionLinenumberEnd: 922
    functionName: tinyxml2::XMLNode::DeleteChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLNode::DeleteNode
    - TIXMLASSERT
    - tinyxml2::XMLNode::Unlink
    linkageType: ''
    returnType: void
    signature: void XMLNode::DeleteChild( XMLNode* node )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:927,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:929,1
    - Dst: tinyxml2::XMLNode::InsertChildPreamble
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:932,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:935,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:936,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:944,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 1
    argNames:
    - addThis
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 952
      start: 925
    functionDepth: 1
    functionLinenumber: 925
    functionLinenumberEnd: 952
    functionName: tinyxml2::XMLNode::InsertEndChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLNode::InsertChildPreamble
    - TIXMLASSERT
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLNode::InsertEndChild( XMLNode* addThis )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:957,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:959,1
    - Dst: tinyxml2::XMLNode::InsertChildPreamble
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:962,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:965,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:966,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:975,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 1
    argNames:
    - addThis
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 955
    functionDepth: 1
    functionLinenumber: 955
    functionLinenumberEnd: 983
    functionName: tinyxml2::XMLNode::InsertFirstChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLNode::InsertChildPreamble
    - TIXMLASSERT
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLNode::InsertFirstChild( XMLNode* addThis )
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:988,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:990,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:994,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:997,1
    - Dst: tinyxml2::XMLNode::InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1010,1
    - Dst: tinyxml2::XMLNode::InsertChildPreamble
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1012,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - afterThis
    - addThis
    argTypes:
    - XMLNode*
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1019
      start: 986
    functionDepth: 2
    functionLinenumber: 986
    functionLinenumberEnd: 1019
    functionName: tinyxml2::XMLNode::InsertAfterChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLNode::InsertChildPreamble
    - TIXMLASSERT
    - tinyxml2::XMLNode::InsertEndChild
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLNode::InsertAfterChild( XMLNode* afterThis, XMLNode* addThis
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLNode*::ToElementWithName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1027,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 1024
    functionDepth: 0
    functionLinenumber: 1024
    functionLinenumberEnd: 1033
    functionName: tinyxml2::XMLNode::FirstChildElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - XMLNode*::ToElementWithName
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * XMLNode::FirstChildElement( const char* name ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLNode*::ToElementWithName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1039,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1045
      start: 1036
    functionDepth: 0
    functionLinenumber: 1036
    functionLinenumberEnd: 1045
    functionName: tinyxml2::XMLNode::LastChildElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::ToElementWithName
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * XMLNode::LastChildElement( const char* name ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLNode*::ToElementWithName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1051,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1057
      start: 1048
    functionDepth: 0
    functionLinenumber: 1048
    functionLinenumberEnd: 1057
    functionName: tinyxml2::XMLNode::NextSiblingElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::ToElementWithName
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * XMLNode::NextSiblingElement( const char* name ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLNode*::ToElementWithName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1063,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1069
      start: 1060
    functionDepth: 0
    functionLinenumber: 1060
    functionLinenumberEnd: 1069
    functionName: tinyxml2::XMLNode::PreviousSiblingElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::ToElementWithName
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * XMLNode::PreviousSiblingElement( const char* name ) const
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: Error
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1092,1
    - Dst: Identify
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1099,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1100,1
    - Dst: XMLNode*::ParseDeep
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1109,1
    - Dst: tinyxml2::XMLNode::DeleteNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1111,1
    - Dst: Error
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1112,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1113,1
    - Dst: XMLNode*::ToDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1118,1
    - Dst: ToDocument
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1130,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1131,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1133,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1134,1
    - Dst: LastChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1135,1
    - Dst: LastChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1136,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1143,1
    - Dst: XMLDeclaration*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1143,1
    - Dst: tinyxml2::XMLNode::DeleteNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1144,1
    - Dst: XMLNode*::ToElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1149,1
    - Dst: XMLElement*::ClosingType
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1152,1
    - Dst: XMLElement*::_value::TransferTo
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1154,1
    - Dst: XMLNode*::_memPool::SetTracked
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1156,1
    - Dst: tinyxml2::XMLNode::DeleteNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1157,1
    - Dst: StrPair::Empty
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1164,1
    - Dst: XMLElement*::ClosingType
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1165,1
    - Dst: XMLElement*::ClosingType
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1170,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1173,1
    - Dst: StrPair::GetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1173,1
    - Dst: XMLElement*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1173,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1178,1
    - Dst: XMLElement*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1178,1
    - Dst: tinyxml2::XMLNode::DeleteNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1179,1
    - Dst: tinyxml2::XMLNode::InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1183,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 62
    argCount: 3
    argNames:
    - p
    - parentEndTag
    - curLineNumPtr
    argTypes:
    - char*
    - StrPair*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1186
      start: 1072
    functionDepth: 2
    functionLinenumber: 1072
    functionLinenumberEnd: 1186
    functionName: tinyxml2::XMLNode::ParseDeep
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - ToDocument
    - TIXMLASSERT
    - XMLElement*::ClosingType
    - XMLNode*::ToDeclaration
    - XMLElement*::_value::TransferTo
    - tinyxml2::XMLNode::InsertEndChild
    - LastChild
    - XMLDeclaration*::Value
    - XMLNode*::ParseDeep
    - XMLNode*::_memPool::SetTracked
    - Identify
    - Error
    - FirstChild
    - StrPair::Empty
    - tinyxml2::XMLNode::DeleteNode
    - SetError
    - StrPair::GetStr
    - tinyxml2::StringEqual
    - XMLNode*::ToElement
    - XMLElement*::Name
    linkageType: ''
    returnType: char
    signature: char * XMLNode::ParseDeep( char* p, StrPair* parentEndTag, int* curLineNumPtr
      )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1193,1
    - Dst: XMLNode*::ToDocument
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1194,1
    - Dst: XMLNode*::_document::MarkInUse
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1195,1
    - Dst: XMLNode*::~XMLNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1199,1
    - Dst: MemPool*::Free
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1200,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - node
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1201
      start: 1188
    functionDepth: 1
    functionLinenumber: 1188
    functionLinenumberEnd: 1201
    functionName: tinyxml2::XMLNode::DeleteNode
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - MemPool*::Free
    - TIXMLASSERT
    - XMLNode*::_document::MarkInUse
    - XMLNode*::~XMLNode
    - XMLNode*::ToDocument
    linkageType: ''
    returnType: void
    signature: void XMLNode::DeleteNode( XMLNode* node )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1205,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1206,1
    - Dst: XMLNode*::_parent::Unlink
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1209,1
    - Dst: XMLNode*::_document::MarkInUse
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1212,1
    - Dst: XMLNode*::_memPool::SetTracked
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - insertThis
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1215
      start: 1203
    functionDepth: 1
    functionLinenumber: 1203
    functionLinenumberEnd: 1215
    functionName: tinyxml2::XMLNode::InsertChildPreamble
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 3
    functionsReached:
    - TIXMLASSERT
    - XMLNode*::_document::MarkInUse
    - XMLNode*::_memPool::SetTracked
    - XMLNode*::_parent::Unlink
    linkageType: ''
    returnType: void
    signature: void XMLNode::InsertChildPreamble( XMLNode* insertThis ) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLNode::ToElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1219,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1226,1
    - Dst: XMLElement*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1226,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1230
      start: 1217
    functionDepth: 1
    functionLinenumber: 1217
    functionLinenumberEnd: 1230
    functionName: tinyxml2::XMLNode::ToElementWithName
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::StringEqual
    - tinyxml2::XMLNode::ToElement
    - XMLElement*::Name
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * XMLNode::ToElementWithName( const char* name ) const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLText::CData
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1235,1
    - Dst: ParseText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1236,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1238,1
    - Dst: ProcessEntities
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1243,1
    - Dst: WhitespaceMode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1244,1
    - Dst: ParseText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1248,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1253,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - p
    - curLineNumPtr
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1257
      start: 1233
    functionDepth: 1
    functionLinenumber: 1233
    functionLinenumberEnd: 1257
    functionName: tinyxml2::XMLText::ParseDeep
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - ParseText
    - WhitespaceMode
    - tinyxml2::XMLText::CData
    - SetError
    - ProcessEntities
    linkageType: ''
    returnType: char
    signature: char * XMLText::ParseDeep( char* p, StrPair*, int* curLineNumPtr )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument*::NewText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1265,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1265,1
    - Dst: XMLText*::SetCData
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1266,1
    - Dst: tinyxml2::XMLText::CData
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1266,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1268
      start: 1260
    functionDepth: 1
    functionLinenumber: 1260
    functionLinenumberEnd: 1268
    functionName: tinyxml2::XMLText::ShallowClone
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLText::CData
    - XMLText*::SetCData
    - Value
    - XMLDocument*::NewText
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLText::ShallowClone( XMLDocument* doc ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1273,1
    - Dst: XMLNode*::ToText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1274,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1275,1
    - Dst: XMLText*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1275,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1275,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - compare
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1276
      start: 1271
    functionDepth: 1
    functionLinenumber: 1271
    functionLinenumberEnd: 1276
    functionName: tinyxml2::XMLText::ShallowEqual
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - Value
    - XMLNode*::ToText
    - TIXMLASSERT
    - XMLText*::Value
    - tinyxml2::StringEqual
    linkageType: ''
    returnType: bool
    signature: bool XMLText::ShallowEqual( const XMLNode* compare ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1281,1
    - Dst: XMLVisitor*::Visit
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1282,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - visitor
    argTypes:
    - XMLVisitor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1283
      start: 1279
    functionDepth: 1
    functionLinenumber: 1279
    functionLinenumberEnd: 1283
    functionName: tinyxml2::XMLText::Accept
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLVisitor*::Visit
    - TIXMLASSERT
    linkageType: ''
    returnType: bool
    signature: bool XMLText::Accept( XMLVisitor* visitor ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1290
      start: 1288
    functionDepth: 0
    functionLinenumber: 1288
    functionLinenumberEnd: 1290
    functionName: tinyxml2::XMLComment::XMLComment
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLComment::XMLComment( XMLDocument* doc )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1295
      start: 1293
    functionDepth: 0
    functionLinenumber: 1293
    functionLinenumberEnd: 1295
    functionName: XMLComment::~XMLComment()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLComment::~XMLComment()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ParseText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1301,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1303,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - p
    - curLineNumPtr
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1306
      start: 1298
    functionDepth: 0
    functionLinenumber: 1298
    functionLinenumberEnd: 1306
    functionName: tinyxml2::XMLComment::ParseDeep
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - ParseText
    - SetError
    linkageType: ''
    returnType: char
    signature: char * XMLComment::ParseDeep( char* p, StrPair*, int* curLineNumPtr
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument*::NewComment
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1314,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1314,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1316
      start: 1309
    functionDepth: 0
    functionLinenumber: 1309
    functionLinenumberEnd: 1316
    functionName: tinyxml2::XMLComment::ShallowClone
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLDocument*::NewComment
    - Value
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLComment::ShallowClone( XMLDocument* doc ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1321,1
    - Dst: XMLNode*::ToComment
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1322,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1323,1
    - Dst: XMLComment*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1323,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1323,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - compare
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1324
      start: 1319
    functionDepth: 1
    functionLinenumber: 1319
    functionLinenumberEnd: 1324
    functionName: tinyxml2::XMLComment::ShallowEqual
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLComment*::Value
    - Value
    - TIXMLASSERT
    - XMLNode*::ToComment
    - tinyxml2::StringEqual
    linkageType: ''
    returnType: bool
    signature: bool XMLComment::ShallowEqual( const XMLNode* compare ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1329,1
    - Dst: XMLVisitor*::Visit
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - visitor
    argTypes:
    - XMLVisitor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1331
      start: 1327
    functionDepth: 1
    functionLinenumber: 1327
    functionLinenumberEnd: 1331
    functionName: tinyxml2::XMLComment::Accept
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLVisitor*::Visit
    - TIXMLASSERT
    linkageType: ''
    returnType: bool
    signature: bool XMLComment::Accept( XMLVisitor* visitor ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1338
      start: 1336
    functionDepth: 0
    functionLinenumber: 1336
    functionLinenumberEnd: 1338
    functionName: tinyxml2::XMLDeclaration::XMLDeclaration
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLDeclaration::XMLDeclaration( XMLDocument* doc )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1344
      start: 1341
    functionDepth: 0
    functionLinenumber: 1341
    functionLinenumberEnd: 1344
    functionName: XMLDeclaration::~XMLDeclaration()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLDeclaration::~XMLDeclaration()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ParseText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1350,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1352,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - p
    - curLineNumPtr
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1355
      start: 1347
    functionDepth: 0
    functionLinenumber: 1347
    functionLinenumberEnd: 1355
    functionName: tinyxml2::XMLDeclaration::ParseDeep
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - ParseText
    - SetError
    linkageType: ''
    returnType: char
    signature: char * XMLDeclaration::ParseDeep( char* p, StrPair*, int* curLineNumPtr
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument*::NewDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1363,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1363,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1365
      start: 1358
    functionDepth: 0
    functionLinenumber: 1358
    functionLinenumberEnd: 1365
    functionName: tinyxml2::XMLDeclaration::ShallowClone
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLDocument*::NewDeclaration
    - Value
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLDeclaration::ShallowClone( XMLDocument* doc ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1370,1
    - Dst: XMLNode*::ToDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1371,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1372,1
    - Dst: XMLDeclaration*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1372,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1372,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - compare
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1373
      start: 1368
    functionDepth: 1
    functionLinenumber: 1368
    functionLinenumberEnd: 1373
    functionName: tinyxml2::XMLDeclaration::ShallowEqual
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::ToDeclaration
    - Value
    - TIXMLASSERT
    - XMLDeclaration*::Value
    - tinyxml2::StringEqual
    linkageType: ''
    returnType: bool
    signature: bool XMLDeclaration::ShallowEqual( const XMLNode* compare ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1379,1
    - Dst: XMLVisitor*::Visit
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1380,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - visitor
    argTypes:
    - XMLVisitor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1381
      start: 1377
    functionDepth: 1
    functionLinenumber: 1377
    functionLinenumberEnd: 1381
    functionName: tinyxml2::XMLDeclaration::Accept
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLVisitor*::Visit
    - TIXMLASSERT
    linkageType: ''
    returnType: bool
    signature: bool XMLDeclaration::Accept( XMLVisitor* visitor ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1385
    functionDepth: 0
    functionLinenumber: 1385
    functionLinenumberEnd: 1387
    functionName: tinyxml2::XMLUnknown::XMLUnknown
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLUnknown::XMLUnknown( XMLDocument* doc )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1392
      start: 1390
    functionDepth: 0
    functionLinenumber: 1390
    functionLinenumberEnd: 1392
    functionName: XMLUnknown::~XMLUnknown()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLUnknown::~XMLUnknown()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ParseText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1398,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1400,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - p
    - curLineNumPtr
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1403
      start: 1395
    functionDepth: 0
    functionLinenumber: 1395
    functionLinenumberEnd: 1403
    functionName: tinyxml2::XMLUnknown::ParseDeep
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - ParseText
    - SetError
    linkageType: ''
    returnType: char
    signature: char * XMLUnknown::ParseDeep( char* p, StrPair*, int* curLineNumPtr
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument*::NewUnknown
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1411,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1411,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1413
      start: 1406
    functionDepth: 0
    functionLinenumber: 1406
    functionLinenumberEnd: 1413
    functionName: tinyxml2::XMLUnknown::ShallowClone
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLDocument*::NewUnknown
    - Value
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLUnknown::ShallowClone( XMLDocument* doc ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1418,1
    - Dst: XMLNode*::ToUnknown
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1419,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1420,1
    - Dst: XMLUnknown*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1420,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1420,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - compare
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1421
      start: 1416
    functionDepth: 1
    functionLinenumber: 1416
    functionLinenumberEnd: 1421
    functionName: tinyxml2::XMLUnknown::ShallowEqual
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - Value
    - TIXMLASSERT
    - XMLUnknown*::Value
    - XMLNode*::ToUnknown
    - tinyxml2::StringEqual
    linkageType: ''
    returnType: bool
    signature: bool XMLUnknown::ShallowEqual( const XMLNode* compare ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1426,1
    - Dst: XMLVisitor*::Visit
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1427,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - visitor
    argTypes:
    - XMLVisitor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1428
      start: 1424
    functionDepth: 1
    functionLinenumber: 1424
    functionLinenumberEnd: 1428
    functionName: tinyxml2::XMLUnknown::Accept
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLVisitor*::Visit
    - TIXMLASSERT
    linkageType: ''
    returnType: bool
    signature: bool XMLUnknown::Accept( XMLVisitor* visitor ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1434,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1435
      start: 1432
    functionDepth: 0
    functionLinenumber: 1432
    functionLinenumberEnd: 1435
    functionName: tinyxml2::XMLAttribute::Name
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - GetStr
    linkageType: ''
    returnType: char
    signature: char * XMLAttribute::Name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1439,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1440
      start: 1437
    functionDepth: 0
    functionLinenumber: 1437
    functionLinenumberEnd: 1440
    functionName: tinyxml2::XMLAttribute::Value
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - GetStr
    linkageType: ''
    returnType: char
    signature: char * XMLAttribute::Value() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ParseName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1445,1
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1451,1
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1457,1
    - Dst: ParseText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1465,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - p
    - processEntities
    - curLineNumPtr
    argTypes:
    - char*
    - bool
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1467
      start: 1442
    functionDepth: 1
    functionLinenumber: 1442
    functionLinenumberEnd: 1467
    functionName: tinyxml2::XMLAttribute::ParseDeep
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - ParseText
    - tinyxml2::SkipWhiteSpace
    - ParseName
    linkageType: ''
    returnType: char
    signature: char * XMLAttribute::ParseDeep( char* p, bool processEntities, int*
      curLineNumPtr )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1472,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1473
      start: 1470
    functionDepth: 0
    functionLinenumber: 1470
    functionLinenumberEnd: 1473
    functionName: tinyxml2::XMLAttribute::SetName
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetName( const char* n )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToInt
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1478,1
    - Dst: tinyxml2::XMLAttribute::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1478,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1482
      start: 1476
    functionDepth: 1
    functionLinenumber: 1476
    functionLinenumberEnd: 1482
    functionName: tinyxml2::XMLAttribute::QueryIntValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLUtil::ToInt
    - tinyxml2::XMLAttribute::Value
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLAttribute::QueryIntValue( int* value ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToUnsigned
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1487,1
    - Dst: tinyxml2::XMLAttribute::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1487,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - unsigned int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1491
      start: 1485
    functionDepth: 1
    functionLinenumber: 1485
    functionLinenumberEnd: 1491
    functionName: tinyxml2::XMLAttribute::QueryUnsignedValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLUtil::ToUnsigned
    - tinyxml2::XMLAttribute::Value
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLAttribute::QueryUnsignedValue( unsigned int* value ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToInt64
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1496,1
    - Dst: tinyxml2::XMLAttribute::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1496,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - int64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1500
      start: 1494
    functionDepth: 1
    functionLinenumber: 1494
    functionLinenumberEnd: 1500
    functionName: tinyxml2::XMLAttribute::QueryInt64Value
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLAttribute::Value
    - tinyxml2::XMLUtil::ToInt64
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLAttribute::QueryInt64Value(int64_t* value) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToUnsigned64
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1505,1
    - Dst: tinyxml2::XMLAttribute::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1505,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - uint64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1509
      start: 1503
    functionDepth: 1
    functionLinenumber: 1503
    functionLinenumberEnd: 1509
    functionName: tinyxml2::XMLAttribute::QueryUnsigned64Value
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLAttribute::Value
    - tinyxml2::XMLUtil::ToUnsigned64
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLAttribute::QueryUnsigned64Value(uint64_t* value) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToBool
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1514,1
    - Dst: tinyxml2::XMLAttribute::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1514,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1518
      start: 1512
    functionDepth: 2
    functionLinenumber: 1512
    functionLinenumberEnd: 1518
    functionName: tinyxml2::XMLAttribute::QueryBoolValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLUtil::ToBool
    - tinyxml2::XMLAttribute::Value
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLAttribute::QueryBoolValue( bool* value ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToFloat
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1523,1
    - Dst: tinyxml2::XMLAttribute::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1523,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1527
      start: 1521
    functionDepth: 1
    functionLinenumber: 1521
    functionLinenumberEnd: 1527
    functionName: tinyxml2::XMLAttribute::QueryFloatValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLUtil::ToFloat
    - tinyxml2::XMLAttribute::Value
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLAttribute::QueryFloatValue( float* value ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToDouble
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1532,1
    - Dst: tinyxml2::XMLAttribute::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1532,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1536
      start: 1530
    functionDepth: 1
    functionLinenumber: 1530
    functionLinenumberEnd: 1536
    functionName: tinyxml2::XMLAttribute::QueryDoubleValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLUtil::ToDouble
    - tinyxml2::XMLAttribute::Value
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLAttribute::QueryDoubleValue( double* value ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1541,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1542
      start: 1539
    functionDepth: 0
    functionLinenumber: 1539
    functionLinenumberEnd: 1542
    functionName: tinyxml2::XMLAttribute::SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetAttribute( const char* v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1548,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1549,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1550
      start: 1545
    functionDepth: 0
    functionLinenumber: 1545
    functionLinenumberEnd: 1550
    functionName: tinyxml2::XMLAttribute::SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetAttribute( int v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1556,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1557,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1558
      start: 1553
    functionDepth: 0
    functionLinenumber: 1553
    functionLinenumberEnd: 1558
    functionName: tinyxml2::XMLAttribute::SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetAttribute( unsigned v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1564,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1565,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1566
      start: 1561
    functionDepth: 0
    functionLinenumber: 1561
    functionLinenumberEnd: 1566
    functionName: tinyxml2::XMLAttribute::SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetAttribute(int64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1571,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1573
      start: 1568
    functionDepth: 0
    functionLinenumber: 1568
    functionLinenumberEnd: 1573
    functionName: tinyxml2::XMLAttribute::SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetAttribute(uint64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1579,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1580,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1581
      start: 1576
    functionDepth: 0
    functionLinenumber: 1576
    functionLinenumberEnd: 1581
    functionName: tinyxml2::XMLAttribute::SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetAttribute( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1586,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1588
      start: 1583
    functionDepth: 0
    functionLinenumber: 1583
    functionLinenumberEnd: 1588
    functionName: tinyxml2::XMLAttribute::SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetAttribute( double v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1593,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1594,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1595
      start: 1590
    functionDepth: 0
    functionLinenumber: 1590
    functionLinenumberEnd: 1595
    functionName: tinyxml2::XMLAttribute::SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetAttribute( float v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1603
      start: 1599
    functionDepth: 0
    functionLinenumber: 1599
    functionLinenumberEnd: 1603
    functionName: tinyxml2::XMLElement::XMLElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLElement::XMLElement( XMLDocument* doc )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DeleteAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1610,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1613
      start: 1606
    functionDepth: 0
    functionLinenumber: 1606
    functionLinenumberEnd: 1613
    functionName: XMLElement::~XMLElement()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - DeleteAttribute
    linkageType: ''
    returnType: void
    signature: void XMLElement::~XMLElement()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1619,1
    - Dst: XMLAttribute*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1619,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1624
      start: 1616
    functionDepth: 1
    functionLinenumber: 1616
    functionLinenumberEnd: 1624
    functionName: tinyxml2::XMLElement::FindAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::StringEqual
    - XMLAttribute*::Name
    linkageType: ''
    returnType: XMLAttribute
    signature: XMLAttribute * XMLElement::FindAttribute( const char* name ) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement::FindAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1629,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1633,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1633,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1634,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1637
      start: 1627
    functionDepth: 2
    functionLinenumber: 1627
    functionLinenumberEnd: 1637
    functionName: tinyxml2::XMLElement::Attribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::StringEqual
    - XMLAttribute*::Value
    - tinyxml2::XMLElement::FindAttribute
    linkageType: ''
    returnType: char
    signature: char * XMLElement::Attribute( const char* name, const char* value )
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryIntAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1642,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - defaultValue
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1644
      start: 1639
    functionDepth: 1
    functionLinenumber: 1639
    functionLinenumberEnd: 1644
    functionName: tinyxml2::XMLElement::IntAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - QueryIntAttribute
    linkageType: ''
    returnType: int
    signature: int XMLElement::IntAttribute(const char* name, int defaultValue) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryUnsignedAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1649,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - defaultValue
    argTypes:
    - char*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1651
      start: 1646
    functionDepth: 1
    functionLinenumber: 1646
    functionLinenumberEnd: 1651
    functionName: tinyxml2::XMLElement::UnsignedAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - QueryUnsignedAttribute
    linkageType: ''
    returnType: unsigned
    signature: unsigned XMLElement::UnsignedAttribute(const char* name, unsigned defaultValue)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryInt64Attribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1656,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - defaultValue
    argTypes:
    - char*
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1653
    functionDepth: 1
    functionLinenumber: 1653
    functionLinenumberEnd: 1658
    functionName: tinyxml2::XMLElement::Int64Attribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - QueryInt64Attribute
    linkageType: ''
    returnType: int64_t
    signature: int64_t XMLElement::Int64Attribute(const char* name, int64_t defaultValue)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryUnsigned64Attribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1663,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - defaultValue
    argTypes:
    - char*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1665
      start: 1660
    functionDepth: 1
    functionLinenumber: 1660
    functionLinenumberEnd: 1665
    functionName: tinyxml2::XMLElement::Unsigned64Attribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - QueryUnsigned64Attribute
    linkageType: ''
    returnType: uint64_t
    signature: uint64_t XMLElement::Unsigned64Attribute(const char* name, uint64_t
      defaultValue) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryBoolAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1670,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - defaultValue
    argTypes:
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1672
      start: 1667
    functionDepth: 1
    functionLinenumber: 1667
    functionLinenumberEnd: 1672
    functionName: tinyxml2::XMLElement::BoolAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - QueryBoolAttribute
    linkageType: ''
    returnType: bool
    signature: bool XMLElement::BoolAttribute(const char* name, bool defaultValue)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryDoubleAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1677,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - defaultValue
    argTypes:
    - char*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1679
      start: 1674
    functionDepth: 1
    functionLinenumber: 1674
    functionLinenumberEnd: 1679
    functionName: tinyxml2::XMLElement::DoubleAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - QueryDoubleAttribute
    linkageType: ''
    returnType: double
    signature: double XMLElement::DoubleAttribute(const char* name, double defaultValue)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryFloatAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1684,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - defaultValue
    argTypes:
    - char*
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1686
      start: 1681
    functionDepth: 1
    functionLinenumber: 1681
    functionLinenumberEnd: 1686
    functionName: tinyxml2::XMLElement::FloatAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - QueryFloatAttribute
    linkageType: ''
    returnType: float
    signature: float XMLElement::FloatAttribute(const char* name, float defaultValue)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1691,1
    - Dst: XMLNode*::ToComment
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1693,1
    - Dst: XMLNode*::NextSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1694,1
    - Dst: XMLNode*::ToText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1700,1
    - Dst: XMLNode*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1701,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1704
      start: 1688
    functionDepth: 1
    functionLinenumber: 1688
    functionLinenumberEnd: 1704
    functionName: tinyxml2::XMLElement::GetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::ToText
    - XMLNode*::NextSibling
    - XMLNode*::Value
    - XMLNode*::ToComment
    - FirstChild
    linkageType: ''
    returnType: char
    signature: char * XMLElement::GetText() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1709,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1709,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1710,1
    - Dst: GetDocument
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1712,1
    - Dst: InsertFirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1713,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - inText
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1715
      start: 1707
    functionDepth: 1
    functionLinenumber: 1707
    functionLinenumberEnd: 1715
    functionName: tinyxml2::XMLElement::SetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - FirstChild
    - InsertFirstChild
    - GetDocument
    linkageType: ''
    returnType: void
    signature: void XMLElement::SetText( const char* inText )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1721,1
    - Dst: tinyxml2::XMLElement::SetText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1722,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1723
      start: 1718
    functionDepth: 1
    functionLinenumber: 1718
    functionLinenumberEnd: 1723
    functionName: tinyxml2::XMLElement::SetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLElement::SetText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLElement::SetText( int v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1729,1
    - Dst: tinyxml2::XMLElement::SetText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1730,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1731
      start: 1726
    functionDepth: 1
    functionLinenumber: 1726
    functionLinenumberEnd: 1731
    functionName: tinyxml2::XMLElement::SetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - tinyxml2::XMLElement::SetText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLElement::SetText( unsigned v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1737,1
    - Dst: tinyxml2::XMLElement::SetText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1738,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1739
      start: 1734
    functionDepth: 1
    functionLinenumber: 1734
    functionLinenumberEnd: 1739
    functionName: tinyxml2::XMLElement::SetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 3
    functionsReached:
    - tinyxml2::XMLElement::SetText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLElement::SetText(int64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1743,1
    - Dst: tinyxml2::XMLElement::SetText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1744,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1745
      start: 1741
    functionDepth: 1
    functionLinenumber: 1741
    functionLinenumberEnd: 1745
    functionName: tinyxml2::XMLElement::SetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 4
    functionsReached:
    - tinyxml2::XMLElement::SetText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLElement::SetText(uint64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1751,1
    - Dst: tinyxml2::XMLElement::SetText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1752,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1753
      start: 1748
    functionDepth: 1
    functionLinenumber: 1748
    functionLinenumberEnd: 1753
    functionName: tinyxml2::XMLElement::SetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 5
    functionsReached:
    - tinyxml2::XMLElement::SetText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLElement::SetText( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1759,1
    - Dst: tinyxml2::XMLElement::SetText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1760,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1761
      start: 1756
    functionDepth: 1
    functionLinenumber: 1756
    functionLinenumberEnd: 1761
    functionName: tinyxml2::XMLElement::SetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 6
    functionsReached:
    - tinyxml2::XMLElement::SetText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLElement::SetText( float v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1767,1
    - Dst: tinyxml2::XMLElement::SetText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1768,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1769
      start: 1764
    functionDepth: 1
    functionLinenumber: 1764
    functionLinenumberEnd: 1769
    functionName: tinyxml2::XMLElement::SetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 7
    functionsReached:
    - tinyxml2::XMLElement::SetText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLElement::SetText( double v )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1774,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1774,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1775,1
    - Dst: tinyxml2::XMLUtil::ToInt
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1776,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ival
    argTypes:
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1782
      start: 1772
    functionDepth: 1
    functionLinenumber: 1772
    functionLinenumberEnd: 1782
    functionName: tinyxml2::XMLElement::QueryIntText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - FirstChild
    - tinyxml2::XMLUtil::ToInt
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLElement::QueryIntText( int* ival ) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1787,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1787,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1788,1
    - Dst: tinyxml2::XMLUtil::ToUnsigned
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1789,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - uval
    argTypes:
    - unsigned*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1795
      start: 1785
    functionDepth: 1
    functionLinenumber: 1785
    functionLinenumberEnd: 1795
    functionName: tinyxml2::XMLElement::QueryUnsignedText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLUtil::ToUnsigned
    - FirstChild
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLElement::QueryUnsignedText( unsigned* uval ) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1800,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1800,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1801,1
    - Dst: tinyxml2::XMLUtil::ToInt64
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1802,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ival
    argTypes:
    - int64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1808
      start: 1798
    functionDepth: 1
    functionLinenumber: 1798
    functionLinenumberEnd: 1808
    functionName: tinyxml2::XMLElement::QueryInt64Text
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - FirstChild
    - tinyxml2::XMLUtil::ToInt64
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLElement::QueryInt64Text(int64_t* ival) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1813,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1813,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1814,1
    - Dst: tinyxml2::XMLUtil::ToUnsigned64
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1815,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - uval
    argTypes:
    - uint64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1821
      start: 1811
    functionDepth: 1
    functionLinenumber: 1811
    functionLinenumberEnd: 1821
    functionName: tinyxml2::XMLElement::QueryUnsigned64Text
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - FirstChild
    - tinyxml2::XMLUtil::ToUnsigned64
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLElement::QueryUnsigned64Text(uint64_t* uval) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1826,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1826,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1827,1
    - Dst: tinyxml2::XMLUtil::ToBool
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1828,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - bval
    argTypes:
    - bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1834
      start: 1824
    functionDepth: 2
    functionLinenumber: 1824
    functionLinenumberEnd: 1834
    functionName: tinyxml2::XMLElement::QueryBoolText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLUtil::ToBool
    - FirstChild
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLElement::QueryBoolText( bool* bval ) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1839,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1839,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1840,1
    - Dst: tinyxml2::XMLUtil::ToDouble
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1841,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - dval
    argTypes:
    - double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1847
      start: 1837
    functionDepth: 1
    functionLinenumber: 1837
    functionLinenumberEnd: 1847
    functionName: tinyxml2::XMLElement::QueryDoubleText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - FirstChild
    - tinyxml2::XMLUtil::ToDouble
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLElement::QueryDoubleText( double* dval ) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1852,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1852,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1853,1
    - Dst: tinyxml2::XMLUtil::ToFloat
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1854,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - fval
    argTypes:
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1860
      start: 1850
    functionDepth: 1
    functionLinenumber: 1850
    functionLinenumberEnd: 1860
    functionName: tinyxml2::XMLElement::QueryFloatText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLUtil::ToFloat
    - FirstChild
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLElement::QueryFloatText( float* fval ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement::QueryIntText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1865,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - defaultValue
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1867
      start: 1862
    functionDepth: 2
    functionLinenumber: 1862
    functionLinenumberEnd: 1867
    functionName: tinyxml2::XMLElement::IntText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::QueryIntText
    linkageType: ''
    returnType: int
    signature: int XMLElement::IntText(int defaultValue) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement::QueryUnsignedText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1872,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - defaultValue
    argTypes:
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1874
      start: 1869
    functionDepth: 2
    functionLinenumber: 1869
    functionLinenumberEnd: 1874
    functionName: tinyxml2::XMLElement::UnsignedText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::QueryUnsignedText
    linkageType: ''
    returnType: unsigned
    signature: unsigned XMLElement::UnsignedText(unsigned defaultValue) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement::QueryInt64Text
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1879,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - defaultValue
    argTypes:
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1881
      start: 1876
    functionDepth: 2
    functionLinenumber: 1876
    functionLinenumberEnd: 1881
    functionName: tinyxml2::XMLElement::Int64Text
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::QueryInt64Text
    linkageType: ''
    returnType: int64_t
    signature: int64_t XMLElement::Int64Text(int64_t defaultValue) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement::QueryUnsigned64Text
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1886,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - defaultValue
    argTypes:
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1888
      start: 1883
    functionDepth: 2
    functionLinenumber: 1883
    functionLinenumberEnd: 1888
    functionName: tinyxml2::XMLElement::Unsigned64Text
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::QueryUnsigned64Text
    linkageType: ''
    returnType: uint64_t
    signature: uint64_t XMLElement::Unsigned64Text(uint64_t defaultValue) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement::QueryBoolText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1893,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - defaultValue
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1895
      start: 1890
    functionDepth: 3
    functionLinenumber: 1890
    functionLinenumberEnd: 1895
    functionName: tinyxml2::XMLElement::BoolText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::QueryBoolText
    linkageType: ''
    returnType: bool
    signature: bool XMLElement::BoolText(bool defaultValue) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement::QueryDoubleText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1900,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - defaultValue
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1902
      start: 1897
    functionDepth: 2
    functionLinenumber: 1897
    functionLinenumberEnd: 1902
    functionName: tinyxml2::XMLElement::DoubleText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::QueryDoubleText
    linkageType: ''
    returnType: double
    signature: double XMLElement::DoubleText(double defaultValue) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement::QueryFloatText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1907,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - defaultValue
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1909
      start: 1904
    functionDepth: 2
    functionLinenumber: 1904
    functionLinenumberEnd: 1909
    functionName: tinyxml2::XMLElement::FloatText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::QueryFloatText
    linkageType: ''
    returnType: float
    signature: float XMLElement::FloatText(float defaultValue) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1919,1
    - Dst: XMLAttribute*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1919,1
    - Dst: tinyxml2::XMLElement::CreateAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1924,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1925,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1927,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1931,1
    - Dst: XMLAttribute*::SetName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1934,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1937
      start: 1912
    functionDepth: 1
    functionLinenumber: 1912
    functionLinenumberEnd: 1937
    functionName: tinyxml2::XMLElement::FindOrCreateAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::CreateAttribute
    - XMLAttribute*::SetName
    - TIXMLASSERT
    - tinyxml2::StringEqual
    - XMLAttribute*::Name
    linkageType: ''
    returnType: XMLAttribute
    signature: XMLAttribute * XMLElement::FindOrCreateAttribute( const char* name
      )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1944,1
    - Dst: XMLAttribute*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1944,1
    - Dst: tinyxml2::XMLElement::DeleteAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1951,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1956
      start: 1940
    functionDepth: 1
    functionLinenumber: 1940
    functionLinenumberEnd: 1956
    functionName: tinyxml2::XMLElement::DeleteAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::StringEqual
    - tinyxml2::XMLElement::DeleteAttribute
    - XMLAttribute*::Name
    linkageType: ''
    returnType: void
    signature: void XMLElement::DeleteAttribute( const char* name )
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1965,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1967,1
    - Dst: Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1967,1
    - Dst: tinyxml2::IsNameStartChar
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1972,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1972,1
    - Dst: tinyxml2::XMLElement::CreateAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1973,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1974,1
    - Dst: XMLAttribute*::ParseDeep
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1979,1
    - Dst: ProcessEntities
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1979,1
    - Dst: tinyxml2::XMLElement::Attribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1980,1
    - Dst: XMLAttribute*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1980,1
    - Dst: tinyxml2::XMLElement::DeleteAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1981,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1982,1
    - Dst: Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1982,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1991,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1995,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2011,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 2
    argNames:
    - p
    - curLineNumPtr
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2016
      start: 1959
    functionDepth: 3
    functionLinenumber: 1959
    functionLinenumberEnd: 2016
    functionName: tinyxml2::XMLElement::ParseAttributes
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::CreateAttribute
    - XMLAttribute*::ParseDeep
    - SetError
    - TIXMLASSERT
    - tinyxml2::XMLElement::Attribute
    - tinyxml2::SkipWhiteSpace
    - tinyxml2::XMLElement::DeleteAttribute
    - Name
    - tinyxml2::IsNameStartChar
    - static_cast<unsigned char>
    - ProcessEntities
    - XMLAttribute*::Name
    linkageType: ''
    returnType: char
    signature: char * XMLElement::ParseAttributes( char* p, int* curLineNumPtr )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLAttribute*::~XMLAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2024,1
    - Dst: MemPool*::Free
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2025,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - attribute
    argTypes:
    - XMLAttribute*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2026
      start: 2018
    functionDepth: 0
    functionLinenumber: 2018
    functionLinenumberEnd: 2026
    functionName: tinyxml2::XMLElement::DeleteAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - XMLAttribute*::~XMLAttribute
    - MemPool*::Free
    linkageType: ''
    returnType: void
    signature: void XMLElement::DeleteAttribute( XMLAttribute* attribute )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2030,1
    - Dst: _attributePool::ItemSize
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2030,1
    - Dst: _attributePool::Alloc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2031,1
    - Dst: XMLAttribute::XMLAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2031,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2032,1
    - Dst: XMLAttribute*::_memPool::SetTracked
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2034,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2036
      start: 2028
    functionDepth: 1
    functionLinenumber: 2028
    functionLinenumberEnd: 2036
    functionName: tinyxml2::XMLElement::CreateAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - XMLAttribute::XMLAttribute
    - TIXMLASSERT
    - _attributePool::ItemSize
    - _attributePool::Alloc
    - XMLAttribute*::_memPool::SetTracked
    linkageType: ''
    returnType: XMLAttribute
    signature: XMLAttribute * XMLElement::CreateAttribute()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2041,1
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2042,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2043
      start: 2039
    functionDepth: 0
    functionLinenumber: 2039
    functionLinenumberEnd: 2043
    functionName: tinyxml2::XMLElement::InsertNewChildElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - InsertEndChild
    - NewElement
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * XMLElement::InsertNewChildElement(const char* name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewComment
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2047,1
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2048,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - comment
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2049
      start: 2045
    functionDepth: 0
    functionLinenumber: 2045
    functionLinenumberEnd: 2049
    functionName: tinyxml2::XMLElement::InsertNewComment
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - InsertEndChild
    - NewComment
    linkageType: ''
    returnType: XMLComment
    signature: XMLComment * XMLElement::InsertNewComment(const char* comment)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2053,1
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2054,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - text
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2055
      start: 2051
    functionDepth: 0
    functionLinenumber: 2051
    functionLinenumberEnd: 2055
    functionName: tinyxml2::XMLElement::InsertNewText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - NewText
    - InsertEndChild
    linkageType: ''
    returnType: XMLText
    signature: XMLText * XMLElement::InsertNewText(const char* text)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2059,1
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2060,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - text
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2061
      start: 2057
    functionDepth: 0
    functionLinenumber: 2057
    functionLinenumberEnd: 2061
    functionName: tinyxml2::XMLElement::InsertNewDeclaration
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - InsertEndChild
    - NewDeclaration
    linkageType: ''
    returnType: XMLDeclaration
    signature: XMLDeclaration * XMLElement::InsertNewDeclaration(const char* text)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewUnknown
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2065,1
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2066,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - text
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2067
      start: 2063
    functionDepth: 0
    functionLinenumber: 2063
    functionLinenumberEnd: 2067
    functionName: tinyxml2::XMLElement::InsertNewUnknown
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - InsertEndChild
    - NewUnknown
    linkageType: ''
    returnType: XMLUnknown
    signature: XMLUnknown * XMLElement::InsertNewUnknown(const char* text)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2078,1
    - Dst: ParseName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2088,1
    - Dst: Empty
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2089,1
    - Dst: tinyxml2::XMLElement::ParseAttributes
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2093,1
    - Dst: tinyxml2::XMLNode::ParseDeep
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2098,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - p
    - parentEndTag
    - curLineNumPtr
    argTypes:
    - char*
    - StrPair*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2100
      start: 2075
    functionDepth: 4
    functionLinenumber: 2075
    functionLinenumberEnd: 2100
    functionName: tinyxml2::XMLElement::ParseDeep
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - Empty
    - tinyxml2::SkipWhiteSpace
    - tinyxml2::XMLNode::ParseDeep
    - tinyxml2::XMLElement::ParseAttributes
    - ParseName
    linkageType: ''
    returnType: char
    signature: char * XMLElement::ParseDeep( char* p, StrPair* parentEndTag, int*
      curLineNumPtr )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument*::NewElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2109,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2109,1
    - Dst: FirstAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2110,1
    - Dst: XMLAttribute*::Next
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2110,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2111,1
    - Dst: XMLAttribute*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2111,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2111,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2114
      start: 2104
    functionDepth: 1
    functionLinenumber: 2104
    functionLinenumberEnd: 2114
    functionName: tinyxml2::XMLElement::ShallowClone
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLElement*::SetAttribute
    - Value
    - XMLAttribute*::Value
    - XMLAttribute*::Next
    - XMLAttribute*::Name
    - FirstAttribute
    - XMLDocument*::NewElement
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLElement::ShallowClone( XMLDocument* doc ) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2119,1
    - Dst: XMLNode*::ToElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2120,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2121,1
    - Dst: XMLElement*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2121,1
    - Dst: Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2121,1
    - Dst: FirstAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2123,1
    - Dst: XMLElement*::FirstAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2124,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2127,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2127,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2127,1
    - Dst: XMLAttribute*::Next
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2130,1
    - Dst: XMLAttribute*::Next
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2131,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - compare
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2140
      start: 2117
    functionDepth: 1
    functionLinenumber: 2117
    functionLinenumberEnd: 2140
    functionName: tinyxml2::XMLElement::ShallowEqual
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLElement*::FirstAttribute
    - XMLAttribute*::Value
    - TIXMLASSERT
    - XMLAttribute*::Next
    - Name
    - tinyxml2::StringEqual
    - XMLNode*::ToElement
    - FirstAttribute
    - XMLElement*::Name
    linkageType: ''
    returnType: bool
    signature: bool XMLElement::ShallowEqual( const XMLNode* compare ) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2145,1
    - Dst: XMLVisitor*::VisitEnter
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2146,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2147,1
    - Dst: XMLNode*::NextSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2147,1
    - Dst: XMLNode*::Accept
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2148,1
    - Dst: XMLVisitor*::VisitExit
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2153,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - visitor
    argTypes:
    - XMLVisitor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2154
      start: 2143
    functionDepth: 1
    functionLinenumber: 2143
    functionLinenumberEnd: 2154
    functionName: tinyxml2::XMLElement::Accept
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::NextSibling
    - TIXMLASSERT
    - XMLVisitor*::VisitExit
    - XMLNode*::Accept
    - XMLVisitor*::VisitEnter
    - FirstChild
    linkageType: ''
    returnType: bool
    signature: bool XMLElement::Accept( XMLVisitor* visitor ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - processEntities
    - whitespaceMode
    argTypes:
    - bool
    - Whitespace
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2202
      start: 2183
    functionDepth: 0
    functionLinenumber: 2183
    functionLinenumberEnd: 2202
    functionName: tinyxml2::XMLDocument::XMLDocument
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLDocument::XMLDocument( bool processEntities, Whitespace whitespaceMode
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2208
      start: 2205
    functionDepth: 0
    functionLinenumber: 2205
    functionLinenumberEnd: 2208
    functionName: XMLDocument::~XMLDocument()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - Clear
    linkageType: ''
    returnType: void
    signature: void XMLDocument::~XMLDocument()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2213,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2214,1
    - Dst: Size
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2216,1
    - Dst: SwapRemove
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2218,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2222
      start: 2211
    functionDepth: 1
    functionLinenumber: 2211
    functionLinenumberEnd: 2222
    functionName: tinyxml2::XMLDocument::MarkInUse
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    - SwapRemove
    - Size
    linkageType: ''
    returnType: void
    signature: void XMLDocument::MarkInUse(const XMLNode* const node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteChildren
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2226,1
    - Dst: Size
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2227,1
    - Dst: tinyxml2::XMLDocument::DeleteNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2228,1
    - Dst: Error
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2232,1
    - Dst: tinyxml2::XMLDocument::ClearError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2234,1
    - Dst: Trace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2241,1
    - Dst: Trace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2242,1
    - Dst: Trace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2243,1
    - Dst: Trace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2244,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2249,1
    - Dst: CurrentAllocs
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2249,1
    - Dst: Untracked
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2249,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2250,1
    - Dst: CurrentAllocs
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2250,1
    - Dst: Untracked
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2250,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2251,1
    - Dst: CurrentAllocs
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2251,1
    - Dst: Untracked
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2251,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2252,1
    - Dst: CurrentAllocs
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2252,1
    - Dst: Untracked
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2252,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2255
      start: 2224
    functionDepth: 1
    functionLinenumber: 2224
    functionLinenumberEnd: 2255
    functionName: tinyxml2::XMLDocument::Clear
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLDocument::DeleteNode
    - Untracked
    - TIXMLASSERT
    - Trace
    - Size
    - tinyxml2::XMLDocument::ClearError
    - CurrentAllocs
    - Error
    - DeleteChildren
    linkageType: ''
    returnType: void
    signature: void XMLDocument::Clear()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2260,1
    - Dst: XMLDocument*::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2265,1
    - Dst: tinyxml2::XMLDocument::FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2266,1
    - Dst: XMLNode*::NextSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2266,1
    - Dst: XMLDocument*::InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2267,1
    - Dst: XMLNode*::DeepClone
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2267,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - target
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2269
      start: 2258
    functionDepth: 1
    functionLinenumber: 2258
    functionLinenumberEnd: 2269
    functionName: tinyxml2::XMLDocument::DeepCopy
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::DeepClone
    - XMLNode*::NextSibling
    - TIXMLASSERT
    - tinyxml2::XMLDocument::FirstChild
    - XMLDocument*::Clear
    - XMLDocument*::InsertEndChild
    linkageType: ''
    returnType: void
    signature: void XMLDocument::DeepCopy(XMLDocument* target) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CreateUnlinkedNode<XMLElement>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2273,1
    - Dst: XMLElement*::SetName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2276
      start: 2271
    functionDepth: 1
    functionLinenumber: 2271
    functionLinenumberEnd: 2276
    functionName: tinyxml2::XMLDocument::NewElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLElement*::SetName
    - CreateUnlinkedNode<XMLElement>
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * XMLDocument::NewElement( const char* name )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CreateUnlinkedNode<XMLComment>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2281,1
    - Dst: XMLComment*::SetValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2282,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2284
      start: 2279
    functionDepth: 0
    functionLinenumber: 2279
    functionLinenumberEnd: 2284
    functionName: tinyxml2::XMLDocument::NewComment
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - CreateUnlinkedNode<XMLComment>
    - XMLComment*::SetValue
    linkageType: ''
    returnType: XMLComment
    signature: XMLComment * XMLDocument::NewComment( const char* str )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CreateUnlinkedNode<XMLText>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2289,1
    - Dst: XMLText*::SetValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2292
      start: 2287
    functionDepth: 0
    functionLinenumber: 2287
    functionLinenumberEnd: 2292
    functionName: tinyxml2::XMLDocument::NewText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - CreateUnlinkedNode<XMLText>
    - XMLText*::SetValue
    linkageType: ''
    returnType: XMLText
    signature: XMLText * XMLDocument::NewText( const char* str )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CreateUnlinkedNode<XMLDeclaration>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2297,1
    - Dst: XMLDeclaration*::SetValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2298,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2300
      start: 2295
    functionDepth: 0
    functionLinenumber: 2295
    functionLinenumberEnd: 2300
    functionName: tinyxml2::XMLDocument::NewDeclaration
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLDeclaration*::SetValue
    - CreateUnlinkedNode<XMLDeclaration>
    linkageType: ''
    returnType: XMLDeclaration
    signature: XMLDeclaration * XMLDocument::NewDeclaration( const char* str )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CreateUnlinkedNode<XMLUnknown>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2305,1
    - Dst: XMLUnknown*::SetValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2306,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2308
      start: 2303
    functionDepth: 0
    functionLinenumber: 2303
    functionLinenumberEnd: 2308
    functionName: tinyxml2::XMLDocument::NewUnknown
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLUnknown*::SetValue
    - CreateUnlinkedNode<XMLUnknown>
    linkageType: ''
    returnType: XMLUnknown
    signature: XMLUnknown * XMLDocument::NewUnknown( const char* str )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2312,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2313,1
    - Dst: fopen_s
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2316,1
    - Dst: fopen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2321,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - filepath
    - mode
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2324
      start: 2310
    functionDepth: 1
    functionLinenumber: 2310
    functionLinenumberEnd: 2324
    functionName: tinyxml2::callfopen
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - fopen_s
    - TIXMLASSERT
    - fopen
    linkageType: ''
    returnType: FILE
    signature: FILE * callfopen( const char* filepath, const char* mode )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2327,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2328,1
    - Dst: XMLNode*::_parent::DeleteChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2330,1
    - Dst: XMLNode*::_memPool::SetTracked
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2337,1
    - Dst: tinyxml2::XMLNode::DeleteNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2339,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2341
      start: 2326
    functionDepth: 2
    functionLinenumber: 2326
    functionLinenumberEnd: 2341
    functionName: tinyxml2::XMLDocument::DeleteNode
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - XMLNode*::_parent::DeleteChild
    - tinyxml2::XMLNode::DeleteNode
    - TIXMLASSERT
    - XMLNode*::_memPool::SetTracked
    linkageType: ''
    returnType: void
    signature: void XMLDocument::DeleteNode( XMLNode* node )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2347,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2348,1
    - Dst: tinyxml2::XMLDocument::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2352,1
    - Dst: callfopen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2353,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2355,1
    - Dst: tinyxml2::XMLDocument::LoadFile
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2358,1
    - Dst: fclose
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2359,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2361
      start: 2344
    functionDepth: 2
    functionLinenumber: 2344
    functionLinenumberEnd: 2361
    functionName: tinyxml2::XMLDocument::LoadFile
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 3
    functionsReached:
    - TIXMLASSERT
    - fclose
    - callfopen
    - tinyxml2::XMLDocument::LoadFile
    - tinyxml2::XMLDocument::SetError
    - tinyxml2::XMLDocument::Clear
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLDocument::LoadFile( const char* filename )
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2365,1
    - Dst: TIXML_FSEEK
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2367,1
    - Dst: fgetc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2368,1
    - Dst: ferror
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2368,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2369,1
    - Dst: TIXML_FSEEK
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2373,1
    - Dst: TIXML_FTELL
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2377,1
    - Dst: TIXML_FSEEK
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2378,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2380,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2383,1
    - Dst: static_cast<unsigned long long>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2384,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2387,1
    - Dst: static_cast<unsigned long long>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2390,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2392,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2397,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2401,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2402,1
    - Dst: char::char
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2403,1
    - Dst: fread
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2404,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2406,1
    - Dst: tinyxml2::XMLDocument::Parse
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2412,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 1
    argNames:
    - fp
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2414
      start: 2363
    functionDepth: 2
    functionLinenumber: 2363
    functionLinenumberEnd: 2414
    functionName: tinyxml2::XMLDocument::LoadFile
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 3
    functionsReached:
    - TIXML_FSEEK
    - char::char
    - static_cast<unsigned long long>
    - fgetc
    - ferror
    - fread
    - TIXMLASSERT
    - TIXML_FTELL
    - tinyxml2::XMLDocument::Parse
    - static_cast<size_t>
    - tinyxml2::XMLDocument::SetError
    - tinyxml2::XMLDocument::Clear
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLDocument::LoadFile( FILE* fp )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2420,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2421,1
    - Dst: callfopen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2425,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2427,1
    - Dst: tinyxml2::XMLDocument::SaveFile
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2430,1
    - Dst: fclose
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2431,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - filename
    - compact
    argTypes:
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2433
      start: 2417
    functionDepth: 1
    functionLinenumber: 2417
    functionLinenumberEnd: 2433
    functionName: tinyxml2::XMLDocument::SaveFile
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLDocument::SaveFile
    - TIXMLASSERT
    - fclose
    - callfopen
    - tinyxml2::XMLDocument::SetError
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLDocument::SaveFile( const char* filename, bool compact
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::ClearError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2440,1
    - Dst: tinyxml2::XMLDocument::Print
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - fp
    - compact
    argTypes:
    - FILE*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2444
      start: 2436
    functionDepth: 1
    functionLinenumber: 2436
    functionLinenumberEnd: 2444
    functionName: tinyxml2::XMLDocument::SaveFile
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLDocument::Print
    - tinyxml2::XMLDocument::ClearError
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLDocument::SaveFile( FILE* fp, bool compact )
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2449,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2452,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2455,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2456,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2458,1
    - Dst: char::char
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2459,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2460,1
    - Dst: tinyxml2::XMLDocument::Parse
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2463,1
    - Dst: Error
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2464,1
    - Dst: DeleteChildren
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2468,1
    - Dst: tinyxml2::XMLDocument::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2469,1
    - Dst: tinyxml2::XMLDocument::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2470,1
    - Dst: tinyxml2::XMLDocument::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2471,1
    - Dst: tinyxml2::XMLDocument::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2472,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - xml
    - nBytes
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2475
      start: 2447
    functionDepth: 2
    functionLinenumber: 2447
    functionLinenumberEnd: 2475
    functionName: tinyxml2::XMLDocument::Parse
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 4
    functionsReached:
    - char::char
    - memcpy
    - TIXMLASSERT
    - tinyxml2::XMLDocument::Parse
    - strlen
    - Error
    - DeleteChildren
    - static_cast<size_t>
    - tinyxml2::XMLDocument::SetError
    - tinyxml2::XMLDocument::Clear
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLDocument::Parse( const char* xml, size_t nBytes )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::Accept
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2481,1
    - Dst: tinyxml2::XMLDocument::Accept
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2485,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - streamer
    argTypes:
    - XMLPrinter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2487
      start: 2478
    functionDepth: 2
    functionLinenumber: 2478
    functionLinenumberEnd: 2487
    functionName: tinyxml2::XMLDocument::Print
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLDocument::Accept
    linkageType: ''
    returnType: void
    signature: void XMLDocument::Print( XMLPrinter* streamer ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2493,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2494
      start: 2490
    functionDepth: 0
    functionLinenumber: 2490
    functionLinenumberEnd: 2494
    functionName: tinyxml2::XMLDocument::ClearError
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - Reset
    linkageType: ''
    returnType: void
    signature: void XMLDocument::ClearError()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2499,1
    - Dst: Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2502,1
    - Dst: char::char
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2505,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2507,1
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2508,1
    - Dst: tinyxml2::XMLDocument::ErrorIDToName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2509,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2509,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2509,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2512,1
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2513,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2514,1
    - Dst: va_start
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2517,1
    - Dst: TIXML_VSNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2518,1
    - Dst: va_end
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2519,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2521,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 3
    argNames:
    - error
    - lineNum
    - format
    argTypes:
    - XMLError
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2523
      start: 2497
    functionDepth: 1
    functionLinenumber: 2497
    functionLinenumberEnd: 2523
    functionName: tinyxml2::XMLDocument::SetError
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 4
    functionsReached:
    - Reset
    - char::char
    - static_cast<unsigned int>
    - va_start
    - va_end
    - TIXML_VSNPRINTF
    - SetStr
    - TIXMLASSERT
    - tinyxml2::XMLDocument::ErrorIDToName
    - strlen
    - TIXML_SNPRINTF
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void XMLDocument::SetError( XMLError error, int lineNum, const char*
      format, ... )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2528,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2530,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - errorID
    argTypes:
    - XMLError
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2532
      start: 2526
    functionDepth: 1
    functionLinenumber: 2526
    functionLinenumberEnd: 2532
    functionName: tinyxml2::XMLDocument::ErrorIDToName
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: char
    signature: char * XMLDocument::ErrorIDToName(XMLError errorID)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Empty
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2536,1
    - Dst: GetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2536,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2537
      start: 2534
    functionDepth: 0
    functionLinenumber: 2534
    functionLinenumberEnd: 2537
    functionName: tinyxml2::XMLDocument::ErrorStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - Empty
    - GetStr
    linkageType: ''
    returnType: char
    signature: char * XMLDocument::ErrorStr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2542,1
    - Dst: tinyxml2::XMLDocument::ErrorStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2542,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2543
      start: 2540
    functionDepth: 1
    functionLinenumber: 2540
    functionLinenumberEnd: 2543
    functionName: tinyxml2::XMLDocument::PrintError
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLDocument::ErrorStr
    - printf
    linkageType: ''
    returnType: void
    signature: void XMLDocument::PrintError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::ErrorIDToName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2547,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2548
      start: 2545
    functionDepth: 2
    functionLinenumber: 2545
    functionLinenumberEnd: 2548
    functionName: tinyxml2::XMLDocument::ErrorName
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLDocument::ErrorIDToName
    linkageType: ''
    returnType: char
    signature: char * XMLDocument::ErrorName() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2552,1
    - Dst: NoChildren
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2552,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2553,1
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2557,1
    - Dst: const_cast<char*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2558,1
    - Dst: tinyxml2::XMLUtil::ReadBOM
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2558,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2560,1
    - Dst: ParseDeep
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2563,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2564
      start: 2550
    functionDepth: 2
    functionLinenumber: 2550
    functionLinenumberEnd: 2564
    functionName: tinyxml2::XMLDocument::Parse
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 4
    functionsReached:
    - NoChildren
    - tinyxml2::XMLUtil::ReadBOM
    - TIXMLASSERT
    - tinyxml2::SkipWhiteSpace
    - ParseDeep
    - const_cast<char*>
    - tinyxml2::XMLDocument::SetError
    linkageType: ''
    returnType: void
    signature: void XMLDocument::Parse()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2570,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2572
      start: 2566
    functionDepth: 2
    functionLinenumber: 2566
    functionLinenumberEnd: 2572
    functionName: tinyxml2::XMLDocument::PushDepth
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLDocument::SetError
    linkageType: ''
    returnType: void
    signature: void XMLDocument::PushDepth()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2576,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2578
      start: 2574
    functionDepth: 1
    functionLinenumber: 2574
    functionLinenumberEnd: 2578
    functionName: tinyxml2::XMLDocument::PopDepth
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void XMLDocument::PopDepth()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2597,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2598,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2601,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2602,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2603,1
    - Dst: Push
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2604,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - file
    - compact
    - depth
    argTypes:
    - FILE*
    - bool
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2605
      start: 2580
    functionDepth: 1
    functionLinenumber: 2580
    functionLinenumberEnd: 2605
    functionName: tinyxml2::XMLPrinter::XMLPrinter
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    - Push
    - static_cast<unsigned char>
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::XMLPrinter( FILE* file, bool compact, int depth )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2611,1
    - Dst: vfprintf
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2614,1
    - Dst: TIXML_VSCPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2617,1
    - Dst: va_end
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2619,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2620,1
    - Dst: va_start
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2621,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2622,1
    - Dst: Size
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2622,1
    - Dst: Size
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2622,1
    - Dst: PushArr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2623,1
    - Dst: TIXML_VSNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2624,1
    - Dst: va_end
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2626,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - format
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2627
      start: 2608
    functionDepth: 2
    functionLinenumber: 2608
    functionLinenumberEnd: 2627
    functionName: tinyxml2::XMLPrinter::Print
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - va_start
    - va_end
    - TIXML_VSNPRINTF
    - vfprintf
    - TIXMLASSERT
    - TIXML_VSCPRINTF
    - Size
    - PushArr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::Print( const char* format, ... )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fwrite
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2633,1
    - Dst: PushArr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2636,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2636,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2637,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2640
      start: 2630
    functionDepth: 0
    functionLinenumber: 2630
    functionLinenumberEnd: 2640
    functionName: tinyxml2::XMLPrinter::Write
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - fwrite
    - memcpy
    - static_cast<int>
    - PushArr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::Write( const char* data, size_t size )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fputc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2646,1
    - Dst: PushArr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2649,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ch
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2653
      start: 2643
    functionDepth: 0
    functionLinenumber: 2643
    functionLinenumberEnd: 2653
    functionName: tinyxml2::XMLPrinter::Putc
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - fputc
    - PushArr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::Putc( char ch )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2659,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - depth
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2661
      start: 2656
    functionDepth: 0
    functionLinenumber: 2656
    functionLinenumberEnd: 2661
    functionName: tinyxml2::XMLPrinter::PrintSpace
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::Write
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PrintSpace( int depth )
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2672,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2678,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2681,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2682,1
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2688,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2689,1
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2690,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2697,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2703,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2709,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2710,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2714,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 34
    argCount: 2
    argNames:
    - p
    - restricted
    argTypes:
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2716
      start: 2664
    functionDepth: 1
    functionLinenumber: 2664
    functionLinenumberEnd: 2716
    functionName: tinyxml2::XMLPrinter::PrintString
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::Write
    - TIXMLASSERT
    - static_cast<unsigned char>
    - tinyxml2::XMLPrinter::Putc
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PrintString( const char* p, bool restricted )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2723,1
    - Dst: reinterpret_cast< const char* >
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2723,1
    - Dst: tinyxml2::XMLPrinter::PushDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2726,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - writeBOM
    - writeDec
    argTypes:
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2728
      start: 2719
    functionDepth: 1
    functionLinenumber: 2719
    functionLinenumberEnd: 2728
    functionName: tinyxml2::XMLPrinter::PushHeader
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::Write
    - tinyxml2::XMLPrinter::PushDeclaration
    - reinterpret_cast< const char* >
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushHeader( bool writeBOM, bool writeDec )
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::SealElementIfJustOpened
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2732,1
    - Dst: tinyxml2::XMLPrinter::PrintSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2739,1
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2741,1
    - Dst: tinyxml2::XMLPrinter::PrintSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2742,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - compactMode
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2746
      start: 2730
    functionDepth: 1
    functionLinenumber: 2730
    functionLinenumberEnd: 2746
    functionName: tinyxml2::XMLPrinter::PrepareForNewNode
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::SealElementIfJustOpened
    - tinyxml2::XMLPrinter::Putc
    - tinyxml2::XMLPrinter::PrintSpace
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PrepareForNewNode( bool compactMode )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::PrepareForNewNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2750,1
    - Dst: Push
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2751,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2753,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2754,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - name
    - compactMode
    argTypes:
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2758
      start: 2748
    functionDepth: 2
    functionLinenumber: 2748
    functionLinenumberEnd: 2758
    functionName: tinyxml2::XMLPrinter::OpenElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::Write
    - tinyxml2::XMLPrinter::PrepareForNewNode
    - Push
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::OpenElement( const char* name, bool compactMode )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2763,1
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2764,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2765,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2766,1
    - Dst: tinyxml2::XMLPrinter::PrintString
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2767,1
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2768,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2769
      start: 2761
    functionDepth: 2
    functionLinenumber: 2761
    functionLinenumberEnd: 2769
    functionName: tinyxml2::XMLPrinter::PushAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::Putc
    - TIXMLASSERT
    - tinyxml2::XMLPrinter::PrintString
    - tinyxml2::XMLPrinter::Write
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushAttribute( const char* name, const char* value
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2775,1
    - Dst: tinyxml2::XMLPrinter::PushAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2776,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - v
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2777
      start: 2772
    functionDepth: 1
    functionLinenumber: 2772
    functionLinenumberEnd: 2777
    functionName: tinyxml2::XMLPrinter::PushAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLPrinter::PushAttribute
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushAttribute( const char* name, int v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2783,1
    - Dst: tinyxml2::XMLPrinter::PushAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2784,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - v
    argTypes:
    - char*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2785
      start: 2780
    functionDepth: 1
    functionLinenumber: 2780
    functionLinenumberEnd: 2785
    functionName: tinyxml2::XMLPrinter::PushAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - tinyxml2::XMLPrinter::PushAttribute
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushAttribute( const char* name, unsigned v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2791,1
    - Dst: tinyxml2::XMLPrinter::PushAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2792,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - v
    argTypes:
    - char*
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2793
      start: 2788
    functionDepth: 1
    functionLinenumber: 2788
    functionLinenumberEnd: 2793
    functionName: tinyxml2::XMLPrinter::PushAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 3
    functionsReached:
    - tinyxml2::XMLPrinter::PushAttribute
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushAttribute(const char* name, int64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2799,1
    - Dst: tinyxml2::XMLPrinter::PushAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2800,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - v
    argTypes:
    - char*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2801
      start: 2796
    functionDepth: 1
    functionLinenumber: 2796
    functionLinenumberEnd: 2801
    functionName: tinyxml2::XMLPrinter::PushAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 4
    functionsReached:
    - tinyxml2::XMLPrinter::PushAttribute
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushAttribute(const char* name, uint64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2807,1
    - Dst: tinyxml2::XMLPrinter::PushAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2808,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - v
    argTypes:
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2809
      start: 2804
    functionDepth: 1
    functionLinenumber: 2804
    functionLinenumberEnd: 2809
    functionName: tinyxml2::XMLPrinter::PushAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 5
    functionsReached:
    - tinyxml2::XMLPrinter::PushAttribute
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushAttribute( const char* name, bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2815,1
    - Dst: tinyxml2::XMLPrinter::PushAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2816,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - v
    argTypes:
    - char*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2817
      start: 2812
    functionDepth: 1
    functionLinenumber: 2812
    functionLinenumberEnd: 2817
    functionName: tinyxml2::XMLPrinter::PushAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 6
    functionsReached:
    - tinyxml2::XMLPrinter::PushAttribute
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushAttribute( const char* name, double v )
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Pop
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2823,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2826,1
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2830,1
    - Dst: tinyxml2::XMLPrinter::PrintSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2831,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2833,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2834,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2835,1
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2842,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - compactMode
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2845
      start: 2820
    functionDepth: 1
    functionLinenumber: 2820
    functionLinenumberEnd: 2845
    functionName: tinyxml2::XMLPrinter::CloseElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::Write
    - Pop
    - tinyxml2::XMLPrinter::PrintSpace
    - tinyxml2::XMLPrinter::Putc
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::CloseElement( bool compactMode )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2854,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2855
      start: 2848
    functionDepth: 1
    functionLinenumber: 2848
    functionLinenumberEnd: 2855
    functionName: tinyxml2::XMLPrinter::SealElementIfJustOpened
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLPrinter::Putc
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::SealElementIfJustOpened()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::SealElementIfJustOpened
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2862,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2864,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2865,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2866,1
    - Dst: tinyxml2::XMLPrinter::PrintString
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2869,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - text
    - cdata
    argTypes:
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2871
      start: 2858
    functionDepth: 2
    functionLinenumber: 2858
    functionLinenumberEnd: 2871
    functionName: tinyxml2::XMLPrinter::PushText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::SealElementIfJustOpened
    - tinyxml2::XMLPrinter::PrintString
    - tinyxml2::XMLPrinter::Write
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushText( const char* text, bool cdata )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2877,1
    - Dst: tinyxml2::XMLPrinter::PushText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2878,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2879
      start: 2874
    functionDepth: 1
    functionLinenumber: 2874
    functionLinenumberEnd: 2879
    functionName: tinyxml2::XMLPrinter::PushText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLPrinter::PushText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushText( int64_t value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2885,1
    - Dst: tinyxml2::XMLPrinter::PushText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2886,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2887
      start: 2882
    functionDepth: 1
    functionLinenumber: 2882
    functionLinenumberEnd: 2887
    functionName: tinyxml2::XMLPrinter::PushText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - tinyxml2::XMLPrinter::PushText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushText( uint64_t value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2893,1
    - Dst: tinyxml2::XMLPrinter::PushText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2894,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2895
      start: 2890
    functionDepth: 1
    functionLinenumber: 2890
    functionLinenumberEnd: 2895
    functionName: tinyxml2::XMLPrinter::PushText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 3
    functionsReached:
    - tinyxml2::XMLPrinter::PushText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushText( int value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2901,1
    - Dst: tinyxml2::XMLPrinter::PushText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2902,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2903
      start: 2898
    functionDepth: 1
    functionLinenumber: 2898
    functionLinenumberEnd: 2903
    functionName: tinyxml2::XMLPrinter::PushText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 4
    functionsReached:
    - tinyxml2::XMLPrinter::PushText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushText( unsigned value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2909,1
    - Dst: tinyxml2::XMLPrinter::PushText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2910,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2911
      start: 2906
    functionDepth: 1
    functionLinenumber: 2906
    functionLinenumberEnd: 2911
    functionName: tinyxml2::XMLPrinter::PushText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 5
    functionsReached:
    - tinyxml2::XMLPrinter::PushText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushText( bool value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2917,1
    - Dst: tinyxml2::XMLPrinter::PushText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2918,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2919
      start: 2914
    functionDepth: 1
    functionLinenumber: 2914
    functionLinenumberEnd: 2919
    functionName: tinyxml2::XMLPrinter::PushText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 6
    functionsReached:
    - tinyxml2::XMLPrinter::PushText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushText( float value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2925,1
    - Dst: tinyxml2::XMLPrinter::PushText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2926,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2927
      start: 2922
    functionDepth: 1
    functionLinenumber: 2922
    functionLinenumberEnd: 2927
    functionName: tinyxml2::XMLPrinter::PushText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 7
    functionsReached:
    - tinyxml2::XMLPrinter::PushText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushText( double value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::PrepareForNewNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2932,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2934,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2935,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2936,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - comment
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2937
      start: 2930
    functionDepth: 2
    functionLinenumber: 2930
    functionLinenumberEnd: 2937
    functionName: tinyxml2::XMLPrinter::PushComment
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::Write
    - tinyxml2::XMLPrinter::PrepareForNewNode
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushComment( const char* comment )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::PrepareForNewNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2942,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2944,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2945,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2946,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2947
      start: 2940
    functionDepth: 2
    functionLinenumber: 2940
    functionLinenumberEnd: 2947
    functionName: tinyxml2::XMLPrinter::PushDeclaration
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLPrinter::Write
    - tinyxml2::XMLPrinter::PrepareForNewNode
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushDeclaration( const char* value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::PrepareForNewNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2952,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2954,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2955,1
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2956,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2957
      start: 2950
    functionDepth: 2
    functionLinenumber: 2950
    functionLinenumberEnd: 2957
    functionName: tinyxml2::XMLPrinter::PushUnknown
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::Write
    - tinyxml2::XMLPrinter::Putc
    - tinyxml2::XMLPrinter::PrepareForNewNode
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushUnknown( const char* value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ProcessEntities
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2962,1
    - Dst: HasBOM
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2963,1
    - Dst: tinyxml2::XMLPrinter::PushHeader
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2964,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' doc'
    argTypes:
    - XMLDocument
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2967
      start: 2960
    functionDepth: 2
    functionLinenumber: 2960
    functionLinenumberEnd: 2967
    functionName: tinyxml2::XMLPrinter::VisitEnter
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - HasBOM
    - ProcessEntities
    - tinyxml2::XMLPrinter::PushHeader
    linkageType: ''
    returnType: bool
    signature: bool XMLPrinter::VisitEnter( const XMLDocument& doc )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Parent
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2973,1
    - Dst: Parent
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2974,1
    - Dst: CompactMode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2976,1
    - Dst: tinyxml2::XMLPrinter::OpenElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2977,1
    - Dst: Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2977,1
    - Dst: tinyxml2::XMLPrinter::PushAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2979,1
    - Dst: XMLAttribute*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2979,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2979,1
    - Dst: XMLAttribute*::Next
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2980,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ' element'
    - attribute
    argTypes:
    - XMLElement
    - XMLAttribute*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2983
      start: 2970
    functionDepth: 3
    functionLinenumber: 2970
    functionLinenumberEnd: 2983
    functionName: tinyxml2::XMLPrinter::VisitEnter
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLAttribute*::Value
    - tinyxml2::XMLPrinter::PushAttribute
    - XMLAttribute*::Next
    - CompactMode
    - Name
    - Parent
    - tinyxml2::XMLPrinter::OpenElement
    - XMLAttribute*::Name
    linkageType: ''
    returnType: bool
    signature: bool XMLPrinter::VisitEnter( const XMLElement& element, const XMLAttribute*
      attribute )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::CloseElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2988,1
    - Dst: CompactMode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2988,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' element'
    argTypes:
    - XMLElement
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2990
      start: 2986
    functionDepth: 2
    functionLinenumber: 2986
    functionLinenumberEnd: 2990
    functionName: tinyxml2::XMLPrinter::VisitExit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - CompactMode
    - tinyxml2::XMLPrinter::CloseElement
    linkageType: ''
    returnType: bool
    signature: bool XMLPrinter::VisitExit( const XMLElement& element )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::PushText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2995,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2995,1
    - Dst: CData
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2995,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' text'
    argTypes:
    - XMLText
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2997
      start: 2993
    functionDepth: 3
    functionLinenumber: 2993
    functionLinenumberEnd: 2997
    functionName: tinyxml2::XMLPrinter::Visit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::PushText
    - CData
    - Value
    linkageType: ''
    returnType: bool
    signature: bool XMLPrinter::Visit( const XMLText& text )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::PushComment
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:3002,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:3002,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' comment'
    argTypes:
    - XMLComment
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3004
      start: 3000
    functionDepth: 3
    functionLinenumber: 3000
    functionLinenumberEnd: 3004
    functionName: tinyxml2::XMLPrinter::Visit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::PushComment
    - Value
    linkageType: ''
    returnType: bool
    signature: bool XMLPrinter::Visit( const XMLComment& comment )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::PushDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:3008,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:3008,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' declaration'
    argTypes:
    - XMLDeclaration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3010
      start: 3006
    functionDepth: 3
    functionLinenumber: 3006
    functionLinenumberEnd: 3010
    functionName: tinyxml2::XMLPrinter::Visit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::PushDeclaration
    - Value
    linkageType: ''
    returnType: bool
    signature: bool XMLPrinter::Visit( const XMLDeclaration& declaration )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::PushUnknown
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:3015,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:3015,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' unknown'
    argTypes:
    - XMLUnknown
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3017
      start: 3013
    functionDepth: 3
    functionLinenumber: 3013
    functionLinenumberEnd: 3017
    functionName: tinyxml2::XMLPrinter::Visit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::PushUnknown
    - Value
    linkageType: ''
    returnType: bool
    signature: bool XMLPrinter::Visit( const XMLUnknown& unknown )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:154,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 155
      start: 152
    functionDepth: 0
    functionLinenumber: 152
    functionLinenumberEnd: 155
    functionName: StrPair::~StrPair()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - Reset
    linkageType: ''
    returnType: void
    signature: void StrPair::~StrPair()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:166,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:167,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:168,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:169,1
    - Dst: StrPair*::Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:171,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 15
    argCount: 1
    argNames:
    - other
    argTypes:
    - StrPair*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 180
      start: 158
    functionDepth: 1
    functionLinenumber: 158
    functionLinenumberEnd: 180
    functionName: tinyxml2::StrPair::TransferTo
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    - StrPair*::Reset
    linkageType: ''
    returnType: void
    signature: void StrPair::TransferTo( StrPair* other )
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 191
      start: 183
    functionDepth: 0
    functionLinenumber: 183
    functionLinenumberEnd: 191
    functionName: tinyxml2::StrPair::Reset
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StrPair::Reset()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:196,1
    - Dst: tinyxml2::StrPair::Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:197,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:198,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:199,1
    - Dst: char::char
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:200,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:201,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 8
    argCount: 2
    argNames:
    - str
    - flags
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 204
      start: 194
    functionDepth: 1
    functionLinenumber: 194
    functionLinenumberEnd: 204
    functionName: tinyxml2::StrPair::SetStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - char::char
    - memcpy
    - tinyxml2::StrPair::Reset
    - TIXMLASSERT
    - strlen
    linkageType: ''
    returnType: void
    signature: void StrPair::SetStr( const char* str, int flags )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:209,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:210,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:211,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:215,1
    - Dst: strncmp
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:219,1
    - Dst: Set
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:220,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:226,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 4
    argNames:
    - p
    - endTag
    - strFlags
    - curLineNumPtr
    argTypes:
    - char*
    - char*
    - int
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 229
      start: 207
    functionDepth: 1
    functionLinenumber: 207
    functionLinenumberEnd: 229
    functionName: tinyxml2::StrPair::ParseText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - strlen
    - TIXMLASSERT
    - Set
    - strncmp
    linkageType: ''
    returnType: char
    signature: char * StrPair::ParseText( char* p, const char* endTag, int strFlags,
      int* curLineNumPtr )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::IsNameStartChar
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:237,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:237,1
    - Dst: tinyxml2::IsNameChar
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:243,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:243,1
    - Dst: Set
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:247,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 13
    argCount: 1
    argNames:
    - p
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 249
      start: 232
    functionDepth: 1
    functionLinenumber: 232
    functionLinenumberEnd: 249
    functionName: tinyxml2::StrPair::ParseName
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::IsNameChar
    - tinyxml2::IsNameStartChar
    - Set
    - static_cast<unsigned char>
    linkageType: ''
    returnType: char
    signature: char * StrPair::ParseName( char* p )
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:255,1
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:257,1
    - Dst: tinyxml2::IsWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:264,1
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:265,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 278
      start: 252
    functionDepth: 1
    functionLinenumber: 252
    functionLinenumberEnd: 278
    functionName: tinyxml2::StrPair::CollapseWhitespace
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::IsWhiteSpace
    - tinyxml2::SkipWhiteSpace
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void StrPair::CollapseWhitespace()
  - BBCount: 13
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:283,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:284,1
    - Dst: const_cast<char*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:327,1
    - Dst: tinyxml2::XMLUtil::GetCharacterRef
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:327,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:334,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:335,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:337,1
    - Dst: strncmp
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:345,1
    - Dst: tinyxml2::StrPair::CollapseWhitespace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:373,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:377,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 69
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 379
      start: 281
    functionDepth: 3
    functionLinenumber: 281
    functionLinenumberEnd: 379
    functionName: tinyxml2::StrPair::GetStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::StrPair::CollapseWhitespace
    - memcpy
    - strncmp
    - TIXMLASSERT
    - tinyxml2::XMLUtil::GetCharacterRef
    - const_cast<char*>
    linkageType: ''
    returnType: char
    signature: char * StrPair::GetStr()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - writeTrue
    - writeFalse
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 396
      start: 389
    functionDepth: 0
    functionLinenumber: 389
    functionLinenumberEnd: 396
    functionName: tinyxml2::XMLUtil::SetBoolSerialization
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLUtil::SetBoolSerialization(const char* writeTrue, const char*
      writeFalse)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:401,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:402,1
    - Dst: reinterpret_cast<const unsigned char*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:404,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:412,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 10
    argCount: 2
    argNames:
    - p
    - bom
    argTypes:
    - char*
    - bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 414
      start: 399
    functionDepth: 1
    functionLinenumber: 399
    functionLinenumberEnd: 414
    functionName: tinyxml2::XMLUtil::ReadBOM
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - TIXMLASSERT
    - reinterpret_cast<const unsigned char*>
    linkageType: ''
    returnType: char
    signature: char * XMLUtil::ReadBOM( const char* p, bool* bom )
  - BBCount: 10
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:447,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:452,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:457,1
    - Dst: static_cast<char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:462,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:465,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 37
    argCount: 3
    argNames:
    - input
    - output
    - length
    argTypes:
    - unsigned long
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 467
      start: 417
    functionDepth: 1
    functionLinenumber: 417
    functionLinenumberEnd: 467
    functionName: tinyxml2::XMLUtil::ConvertUTF32ToUTF8
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - static_cast<char>
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void XMLUtil::ConvertUTF32ToUTF8( unsigned long input, char* output,
      int* length )
  - BBCount: 11
    BranchProfiles: []
    Callsites:
    - Dst: strchr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:504,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:508,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:528,1
    - Dst: tinyxml2::XMLUtil::ConvertUTF32ToUTF8
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:547,1
    CyclomaticComplexity: 17
    EdgeCount: 17
    ICount: 51
    argCount: 3
    argNames:
    - p
    - value
    - length
    argTypes:
    - char*
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 556
      start: 470
    functionDepth: 2
    functionLinenumber: 470
    functionLinenumberEnd: 556
    functionName: tinyxml2::XMLUtil::GetCharacterRef
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - TIXMLASSERT
    - strchr
    - tinyxml2::XMLUtil::ConvertUTF32ToUTF8
    linkageType: ''
    returnType: char
    signature: char * XMLUtil::GetCharacterRef(const char* p, char* value, int* length)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:560,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - buffer
    - bufferSize
    argTypes:
    - int
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 558
    functionDepth: 1
    functionLinenumber: 558
    functionLinenumberEnd: 561
    functionName: tinyxml2::XMLUtil::ToStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 27
    functionsReached:
    - TIXML_SNPRINTF
    linkageType: ''
    returnType: void
    signature: void XMLUtil::ToStr( int v, char* buffer, int bufferSize )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:566,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - buffer
    - bufferSize
    argTypes:
    - unsigned
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 567
      start: 564
    functionDepth: 1
    functionLinenumber: 564
    functionLinenumberEnd: 567
    functionName: tinyxml2::XMLUtil::ToStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 27
    functionsReached:
    - TIXML_SNPRINTF
    linkageType: ''
    returnType: void
    signature: void XMLUtil::ToStr( unsigned v, char* buffer, int bufferSize )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - buffer
    - bufferSize
    argTypes:
    - bool
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 573
      start: 570
    functionDepth: 1
    functionLinenumber: 570
    functionLinenumberEnd: 573
    functionName: tinyxml2::XMLUtil::ToStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 27
    functionsReached:
    - TIXML_SNPRINTF
    linkageType: ''
    returnType: void
    signature: void XMLUtil::ToStr( bool v, char* buffer, int bufferSize )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:581,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - buffer
    - bufferSize
    argTypes:
    - float
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 582
      start: 579
    functionDepth: 1
    functionLinenumber: 579
    functionLinenumberEnd: 582
    functionName: tinyxml2::XMLUtil::ToStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 27
    functionsReached:
    - TIXML_SNPRINTF
    linkageType: ''
    returnType: void
    signature: void XMLUtil::ToStr( float v, char* buffer, int bufferSize )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - buffer
    - bufferSize
    argTypes:
    - double
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 585
    functionDepth: 1
    functionLinenumber: 585
    functionLinenumberEnd: 588
    functionName: tinyxml2::XMLUtil::ToStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 27
    functionsReached:
    - TIXML_SNPRINTF
    linkageType: ''
    returnType: void
    signature: void XMLUtil::ToStr( double v, char* buffer, int bufferSize )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:594,1
    - Dst: static_cast<long long>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:594,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - buffer
    - bufferSize
    argTypes:
    - int64_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 595
      start: 591
    functionDepth: 1
    functionLinenumber: 591
    functionLinenumberEnd: 595
    functionName: tinyxml2::XMLUtil::ToStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 27
    functionsReached:
    - static_cast<long long>
    - TIXML_SNPRINTF
    linkageType: ''
    returnType: void
    signature: void XMLUtil::ToStr( int64_t v, char* buffer, int bufferSize )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:600,1
    - Dst: static_cast<unsigned long long>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:600,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 3
    argNames:
    - v
    - buffer
    - bufferSize
    argTypes:
    - uint64_t
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 601
      start: 597
    functionDepth: 1
    functionLinenumber: 597
    functionLinenumberEnd: 601
    functionName: tinyxml2::XMLUtil::ToStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 27
    functionsReached:
    - static_cast<unsigned long long>
    - TIXML_SNPRINTF
    linkageType: ''
    returnType: void
    signature: void XMLUtil::ToStr( uint64_t v, char* buffer, int bufferSize )
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: IsPrefixHex
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:605,1
    - Dst: TIXML_SSCANF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:607,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:608,1
    - Dst: TIXML_SSCANF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:613,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - str
    - value
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 618
      start: 603
    functionDepth: 0
    functionLinenumber: 603
    functionLinenumberEnd: 618
    functionName: tinyxml2::XMLUtil::ToInt
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 3
    functionsReached:
    - static_cast<int>
    - TIXML_SSCANF
    - IsPrefixHex
    linkageType: ''
    returnType: bool
    signature: bool XMLUtil::ToInt(const char* str, int* value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SSCANF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:622,1
    - Dst: IsPrefixHex
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:622,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - str
    - value
    argTypes:
    - char*
    - unsigned*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 626
      start: 620
    functionDepth: 0
    functionLinenumber: 620
    functionLinenumberEnd: 626
    functionName: tinyxml2::XMLUtil::ToUnsigned
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - TIXML_SSCANF
    - IsPrefixHex
    linkageType: ''
    returnType: bool
    signature: bool XMLUtil::ToUnsigned(const char* str, unsigned* value)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToInt
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:631,1
    - Dst: StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:639,1
    - Dst: StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:645,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 2
    argNames:
    - str
    - value
    argTypes:
    - char*
    - bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 651
      start: 628
    functionDepth: 1
    functionLinenumber: 628
    functionLinenumberEnd: 651
    functionName: tinyxml2::XMLUtil::ToBool
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - StringEqual
    - tinyxml2::XMLUtil::ToInt
    linkageType: ''
    returnType: bool
    signature: bool XMLUtil::ToBool( const char* str, bool* value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SSCANF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:656,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - str
    - value
    argTypes:
    - char*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 660
      start: 654
    functionDepth: 0
    functionLinenumber: 654
    functionLinenumberEnd: 660
    functionName: tinyxml2::XMLUtil::ToFloat
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - TIXML_SSCANF
    linkageType: ''
    returnType: bool
    signature: bool XMLUtil::ToFloat( const char* str, float* value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SSCANF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:665,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - str
    - value
    argTypes:
    - char*
    - double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 669
      start: 663
    functionDepth: 0
    functionLinenumber: 663
    functionLinenumberEnd: 669
    functionName: tinyxml2::XMLUtil::ToDouble
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - TIXML_SSCANF
    linkageType: ''
    returnType: bool
    signature: bool XMLUtil::ToDouble( const char* str, double* value )
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: IsPrefixHex
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:674,1
    - Dst: TIXML_SSCANF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:676,1
    - Dst: static_cast<int64_t>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:677,1
    - Dst: TIXML_SSCANF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:683,1
    - Dst: static_cast<int64_t>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:684,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 2
    argNames:
    - str
    - value
    argTypes:
    - char*
    - int64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 689
      start: 672
    functionDepth: 0
    functionLinenumber: 672
    functionLinenumberEnd: 689
    functionName: tinyxml2::XMLUtil::ToInt64
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - static_cast<int64_t>
    - TIXML_SSCANF
    - IsPrefixHex
    linkageType: ''
    returnType: bool
    signature: bool XMLUtil::ToInt64(const char* str, int64_t* value)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXML_SSCANF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:694,1
    - Dst: IsPrefixHex
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:694,1
    - Dst: static_cast<uint64_t>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:695,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - str
    - value
    argTypes:
    - char*
    - uint64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 699
      start: 692
    functionDepth: 0
    functionLinenumber: 692
    functionLinenumberEnd: 699
    functionName: tinyxml2::XMLUtil::ToUnsigned64
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - static_cast<uint64_t>
    - TIXML_SSCANF
    - IsPrefixHex
    linkageType: ''
    returnType: bool
    signature: bool XMLUtil::ToUnsigned64(const char* str, uint64_t* value)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:704,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:705,1
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:708,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:711,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:728,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:729,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:731,1
    - Dst: CreateUnlinkedNode<XMLDeclaration>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:732,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:736,1
    - Dst: CreateUnlinkedNode<XMLComment>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:737,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:741,1
    - Dst: CreateUnlinkedNode<XMLText>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:742,1
    - Dst: XMLText*::SetCData
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:746,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:748,1
    - Dst: CreateUnlinkedNode<XMLUnknown>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:749,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:753,1
    - Dst: WhitespaceMode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:756,1
    - Dst: CreateUnlinkedNode<XMLText>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:757,1
    - Dst: CreateUnlinkedNode<XMLElement>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:763,1
    - Dst: CreateUnlinkedNode<XMLText>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:769,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:775,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:776,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 53
    argCount: 3
    argNames:
    - p
    - node
    - first
    argTypes:
    - char*
    - XMLNode**
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 779
      start: 702
    functionDepth: 1
    functionLinenumber: 702
    functionLinenumberEnd: 779
    functionName: tinyxml2::XMLDocument::Identify
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - WhitespaceMode
    - CreateUnlinkedNode<XMLComment>
    - CreateUnlinkedNode<XMLElement>
    - CreateUnlinkedNode<XMLText>
    - TIXMLASSERT
    - tinyxml2::SkipWhiteSpace
    - XMLText*::SetCData
    - CreateUnlinkedNode<XMLUnknown>
    - tinyxml2::StringEqual
    - CreateUnlinkedNode<XMLDeclaration>
    linkageType: ''
    returnType: char
    signature: char * XMLDocument::Identify( char* p, XMLNode** node, bool first )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:784,1
    - Dst: XMLVisitor*::VisitEnter
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:785,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:786,1
    - Dst: XMLNode*::NextSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:786,1
    - Dst: XMLNode*::Accept
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:787,1
    - Dst: XMLVisitor*::VisitExit
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:792,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - visitor
    argTypes:
    - XMLVisitor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 793
      start: 782
    functionDepth: 1
    functionLinenumber: 782
    functionLinenumberEnd: 793
    functionName: tinyxml2::XMLDocument::Accept
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - XMLNode*::NextSibling
    - TIXMLASSERT
    - XMLVisitor*::VisitExit
    - XMLNode*::Accept
    - XMLVisitor*::VisitEnter
    - FirstChild
    linkageType: ''
    returnType: bool
    signature: bool XMLDocument::Accept( XMLVisitor* visitor ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 808
      start: 798
    functionDepth: 0
    functionLinenumber: 798
    functionLinenumberEnd: 808
    functionName: tinyxml2::XMLNode::XMLNode
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLNode::XMLNode( XMLDocument* doc )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteChildren
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:813,1
    - Dst: Unlink
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:815,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 817
      start: 811
    functionDepth: 0
    functionLinenumber: 811
    functionLinenumberEnd: 817
    functionName: XMLNode::~XMLNode()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - DeleteChildren
    - Unlink
    linkageType: ''
    returnType: void
    signature: void XMLNode::~XMLNode()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLNode::FirstChildElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:824,1
    - Dst: XMLElement*::NextSiblingElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:827,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - value
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 832
      start: 821
    functionDepth: 1
    functionLinenumber: 821
    functionLinenumberEnd: 832
    functionName: tinyxml2::XMLNode::ChildElementCount
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLElement*::NextSiblingElement
    - tinyxml2::XMLNode::FirstChildElement
    linkageType: ''
    returnType: int
    signature: int XMLNode::ChildElementCount(const char *value) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLNode::FirstChildElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:837,1
    - Dst: XMLElement*::NextSiblingElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:840,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 845
      start: 834
    functionDepth: 1
    functionLinenumber: 834
    functionLinenumberEnd: 845
    functionName: tinyxml2::XMLNode::ChildElementCount
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLElement*::NextSiblingElement
    - tinyxml2::XMLNode::FirstChildElement
    linkageType: ''
    returnType: int
    signature: int XMLNode::ChildElementCount() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLNode::ToDocument
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:850,1
    - Dst: GetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:852,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 853
      start: 847
    functionDepth: 1
    functionLinenumber: 847
    functionLinenumberEnd: 853
    functionName: tinyxml2::XMLNode::Value
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLNode::ToDocument
    - GetStr
    linkageType: ''
    returnType: char
    signature: char * XMLNode::Value() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: SetInternedStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:858,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:861,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - str
    - staticMem
    argTypes:
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 863
      start: 855
    functionDepth: 0
    functionLinenumber: 855
    functionLinenumberEnd: 863
    functionName: tinyxml2::XMLNode::SetValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetInternedStr
    - SetStr
    linkageType: ''
    returnType: void
    signature: void XMLNode::SetValue( const char* str, bool staticMem )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLNode::ShallowClone
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:867,1
    - Dst: tinyxml2::XMLNode::FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:870,1
    - Dst: XMLNode*::NextSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:870,1
    - Dst: XMLNode*::DeepClone
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:871,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:872,1
    - Dst: XMLNode*::InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:873,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - target
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 876
      start: 865
    functionDepth: 1
    functionLinenumber: 865
    functionLinenumberEnd: 876
    functionName: tinyxml2::XMLNode::DeepClone
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::DeepClone
    - tinyxml2::XMLNode::ShallowClone
    - XMLNode*::NextSibling
    - TIXMLASSERT
    - XMLNode*::InsertEndChild
    - tinyxml2::XMLNode::FirstChild
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLNode::DeepClone(XMLDocument* target) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:881,1
    - Dst: tinyxml2::XMLNode::DeleteChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:882,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 885
      start: 878
    functionDepth: 3
    functionLinenumber: 878
    functionLinenumberEnd: 885
    functionName: tinyxml2::XMLNode::DeleteChildren
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLNode::DeleteChild
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void XMLNode::DeleteChildren()
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:890,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:891,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:892,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 19
    argCount: 1
    argNames:
    - child
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 909
      start: 888
    functionDepth: 1
    functionLinenumber: 888
    functionLinenumberEnd: 909
    functionName: tinyxml2::XMLNode::Unlink
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void XMLNode::Unlink( XMLNode* child )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:914,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:915,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:916,1
    - Dst: tinyxml2::XMLNode::Unlink
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:917,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:918,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:919,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:920,1
    - Dst: tinyxml2::XMLNode::DeleteNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:921,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 922
      start: 912
    functionDepth: 2
    functionLinenumber: 912
    functionLinenumberEnd: 922
    functionName: tinyxml2::XMLNode::DeleteChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - tinyxml2::XMLNode::DeleteNode
    - TIXMLASSERT
    - tinyxml2::XMLNode::Unlink
    linkageType: ''
    returnType: void
    signature: void XMLNode::DeleteChild( XMLNode* node )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:927,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:929,1
    - Dst: tinyxml2::XMLNode::InsertChildPreamble
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:932,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:935,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:936,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:944,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 1
    argNames:
    - addThis
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 952
      start: 925
    functionDepth: 2
    functionLinenumber: 925
    functionLinenumberEnd: 952
    functionName: tinyxml2::XMLNode::InsertEndChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - tinyxml2::XMLNode::InsertChildPreamble
    - TIXMLASSERT
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLNode::InsertEndChild( XMLNode* addThis )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:957,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:959,1
    - Dst: tinyxml2::XMLNode::InsertChildPreamble
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:962,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:965,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:966,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:975,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 22
    argCount: 1
    argNames:
    - addThis
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 983
      start: 955
    functionDepth: 2
    functionLinenumber: 955
    functionLinenumberEnd: 983
    functionName: tinyxml2::XMLNode::InsertFirstChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLNode::InsertChildPreamble
    - TIXMLASSERT
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLNode::InsertFirstChild( XMLNode* addThis )
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:988,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:990,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:994,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:997,1
    - Dst: tinyxml2::XMLNode::InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1010,1
    - Dst: tinyxml2::XMLNode::InsertChildPreamble
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1012,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 24
    argCount: 2
    argNames:
    - afterThis
    - addThis
    argTypes:
    - XMLNode*
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1019
      start: 986
    functionDepth: 2
    functionLinenumber: 986
    functionLinenumberEnd: 1019
    functionName: tinyxml2::XMLNode::InsertAfterChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLNode::InsertChildPreamble
    - TIXMLASSERT
    - tinyxml2::XMLNode::InsertEndChild
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLNode::InsertAfterChild( XMLNode* afterThis, XMLNode* addThis
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLNode*::ToElementWithName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1027,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1033
      start: 1024
    functionDepth: 0
    functionLinenumber: 1024
    functionLinenumberEnd: 1033
    functionName: tinyxml2::XMLNode::FirstChildElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 4
    functionsReached:
    - XMLNode*::ToElementWithName
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * XMLNode::FirstChildElement( const char* name ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLNode*::ToElementWithName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1039,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1045
      start: 1036
    functionDepth: 0
    functionLinenumber: 1036
    functionLinenumberEnd: 1045
    functionName: tinyxml2::XMLNode::LastChildElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::ToElementWithName
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * XMLNode::LastChildElement( const char* name ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLNode*::ToElementWithName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1051,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1057
      start: 1048
    functionDepth: 0
    functionLinenumber: 1048
    functionLinenumberEnd: 1057
    functionName: tinyxml2::XMLNode::NextSiblingElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::ToElementWithName
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * XMLNode::NextSiblingElement( const char* name ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLNode*::ToElementWithName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1063,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1069
      start: 1060
    functionDepth: 0
    functionLinenumber: 1060
    functionLinenumberEnd: 1069
    functionName: tinyxml2::XMLNode::PreviousSiblingElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::ToElementWithName
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * XMLNode::PreviousSiblingElement( const char* name ) const
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: Error
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1092,1
    - Dst: Identify
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1099,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1100,1
    - Dst: XMLNode*::ParseDeep
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1109,1
    - Dst: tinyxml2::XMLNode::DeleteNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1111,1
    - Dst: Error
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1112,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1113,1
    - Dst: XMLNode*::ToDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1118,1
    - Dst: ToDocument
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1130,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1131,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1133,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1134,1
    - Dst: LastChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1135,1
    - Dst: LastChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1136,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1143,1
    - Dst: XMLDeclaration*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1143,1
    - Dst: tinyxml2::XMLNode::DeleteNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1144,1
    - Dst: XMLNode*::ToElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1149,1
    - Dst: XMLElement*::ClosingType
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1152,1
    - Dst: XMLElement*::_value::TransferTo
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1154,1
    - Dst: XMLNode*::_memPool::SetTracked
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1156,1
    - Dst: tinyxml2::XMLNode::DeleteNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1157,1
    - Dst: StrPair::Empty
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1164,1
    - Dst: XMLElement*::ClosingType
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1165,1
    - Dst: XMLElement*::ClosingType
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1170,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1173,1
    - Dst: StrPair::GetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1173,1
    - Dst: XMLElement*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1173,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1178,1
    - Dst: XMLElement*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1178,1
    - Dst: tinyxml2::XMLNode::DeleteNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1179,1
    - Dst: tinyxml2::XMLNode::InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1183,1
    CyclomaticComplexity: 25
    EdgeCount: 25
    ICount: 62
    argCount: 3
    argNames:
    - p
    - parentEndTag
    - curLineNumPtr
    argTypes:
    - char*
    - StrPair*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1186
      start: 1072
    functionDepth: 2
    functionLinenumber: 1072
    functionLinenumberEnd: 1186
    functionName: tinyxml2::XMLNode::ParseDeep
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - ToDocument
    - TIXMLASSERT
    - XMLElement*::ClosingType
    - XMLNode*::ToDeclaration
    - XMLElement*::_value::TransferTo
    - tinyxml2::XMLNode::InsertEndChild
    - LastChild
    - XMLDeclaration*::Value
    - XMLNode*::ParseDeep
    - XMLNode*::_memPool::SetTracked
    - Identify
    - Error
    - FirstChild
    - StrPair::Empty
    - tinyxml2::XMLNode::DeleteNode
    - SetError
    - StrPair::GetStr
    - tinyxml2::StringEqual
    - XMLNode*::ToElement
    - XMLElement*::Name
    linkageType: ''
    returnType: char
    signature: char * XMLNode::ParseDeep( char* p, StrPair* parentEndTag, int* curLineNumPtr
      )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1193,1
    - Dst: XMLNode*::ToDocument
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1194,1
    - Dst: XMLNode*::_document::MarkInUse
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1195,1
    - Dst: XMLNode*::~XMLNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1199,1
    - Dst: MemPool*::Free
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1200,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 1
    argNames:
    - node
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1201
      start: 1188
    functionDepth: 1
    functionLinenumber: 1188
    functionLinenumberEnd: 1201
    functionName: tinyxml2::XMLNode::DeleteNode
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 5
    functionsReached:
    - MemPool*::Free
    - TIXMLASSERT
    - XMLNode*::_document::MarkInUse
    - XMLNode*::~XMLNode
    - XMLNode*::ToDocument
    linkageType: ''
    returnType: void
    signature: void XMLNode::DeleteNode( XMLNode* node )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1205,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1206,1
    - Dst: XMLNode*::_parent::Unlink
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1209,1
    - Dst: XMLNode*::_document::MarkInUse
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1212,1
    - Dst: XMLNode*::_memPool::SetTracked
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1213,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - insertThis
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1215
      start: 1203
    functionDepth: 1
    functionLinenumber: 1203
    functionLinenumberEnd: 1215
    functionName: tinyxml2::XMLNode::InsertChildPreamble
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 6
    functionsReached:
    - TIXMLASSERT
    - XMLNode*::_document::MarkInUse
    - XMLNode*::_memPool::SetTracked
    - XMLNode*::_parent::Unlink
    linkageType: ''
    returnType: void
    signature: void XMLNode::InsertChildPreamble( XMLNode* insertThis ) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLNode::ToElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1219,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1226,1
    - Dst: XMLElement*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1226,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1230
      start: 1217
    functionDepth: 1
    functionLinenumber: 1217
    functionLinenumberEnd: 1230
    functionName: tinyxml2::XMLNode::ToElementWithName
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::StringEqual
    - tinyxml2::XMLNode::ToElement
    - XMLElement*::Name
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * XMLNode::ToElementWithName( const char* name ) const
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLText::CData
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1235,1
    - Dst: ParseText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1236,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1238,1
    - Dst: ProcessEntities
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1243,1
    - Dst: WhitespaceMode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1244,1
    - Dst: ParseText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1248,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1253,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 2
    argNames:
    - p
    - curLineNumPtr
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1257
      start: 1233
    functionDepth: 1
    functionLinenumber: 1233
    functionLinenumberEnd: 1257
    functionName: tinyxml2::XMLText::ParseDeep
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - ParseText
    - WhitespaceMode
    - tinyxml2::XMLText::CData
    - SetError
    - ProcessEntities
    linkageType: ''
    returnType: char
    signature: char * XMLText::ParseDeep( char* p, StrPair*, int* curLineNumPtr )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument*::NewText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1265,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1265,1
    - Dst: XMLText*::SetCData
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1266,1
    - Dst: tinyxml2::XMLText::CData
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1266,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1268
      start: 1260
    functionDepth: 1
    functionLinenumber: 1260
    functionLinenumberEnd: 1268
    functionName: tinyxml2::XMLText::ShallowClone
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLText::CData
    - XMLText*::SetCData
    - Value
    - XMLDocument*::NewText
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLText::ShallowClone( XMLDocument* doc ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1273,1
    - Dst: XMLNode*::ToText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1274,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1275,1
    - Dst: XMLText*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1275,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1275,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - compare
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1276
      start: 1271
    functionDepth: 1
    functionLinenumber: 1271
    functionLinenumberEnd: 1276
    functionName: tinyxml2::XMLText::ShallowEqual
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - Value
    - XMLNode*::ToText
    - TIXMLASSERT
    - XMLText*::Value
    - tinyxml2::StringEqual
    linkageType: ''
    returnType: bool
    signature: bool XMLText::ShallowEqual( const XMLNode* compare ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1281,1
    - Dst: XMLVisitor*::Visit
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1282,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - visitor
    argTypes:
    - XMLVisitor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1283
      start: 1279
    functionDepth: 1
    functionLinenumber: 1279
    functionLinenumberEnd: 1283
    functionName: tinyxml2::XMLText::Accept
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLVisitor*::Visit
    - TIXMLASSERT
    linkageType: ''
    returnType: bool
    signature: bool XMLText::Accept( XMLVisitor* visitor ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1290
      start: 1288
    functionDepth: 0
    functionLinenumber: 1288
    functionLinenumberEnd: 1290
    functionName: tinyxml2::XMLComment::XMLComment
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLComment::XMLComment( XMLDocument* doc )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1295
      start: 1293
    functionDepth: 0
    functionLinenumber: 1293
    functionLinenumberEnd: 1295
    functionName: XMLComment::~XMLComment()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLComment::~XMLComment()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ParseText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1301,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1303,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - p
    - curLineNumPtr
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1306
      start: 1298
    functionDepth: 0
    functionLinenumber: 1298
    functionLinenumberEnd: 1306
    functionName: tinyxml2::XMLComment::ParseDeep
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - ParseText
    - SetError
    linkageType: ''
    returnType: char
    signature: char * XMLComment::ParseDeep( char* p, StrPair*, int* curLineNumPtr
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument*::NewComment
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1314,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1314,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1316
      start: 1309
    functionDepth: 0
    functionLinenumber: 1309
    functionLinenumberEnd: 1316
    functionName: tinyxml2::XMLComment::ShallowClone
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLDocument*::NewComment
    - Value
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLComment::ShallowClone( XMLDocument* doc ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1321,1
    - Dst: XMLNode*::ToComment
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1322,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1323,1
    - Dst: XMLComment*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1323,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1323,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - compare
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1324
      start: 1319
    functionDepth: 1
    functionLinenumber: 1319
    functionLinenumberEnd: 1324
    functionName: tinyxml2::XMLComment::ShallowEqual
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLComment*::Value
    - Value
    - TIXMLASSERT
    - XMLNode*::ToComment
    - tinyxml2::StringEqual
    linkageType: ''
    returnType: bool
    signature: bool XMLComment::ShallowEqual( const XMLNode* compare ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1329,1
    - Dst: XMLVisitor*::Visit
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1330,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - visitor
    argTypes:
    - XMLVisitor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1331
      start: 1327
    functionDepth: 1
    functionLinenumber: 1327
    functionLinenumberEnd: 1331
    functionName: tinyxml2::XMLComment::Accept
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLVisitor*::Visit
    - TIXMLASSERT
    linkageType: ''
    returnType: bool
    signature: bool XMLComment::Accept( XMLVisitor* visitor ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1338
      start: 1336
    functionDepth: 0
    functionLinenumber: 1336
    functionLinenumberEnd: 1338
    functionName: tinyxml2::XMLDeclaration::XMLDeclaration
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLDeclaration::XMLDeclaration( XMLDocument* doc )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1344
      start: 1341
    functionDepth: 0
    functionLinenumber: 1341
    functionLinenumberEnd: 1344
    functionName: XMLDeclaration::~XMLDeclaration()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLDeclaration::~XMLDeclaration()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ParseText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1350,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1352,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - p
    - curLineNumPtr
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1355
      start: 1347
    functionDepth: 0
    functionLinenumber: 1347
    functionLinenumberEnd: 1355
    functionName: tinyxml2::XMLDeclaration::ParseDeep
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - ParseText
    - SetError
    linkageType: ''
    returnType: char
    signature: char * XMLDeclaration::ParseDeep( char* p, StrPair*, int* curLineNumPtr
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument*::NewDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1363,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1363,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1365
      start: 1358
    functionDepth: 0
    functionLinenumber: 1358
    functionLinenumberEnd: 1365
    functionName: tinyxml2::XMLDeclaration::ShallowClone
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLDocument*::NewDeclaration
    - Value
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLDeclaration::ShallowClone( XMLDocument* doc ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1370,1
    - Dst: XMLNode*::ToDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1371,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1372,1
    - Dst: XMLDeclaration*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1372,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1372,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - compare
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1373
      start: 1368
    functionDepth: 1
    functionLinenumber: 1368
    functionLinenumberEnd: 1373
    functionName: tinyxml2::XMLDeclaration::ShallowEqual
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::ToDeclaration
    - Value
    - TIXMLASSERT
    - XMLDeclaration*::Value
    - tinyxml2::StringEqual
    linkageType: ''
    returnType: bool
    signature: bool XMLDeclaration::ShallowEqual( const XMLNode* compare ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1379,1
    - Dst: XMLVisitor*::Visit
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1380,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - visitor
    argTypes:
    - XMLVisitor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1381
      start: 1377
    functionDepth: 1
    functionLinenumber: 1377
    functionLinenumberEnd: 1381
    functionName: tinyxml2::XMLDeclaration::Accept
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLVisitor*::Visit
    - TIXMLASSERT
    linkageType: ''
    returnType: bool
    signature: bool XMLDeclaration::Accept( XMLVisitor* visitor ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1385
    functionDepth: 0
    functionLinenumber: 1385
    functionLinenumberEnd: 1387
    functionName: tinyxml2::XMLUnknown::XMLUnknown
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLUnknown::XMLUnknown( XMLDocument* doc )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1392
      start: 1390
    functionDepth: 0
    functionLinenumber: 1390
    functionLinenumberEnd: 1392
    functionName: XMLUnknown::~XMLUnknown()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLUnknown::~XMLUnknown()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ParseText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1398,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1400,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - p
    - curLineNumPtr
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1403
      start: 1395
    functionDepth: 0
    functionLinenumber: 1395
    functionLinenumberEnd: 1403
    functionName: tinyxml2::XMLUnknown::ParseDeep
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - ParseText
    - SetError
    linkageType: ''
    returnType: char
    signature: char * XMLUnknown::ParseDeep( char* p, StrPair*, int* curLineNumPtr
      )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument*::NewUnknown
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1411,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1411,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1413
      start: 1406
    functionDepth: 0
    functionLinenumber: 1406
    functionLinenumberEnd: 1413
    functionName: tinyxml2::XMLUnknown::ShallowClone
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLDocument*::NewUnknown
    - Value
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLUnknown::ShallowClone( XMLDocument* doc ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1418,1
    - Dst: XMLNode*::ToUnknown
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1419,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1420,1
    - Dst: XMLUnknown*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1420,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1420,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 3
    argCount: 1
    argNames:
    - compare
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1421
      start: 1416
    functionDepth: 1
    functionLinenumber: 1416
    functionLinenumberEnd: 1421
    functionName: tinyxml2::XMLUnknown::ShallowEqual
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - Value
    - TIXMLASSERT
    - XMLUnknown*::Value
    - XMLNode*::ToUnknown
    - tinyxml2::StringEqual
    linkageType: ''
    returnType: bool
    signature: bool XMLUnknown::ShallowEqual( const XMLNode* compare ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1426,1
    - Dst: XMLVisitor*::Visit
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1427,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - visitor
    argTypes:
    - XMLVisitor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1428
      start: 1424
    functionDepth: 1
    functionLinenumber: 1424
    functionLinenumberEnd: 1428
    functionName: tinyxml2::XMLUnknown::Accept
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLVisitor*::Visit
    - TIXMLASSERT
    linkageType: ''
    returnType: bool
    signature: bool XMLUnknown::Accept( XMLVisitor* visitor ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1434,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1435
      start: 1432
    functionDepth: 0
    functionLinenumber: 1432
    functionLinenumberEnd: 1435
    functionName: tinyxml2::XMLAttribute::Name
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - GetStr
    linkageType: ''
    returnType: char
    signature: char * XMLAttribute::Name() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: GetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1439,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1440
      start: 1437
    functionDepth: 0
    functionLinenumber: 1437
    functionLinenumberEnd: 1440
    functionName: tinyxml2::XMLAttribute::Value
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 7
    functionsReached:
    - GetStr
    linkageType: ''
    returnType: char
    signature: char * XMLAttribute::Value() const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: ParseName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1445,1
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1451,1
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1457,1
    - Dst: ParseText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1465,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 17
    argCount: 3
    argNames:
    - p
    - processEntities
    - curLineNumPtr
    argTypes:
    - char*
    - bool
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1467
      start: 1442
    functionDepth: 1
    functionLinenumber: 1442
    functionLinenumberEnd: 1467
    functionName: tinyxml2::XMLAttribute::ParseDeep
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - ParseText
    - tinyxml2::SkipWhiteSpace
    - ParseName
    linkageType: ''
    returnType: char
    signature: char * XMLAttribute::ParseDeep( char* p, bool processEntities, int*
      curLineNumPtr )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1472,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - n
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1473
      start: 1470
    functionDepth: 0
    functionLinenumber: 1470
    functionLinenumberEnd: 1473
    functionName: tinyxml2::XMLAttribute::SetName
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetName( const char* n )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToInt
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1478,1
    - Dst: tinyxml2::XMLAttribute::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1478,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1482
      start: 1476
    functionDepth: 1
    functionLinenumber: 1476
    functionLinenumberEnd: 1482
    functionName: tinyxml2::XMLAttribute::QueryIntValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLUtil::ToInt
    - tinyxml2::XMLAttribute::Value
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLAttribute::QueryIntValue( int* value ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToUnsigned
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1487,1
    - Dst: tinyxml2::XMLAttribute::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1487,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - unsigned int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1491
      start: 1485
    functionDepth: 1
    functionLinenumber: 1485
    functionLinenumberEnd: 1491
    functionName: tinyxml2::XMLAttribute::QueryUnsignedValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLUtil::ToUnsigned
    - tinyxml2::XMLAttribute::Value
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLAttribute::QueryUnsignedValue( unsigned int* value ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToInt64
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1496,1
    - Dst: tinyxml2::XMLAttribute::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1496,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - int64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1500
      start: 1494
    functionDepth: 1
    functionLinenumber: 1494
    functionLinenumberEnd: 1500
    functionName: tinyxml2::XMLAttribute::QueryInt64Value
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLAttribute::Value
    - tinyxml2::XMLUtil::ToInt64
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLAttribute::QueryInt64Value(int64_t* value) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToUnsigned64
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1505,1
    - Dst: tinyxml2::XMLAttribute::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1505,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - uint64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1509
      start: 1503
    functionDepth: 1
    functionLinenumber: 1503
    functionLinenumberEnd: 1509
    functionName: tinyxml2::XMLAttribute::QueryUnsigned64Value
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLAttribute::Value
    - tinyxml2::XMLUtil::ToUnsigned64
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLAttribute::QueryUnsigned64Value(uint64_t* value) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToBool
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1514,1
    - Dst: tinyxml2::XMLAttribute::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1514,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1518
      start: 1512
    functionDepth: 2
    functionLinenumber: 1512
    functionLinenumberEnd: 1518
    functionName: tinyxml2::XMLAttribute::QueryBoolValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLUtil::ToBool
    - tinyxml2::XMLAttribute::Value
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLAttribute::QueryBoolValue( bool* value ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToFloat
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1523,1
    - Dst: tinyxml2::XMLAttribute::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1523,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1527
      start: 1521
    functionDepth: 1
    functionLinenumber: 1521
    functionLinenumberEnd: 1527
    functionName: tinyxml2::XMLAttribute::QueryFloatValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLUtil::ToFloat
    - tinyxml2::XMLAttribute::Value
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLAttribute::QueryFloatValue( float* value ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToDouble
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1532,1
    - Dst: tinyxml2::XMLAttribute::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1532,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1536
      start: 1530
    functionDepth: 1
    functionLinenumber: 1530
    functionLinenumberEnd: 1536
    functionName: tinyxml2::XMLAttribute::QueryDoubleValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLUtil::ToDouble
    - tinyxml2::XMLAttribute::Value
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLAttribute::QueryDoubleValue( double* value ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1541,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - v
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1542
      start: 1539
    functionDepth: 0
    functionLinenumber: 1539
    functionLinenumberEnd: 1542
    functionName: tinyxml2::XMLAttribute::SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetAttribute( const char* v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1548,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1549,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1550
      start: 1545
    functionDepth: 0
    functionLinenumber: 1545
    functionLinenumberEnd: 1550
    functionName: tinyxml2::XMLAttribute::SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetAttribute( int v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1556,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1557,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1558
      start: 1553
    functionDepth: 0
    functionLinenumber: 1553
    functionLinenumberEnd: 1558
    functionName: tinyxml2::XMLAttribute::SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetAttribute( unsigned v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1564,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1565,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1566
      start: 1561
    functionDepth: 0
    functionLinenumber: 1561
    functionLinenumberEnd: 1566
    functionName: tinyxml2::XMLAttribute::SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetAttribute(int64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1571,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1572,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1573
      start: 1568
    functionDepth: 0
    functionLinenumber: 1568
    functionLinenumberEnd: 1573
    functionName: tinyxml2::XMLAttribute::SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetAttribute(uint64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1579,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1580,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1581
      start: 1576
    functionDepth: 0
    functionLinenumber: 1576
    functionLinenumberEnd: 1581
    functionName: tinyxml2::XMLAttribute::SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetAttribute( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1586,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1587,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1588
      start: 1583
    functionDepth: 0
    functionLinenumber: 1583
    functionLinenumberEnd: 1588
    functionName: tinyxml2::XMLAttribute::SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetAttribute( double v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1593,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1594,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1595
      start: 1590
    functionDepth: 0
    functionLinenumber: 1590
    functionLinenumberEnd: 1595
    functionName: tinyxml2::XMLAttribute::SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - SetStr
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLAttribute::SetAttribute( float v )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1603
      start: 1599
    functionDepth: 0
    functionLinenumber: 1599
    functionLinenumberEnd: 1603
    functionName: tinyxml2::XMLElement::XMLElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLElement::XMLElement( XMLDocument* doc )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: DeleteAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1610,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1613
      start: 1606
    functionDepth: 0
    functionLinenumber: 1606
    functionLinenumberEnd: 1613
    functionName: XMLElement::~XMLElement()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - DeleteAttribute
    linkageType: ''
    returnType: void
    signature: void XMLElement::~XMLElement()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1619,1
    - Dst: XMLAttribute*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1619,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1624
      start: 1616
    functionDepth: 1
    functionLinenumber: 1616
    functionLinenumberEnd: 1624
    functionName: tinyxml2::XMLElement::FindAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::StringEqual
    - XMLAttribute*::Name
    linkageType: ''
    returnType: XMLAttribute
    signature: XMLAttribute * XMLElement::FindAttribute( const char* name ) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement::FindAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1629,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1633,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1633,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1634,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1637
      start: 1627
    functionDepth: 2
    functionLinenumber: 1627
    functionLinenumberEnd: 1637
    functionName: tinyxml2::XMLElement::Attribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::StringEqual
    - XMLAttribute*::Value
    - tinyxml2::XMLElement::FindAttribute
    linkageType: ''
    returnType: char
    signature: char * XMLElement::Attribute( const char* name, const char* value )
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryIntAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1642,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - defaultValue
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1644
      start: 1639
    functionDepth: 1
    functionLinenumber: 1639
    functionLinenumberEnd: 1644
    functionName: tinyxml2::XMLElement::IntAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - QueryIntAttribute
    linkageType: ''
    returnType: int
    signature: int XMLElement::IntAttribute(const char* name, int defaultValue) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryUnsignedAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1649,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - defaultValue
    argTypes:
    - char*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1651
      start: 1646
    functionDepth: 1
    functionLinenumber: 1646
    functionLinenumberEnd: 1651
    functionName: tinyxml2::XMLElement::UnsignedAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - QueryUnsignedAttribute
    linkageType: ''
    returnType: unsigned
    signature: unsigned XMLElement::UnsignedAttribute(const char* name, unsigned defaultValue)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryInt64Attribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1656,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - defaultValue
    argTypes:
    - char*
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1658
      start: 1653
    functionDepth: 1
    functionLinenumber: 1653
    functionLinenumberEnd: 1658
    functionName: tinyxml2::XMLElement::Int64Attribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - QueryInt64Attribute
    linkageType: ''
    returnType: int64_t
    signature: int64_t XMLElement::Int64Attribute(const char* name, int64_t defaultValue)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryUnsigned64Attribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1663,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - defaultValue
    argTypes:
    - char*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1665
      start: 1660
    functionDepth: 1
    functionLinenumber: 1660
    functionLinenumberEnd: 1665
    functionName: tinyxml2::XMLElement::Unsigned64Attribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - QueryUnsigned64Attribute
    linkageType: ''
    returnType: uint64_t
    signature: uint64_t XMLElement::Unsigned64Attribute(const char* name, uint64_t
      defaultValue) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryBoolAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1670,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - defaultValue
    argTypes:
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1672
      start: 1667
    functionDepth: 1
    functionLinenumber: 1667
    functionLinenumberEnd: 1672
    functionName: tinyxml2::XMLElement::BoolAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - QueryBoolAttribute
    linkageType: ''
    returnType: bool
    signature: bool XMLElement::BoolAttribute(const char* name, bool defaultValue)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryDoubleAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1677,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - defaultValue
    argTypes:
    - char*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1679
      start: 1674
    functionDepth: 1
    functionLinenumber: 1674
    functionLinenumberEnd: 1679
    functionName: tinyxml2::XMLElement::DoubleAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - QueryDoubleAttribute
    linkageType: ''
    returnType: double
    signature: double XMLElement::DoubleAttribute(const char* name, double defaultValue)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryFloatAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1684,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - defaultValue
    argTypes:
    - char*
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1686
      start: 1681
    functionDepth: 1
    functionLinenumber: 1681
    functionLinenumberEnd: 1686
    functionName: tinyxml2::XMLElement::FloatAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - QueryFloatAttribute
    linkageType: ''
    returnType: float
    signature: float XMLElement::FloatAttribute(const char* name, float defaultValue)
      const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1691,1
    - Dst: XMLNode*::ToComment
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1693,1
    - Dst: XMLNode*::NextSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1694,1
    - Dst: XMLNode*::ToText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1700,1
    - Dst: XMLNode*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1701,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1704
      start: 1688
    functionDepth: 1
    functionLinenumber: 1688
    functionLinenumberEnd: 1704
    functionName: tinyxml2::XMLElement::GetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::ToText
    - XMLNode*::NextSibling
    - XMLNode*::Value
    - XMLNode*::ToComment
    - FirstChild
    linkageType: ''
    returnType: char
    signature: char * XMLElement::GetText() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1709,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1709,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1710,1
    - Dst: GetDocument
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1712,1
    - Dst: InsertFirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1713,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 5
    argCount: 1
    argNames:
    - inText
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1715
      start: 1707
    functionDepth: 1
    functionLinenumber: 1707
    functionLinenumberEnd: 1715
    functionName: tinyxml2::XMLElement::SetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 7
    functionsReached:
    - FirstChild
    - InsertFirstChild
    - GetDocument
    linkageType: ''
    returnType: void
    signature: void XMLElement::SetText( const char* inText )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1721,1
    - Dst: tinyxml2::XMLElement::SetText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1722,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1723
      start: 1718
    functionDepth: 1
    functionLinenumber: 1718
    functionLinenumberEnd: 1723
    functionName: tinyxml2::XMLElement::SetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 8
    functionsReached:
    - tinyxml2::XMLElement::SetText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLElement::SetText( int v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1729,1
    - Dst: tinyxml2::XMLElement::SetText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1730,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1731
      start: 1726
    functionDepth: 1
    functionLinenumber: 1726
    functionLinenumberEnd: 1731
    functionName: tinyxml2::XMLElement::SetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 9
    functionsReached:
    - tinyxml2::XMLElement::SetText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLElement::SetText( unsigned v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1737,1
    - Dst: tinyxml2::XMLElement::SetText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1738,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1739
      start: 1734
    functionDepth: 1
    functionLinenumber: 1734
    functionLinenumberEnd: 1739
    functionName: tinyxml2::XMLElement::SetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 10
    functionsReached:
    - tinyxml2::XMLElement::SetText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLElement::SetText(int64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1743,1
    - Dst: tinyxml2::XMLElement::SetText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1744,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1745
      start: 1741
    functionDepth: 1
    functionLinenumber: 1741
    functionLinenumberEnd: 1745
    functionName: tinyxml2::XMLElement::SetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 11
    functionsReached:
    - tinyxml2::XMLElement::SetText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLElement::SetText(uint64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1751,1
    - Dst: tinyxml2::XMLElement::SetText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1752,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1753
      start: 1748
    functionDepth: 1
    functionLinenumber: 1748
    functionLinenumberEnd: 1753
    functionName: tinyxml2::XMLElement::SetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 12
    functionsReached:
    - tinyxml2::XMLElement::SetText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLElement::SetText( bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1759,1
    - Dst: tinyxml2::XMLElement::SetText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1760,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1761
      start: 1756
    functionDepth: 1
    functionLinenumber: 1756
    functionLinenumberEnd: 1761
    functionName: tinyxml2::XMLElement::SetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 13
    functionsReached:
    - tinyxml2::XMLElement::SetText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLElement::SetText( float v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1767,1
    - Dst: tinyxml2::XMLElement::SetText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1768,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - v
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1769
      start: 1764
    functionDepth: 1
    functionLinenumber: 1764
    functionLinenumberEnd: 1769
    functionName: tinyxml2::XMLElement::SetText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 14
    functionsReached:
    - tinyxml2::XMLElement::SetText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLElement::SetText( double v )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1774,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1774,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1775,1
    - Dst: tinyxml2::XMLUtil::ToInt
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1776,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ival
    argTypes:
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1782
      start: 1772
    functionDepth: 1
    functionLinenumber: 1772
    functionLinenumberEnd: 1782
    functionName: tinyxml2::XMLElement::QueryIntText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - FirstChild
    - tinyxml2::XMLUtil::ToInt
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLElement::QueryIntText( int* ival ) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1787,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1787,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1788,1
    - Dst: tinyxml2::XMLUtil::ToUnsigned
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1789,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - uval
    argTypes:
    - unsigned*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1795
      start: 1785
    functionDepth: 1
    functionLinenumber: 1785
    functionLinenumberEnd: 1795
    functionName: tinyxml2::XMLElement::QueryUnsignedText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLUtil::ToUnsigned
    - FirstChild
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLElement::QueryUnsignedText( unsigned* uval ) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1800,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1800,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1801,1
    - Dst: tinyxml2::XMLUtil::ToInt64
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1802,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ival
    argTypes:
    - int64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1808
      start: 1798
    functionDepth: 1
    functionLinenumber: 1798
    functionLinenumberEnd: 1808
    functionName: tinyxml2::XMLElement::QueryInt64Text
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - FirstChild
    - tinyxml2::XMLUtil::ToInt64
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLElement::QueryInt64Text(int64_t* ival) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1813,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1813,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1814,1
    - Dst: tinyxml2::XMLUtil::ToUnsigned64
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1815,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - uval
    argTypes:
    - uint64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1821
      start: 1811
    functionDepth: 1
    functionLinenumber: 1811
    functionLinenumberEnd: 1821
    functionName: tinyxml2::XMLElement::QueryUnsigned64Text
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - FirstChild
    - tinyxml2::XMLUtil::ToUnsigned64
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLElement::QueryUnsigned64Text(uint64_t* uval) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1826,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1826,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1827,1
    - Dst: tinyxml2::XMLUtil::ToBool
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1828,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - bval
    argTypes:
    - bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1834
      start: 1824
    functionDepth: 2
    functionLinenumber: 1824
    functionLinenumberEnd: 1834
    functionName: tinyxml2::XMLElement::QueryBoolText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLUtil::ToBool
    - FirstChild
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLElement::QueryBoolText( bool* bval ) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1839,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1839,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1840,1
    - Dst: tinyxml2::XMLUtil::ToDouble
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1841,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - dval
    argTypes:
    - double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1847
      start: 1837
    functionDepth: 1
    functionLinenumber: 1837
    functionLinenumberEnd: 1847
    functionName: tinyxml2::XMLElement::QueryDoubleText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - FirstChild
    - tinyxml2::XMLUtil::ToDouble
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLElement::QueryDoubleText( double* dval ) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1852,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1852,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1853,1
    - Dst: tinyxml2::XMLUtil::ToFloat
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1854,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - fval
    argTypes:
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1860
      start: 1850
    functionDepth: 1
    functionLinenumber: 1850
    functionLinenumberEnd: 1860
    functionName: tinyxml2::XMLElement::QueryFloatText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLUtil::ToFloat
    - FirstChild
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLElement::QueryFloatText( float* fval ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement::QueryIntText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1865,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - defaultValue
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1867
      start: 1862
    functionDepth: 2
    functionLinenumber: 1862
    functionLinenumberEnd: 1867
    functionName: tinyxml2::XMLElement::IntText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::QueryIntText
    linkageType: ''
    returnType: int
    signature: int XMLElement::IntText(int defaultValue) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement::QueryUnsignedText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1872,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - defaultValue
    argTypes:
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1874
      start: 1869
    functionDepth: 2
    functionLinenumber: 1869
    functionLinenumberEnd: 1874
    functionName: tinyxml2::XMLElement::UnsignedText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::QueryUnsignedText
    linkageType: ''
    returnType: unsigned
    signature: unsigned XMLElement::UnsignedText(unsigned defaultValue) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement::QueryInt64Text
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1879,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - defaultValue
    argTypes:
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1881
      start: 1876
    functionDepth: 2
    functionLinenumber: 1876
    functionLinenumberEnd: 1881
    functionName: tinyxml2::XMLElement::Int64Text
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::QueryInt64Text
    linkageType: ''
    returnType: int64_t
    signature: int64_t XMLElement::Int64Text(int64_t defaultValue) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement::QueryUnsigned64Text
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1886,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - defaultValue
    argTypes:
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1888
      start: 1883
    functionDepth: 2
    functionLinenumber: 1883
    functionLinenumberEnd: 1888
    functionName: tinyxml2::XMLElement::Unsigned64Text
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::QueryUnsigned64Text
    linkageType: ''
    returnType: uint64_t
    signature: uint64_t XMLElement::Unsigned64Text(uint64_t defaultValue) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement::QueryBoolText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1893,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - defaultValue
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1895
      start: 1890
    functionDepth: 3
    functionLinenumber: 1890
    functionLinenumberEnd: 1895
    functionName: tinyxml2::XMLElement::BoolText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::QueryBoolText
    linkageType: ''
    returnType: bool
    signature: bool XMLElement::BoolText(bool defaultValue) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement::QueryDoubleText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1900,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - defaultValue
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1902
      start: 1897
    functionDepth: 2
    functionLinenumber: 1897
    functionLinenumberEnd: 1902
    functionName: tinyxml2::XMLElement::DoubleText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::QueryDoubleText
    linkageType: ''
    returnType: double
    signature: double XMLElement::DoubleText(double defaultValue) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLElement::QueryFloatText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1907,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - defaultValue
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1909
      start: 1904
    functionDepth: 2
    functionLinenumber: 1904
    functionLinenumberEnd: 1909
    functionName: tinyxml2::XMLElement::FloatText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::QueryFloatText
    linkageType: ''
    returnType: float
    signature: float XMLElement::FloatText(float defaultValue) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1919,1
    - Dst: XMLAttribute*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1919,1
    - Dst: tinyxml2::XMLElement::CreateAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1924,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1925,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1927,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1931,1
    - Dst: XMLAttribute*::SetName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1934,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 19
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1937
      start: 1912
    functionDepth: 2
    functionLinenumber: 1912
    functionLinenumberEnd: 1937
    functionName: tinyxml2::XMLElement::FindOrCreateAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLElement::CreateAttribute
    - XMLAttribute*::SetName
    - TIXMLASSERT
    - tinyxml2::StringEqual
    - XMLAttribute*::Name
    linkageType: ''
    returnType: XMLAttribute
    signature: XMLAttribute * XMLElement::FindOrCreateAttribute( const char* name
      )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1944,1
    - Dst: XMLAttribute*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1944,1
    - Dst: tinyxml2::XMLElement::DeleteAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1951,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 13
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1956
      start: 1940
    functionDepth: 1
    functionLinenumber: 1940
    functionLinenumberEnd: 1956
    functionName: tinyxml2::XMLElement::DeleteAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 3
    functionsReached:
    - tinyxml2::StringEqual
    - tinyxml2::XMLElement::DeleteAttribute
    - XMLAttribute*::Name
    linkageType: ''
    returnType: void
    signature: void XMLElement::DeleteAttribute( const char* name )
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1965,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1967,1
    - Dst: Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1967,1
    - Dst: tinyxml2::IsNameStartChar
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1972,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1972,1
    - Dst: tinyxml2::XMLElement::CreateAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1973,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1974,1
    - Dst: XMLAttribute*::ParseDeep
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1979,1
    - Dst: ProcessEntities
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1979,1
    - Dst: tinyxml2::XMLElement::Attribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1980,1
    - Dst: XMLAttribute*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1980,1
    - Dst: tinyxml2::XMLElement::DeleteAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1981,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1982,1
    - Dst: Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1982,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1991,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:1995,1
    - Dst: SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2011,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 38
    argCount: 2
    argNames:
    - p
    - curLineNumPtr
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2016
      start: 1959
    functionDepth: 3
    functionLinenumber: 1959
    functionLinenumberEnd: 2016
    functionName: tinyxml2::XMLElement::ParseAttributes
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLElement::CreateAttribute
    - XMLAttribute*::ParseDeep
    - SetError
    - TIXMLASSERT
    - tinyxml2::XMLElement::Attribute
    - tinyxml2::SkipWhiteSpace
    - tinyxml2::XMLElement::DeleteAttribute
    - Name
    - tinyxml2::IsNameStartChar
    - static_cast<unsigned char>
    - ProcessEntities
    - XMLAttribute*::Name
    linkageType: ''
    returnType: char
    signature: char * XMLElement::ParseAttributes( char* p, int* curLineNumPtr )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLAttribute*::~XMLAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2024,1
    - Dst: MemPool*::Free
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2025,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - attribute
    argTypes:
    - XMLAttribute*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2026
      start: 2018
    functionDepth: 0
    functionLinenumber: 2018
    functionLinenumberEnd: 2026
    functionName: tinyxml2::XMLElement::DeleteAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 4
    functionsReached:
    - XMLAttribute*::~XMLAttribute
    - MemPool*::Free
    linkageType: ''
    returnType: void
    signature: void XMLElement::DeleteAttribute( XMLAttribute* attribute )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2030,1
    - Dst: _attributePool::ItemSize
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2030,1
    - Dst: _attributePool::Alloc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2031,1
    - Dst: XMLAttribute::XMLAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2031,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2032,1
    - Dst: XMLAttribute*::_memPool::SetTracked
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2034,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2036
      start: 2028
    functionDepth: 1
    functionLinenumber: 2028
    functionLinenumberEnd: 2036
    functionName: tinyxml2::XMLElement::CreateAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 4
    functionsReached:
    - XMLAttribute::XMLAttribute
    - TIXMLASSERT
    - _attributePool::ItemSize
    - _attributePool::Alloc
    - XMLAttribute*::_memPool::SetTracked
    linkageType: ''
    returnType: XMLAttribute
    signature: XMLAttribute * XMLElement::CreateAttribute()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2041,1
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2042,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2043
      start: 2039
    functionDepth: 0
    functionLinenumber: 2039
    functionLinenumberEnd: 2043
    functionName: tinyxml2::XMLElement::InsertNewChildElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - InsertEndChild
    - NewElement
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * XMLElement::InsertNewChildElement(const char* name)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewComment
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2047,1
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2048,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - comment
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2049
      start: 2045
    functionDepth: 0
    functionLinenumber: 2045
    functionLinenumberEnd: 2049
    functionName: tinyxml2::XMLElement::InsertNewComment
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - InsertEndChild
    - NewComment
    linkageType: ''
    returnType: XMLComment
    signature: XMLComment * XMLElement::InsertNewComment(const char* comment)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2053,1
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2054,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - text
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2055
      start: 2051
    functionDepth: 0
    functionLinenumber: 2051
    functionLinenumberEnd: 2055
    functionName: tinyxml2::XMLElement::InsertNewText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - NewText
    - InsertEndChild
    linkageType: ''
    returnType: XMLText
    signature: XMLText * XMLElement::InsertNewText(const char* text)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2059,1
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2060,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - text
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2061
      start: 2057
    functionDepth: 0
    functionLinenumber: 2057
    functionLinenumberEnd: 2061
    functionName: tinyxml2::XMLElement::InsertNewDeclaration
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - InsertEndChild
    - NewDeclaration
    linkageType: ''
    returnType: XMLDeclaration
    signature: XMLDeclaration * XMLElement::InsertNewDeclaration(const char* text)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: NewUnknown
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2065,1
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2066,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - text
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2067
      start: 2063
    functionDepth: 0
    functionLinenumber: 2063
    functionLinenumberEnd: 2067
    functionName: tinyxml2::XMLElement::InsertNewUnknown
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - InsertEndChild
    - NewUnknown
    linkageType: ''
    returnType: XMLUnknown
    signature: XMLUnknown * XMLElement::InsertNewUnknown(const char* text)
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2078,1
    - Dst: ParseName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2088,1
    - Dst: Empty
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2089,1
    - Dst: tinyxml2::XMLElement::ParseAttributes
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2093,1
    - Dst: tinyxml2::XMLNode::ParseDeep
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2098,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 16
    argCount: 3
    argNames:
    - p
    - parentEndTag
    - curLineNumPtr
    argTypes:
    - char*
    - StrPair*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2100
      start: 2075
    functionDepth: 4
    functionLinenumber: 2075
    functionLinenumberEnd: 2100
    functionName: tinyxml2::XMLElement::ParseDeep
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - Empty
    - tinyxml2::SkipWhiteSpace
    - tinyxml2::XMLNode::ParseDeep
    - tinyxml2::XMLElement::ParseAttributes
    - ParseName
    linkageType: ''
    returnType: char
    signature: char * XMLElement::ParseDeep( char* p, StrPair* parentEndTag, int*
      curLineNumPtr )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument*::NewElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2109,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2109,1
    - Dst: FirstAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2110,1
    - Dst: XMLAttribute*::Next
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2110,1
    - Dst: XMLElement*::SetAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2111,1
    - Dst: XMLAttribute*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2111,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2111,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 8
    argCount: 1
    argNames:
    - doc
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2114
      start: 2104
    functionDepth: 1
    functionLinenumber: 2104
    functionLinenumberEnd: 2114
    functionName: tinyxml2::XMLElement::ShallowClone
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLElement*::SetAttribute
    - Value
    - XMLAttribute*::Value
    - XMLAttribute*::Next
    - XMLAttribute*::Name
    - FirstAttribute
    - XMLDocument*::NewElement
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * XMLElement::ShallowClone( XMLDocument* doc ) const
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2119,1
    - Dst: XMLNode*::ToElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2120,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2121,1
    - Dst: XMLElement*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2121,1
    - Dst: Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2121,1
    - Dst: FirstAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2123,1
    - Dst: XMLElement*::FirstAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2124,1
    - Dst: tinyxml2::StringEqual
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2127,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2127,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2127,1
    - Dst: XMLAttribute*::Next
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2130,1
    - Dst: XMLAttribute*::Next
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2131,1
    CyclomaticComplexity: 7
    EdgeCount: 7
    ICount: 16
    argCount: 1
    argNames:
    - compare
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2140
      start: 2117
    functionDepth: 1
    functionLinenumber: 2117
    functionLinenumberEnd: 2140
    functionName: tinyxml2::XMLElement::ShallowEqual
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLElement*::FirstAttribute
    - XMLAttribute*::Value
    - TIXMLASSERT
    - XMLAttribute*::Next
    - Name
    - tinyxml2::StringEqual
    - XMLNode*::ToElement
    - FirstAttribute
    - XMLElement*::Name
    linkageType: ''
    returnType: bool
    signature: bool XMLElement::ShallowEqual( const XMLNode* compare ) const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2145,1
    - Dst: XMLVisitor*::VisitEnter
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2146,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2147,1
    - Dst: XMLNode*::NextSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2147,1
    - Dst: XMLNode*::Accept
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2148,1
    - Dst: XMLVisitor*::VisitExit
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2153,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 10
    argCount: 1
    argNames:
    - visitor
    argTypes:
    - XMLVisitor*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2154
      start: 2143
    functionDepth: 1
    functionLinenumber: 2143
    functionLinenumberEnd: 2154
    functionName: tinyxml2::XMLElement::Accept
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::NextSibling
    - TIXMLASSERT
    - XMLVisitor*::VisitExit
    - XMLNode*::Accept
    - XMLVisitor*::VisitEnter
    - FirstChild
    linkageType: ''
    returnType: bool
    signature: bool XMLElement::Accept( XMLVisitor* visitor ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - processEntities
    - whitespaceMode
    argTypes:
    - bool
    - Whitespace
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2202
      start: 2183
    functionDepth: 0
    functionLinenumber: 2183
    functionLinenumberEnd: 2202
    functionName: tinyxml2::XMLDocument::XMLDocument
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLDocument::XMLDocument( bool processEntities, Whitespace whitespaceMode
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2207,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2208
      start: 2205
    functionDepth: 0
    functionLinenumber: 2205
    functionLinenumberEnd: 2208
    functionName: XMLDocument::~XMLDocument()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - Clear
    linkageType: ''
    returnType: void
    signature: void XMLDocument::~XMLDocument()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2213,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2214,1
    - Dst: Size
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2216,1
    - Dst: SwapRemove
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2218,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2222
      start: 2211
    functionDepth: 1
    functionLinenumber: 2211
    functionLinenumberEnd: 2222
    functionName: tinyxml2::XMLDocument::MarkInUse
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    - SwapRemove
    - Size
    linkageType: ''
    returnType: void
    signature: void XMLDocument::MarkInUse(const XMLNode* const node)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: DeleteChildren
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2226,1
    - Dst: Size
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2227,1
    - Dst: tinyxml2::XMLDocument::DeleteNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2228,1
    - Dst: Error
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2232,1
    - Dst: tinyxml2::XMLDocument::ClearError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2234,1
    - Dst: Trace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2241,1
    - Dst: Trace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2242,1
    - Dst: Trace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2243,1
    - Dst: Trace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2244,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2249,1
    - Dst: CurrentAllocs
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2249,1
    - Dst: Untracked
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2249,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2250,1
    - Dst: CurrentAllocs
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2250,1
    - Dst: Untracked
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2250,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2251,1
    - Dst: CurrentAllocs
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2251,1
    - Dst: Untracked
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2251,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2252,1
    - Dst: CurrentAllocs
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2252,1
    - Dst: Untracked
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2252,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2255
      start: 2224
    functionDepth: 3
    functionLinenumber: 2224
    functionLinenumberEnd: 2255
    functionName: tinyxml2::XMLDocument::Clear
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 3
    functionsReached:
    - tinyxml2::XMLDocument::DeleteNode
    - Untracked
    - TIXMLASSERT
    - Trace
    - Size
    - tinyxml2::XMLDocument::ClearError
    - CurrentAllocs
    - Error
    - DeleteChildren
    linkageType: ''
    returnType: void
    signature: void XMLDocument::Clear()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2260,1
    - Dst: XMLDocument*::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2265,1
    - Dst: tinyxml2::XMLDocument::FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2266,1
    - Dst: XMLNode*::NextSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2266,1
    - Dst: XMLDocument*::InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2267,1
    - Dst: XMLNode*::DeepClone
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2267,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 9
    argCount: 1
    argNames:
    - target
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2269
      start: 2258
    functionDepth: 1
    functionLinenumber: 2258
    functionLinenumberEnd: 2269
    functionName: tinyxml2::XMLDocument::DeepCopy
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLNode*::DeepClone
    - XMLNode*::NextSibling
    - TIXMLASSERT
    - tinyxml2::XMLDocument::FirstChild
    - XMLDocument*::Clear
    - XMLDocument*::InsertEndChild
    linkageType: ''
    returnType: void
    signature: void XMLDocument::DeepCopy(XMLDocument* target) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CreateUnlinkedNode<XMLElement>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2273,1
    - Dst: XMLElement*::SetName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2276
      start: 2271
    functionDepth: 1
    functionLinenumber: 2271
    functionLinenumberEnd: 2276
    functionName: tinyxml2::XMLDocument::NewElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLElement*::SetName
    - CreateUnlinkedNode<XMLElement>
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * XMLDocument::NewElement( const char* name )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CreateUnlinkedNode<XMLComment>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2281,1
    - Dst: XMLComment*::SetValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2282,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2284
      start: 2279
    functionDepth: 0
    functionLinenumber: 2279
    functionLinenumberEnd: 2284
    functionName: tinyxml2::XMLDocument::NewComment
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - CreateUnlinkedNode<XMLComment>
    - XMLComment*::SetValue
    linkageType: ''
    returnType: XMLComment
    signature: XMLComment * XMLDocument::NewComment( const char* str )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CreateUnlinkedNode<XMLText>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2289,1
    - Dst: XMLText*::SetValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2290,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2292
      start: 2287
    functionDepth: 0
    functionLinenumber: 2287
    functionLinenumberEnd: 2292
    functionName: tinyxml2::XMLDocument::NewText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - CreateUnlinkedNode<XMLText>
    - XMLText*::SetValue
    linkageType: ''
    returnType: XMLText
    signature: XMLText * XMLDocument::NewText( const char* str )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CreateUnlinkedNode<XMLDeclaration>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2297,1
    - Dst: XMLDeclaration*::SetValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2298,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2300
      start: 2295
    functionDepth: 0
    functionLinenumber: 2295
    functionLinenumberEnd: 2300
    functionName: tinyxml2::XMLDocument::NewDeclaration
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLDeclaration*::SetValue
    - CreateUnlinkedNode<XMLDeclaration>
    linkageType: ''
    returnType: XMLDeclaration
    signature: XMLDeclaration * XMLDocument::NewDeclaration( const char* str )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: CreateUnlinkedNode<XMLUnknown>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2305,1
    - Dst: XMLUnknown*::SetValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2306,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2308
      start: 2303
    functionDepth: 0
    functionLinenumber: 2303
    functionLinenumberEnd: 2308
    functionName: tinyxml2::XMLDocument::NewUnknown
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLUnknown*::SetValue
    - CreateUnlinkedNode<XMLUnknown>
    linkageType: ''
    returnType: XMLUnknown
    signature: XMLUnknown * XMLDocument::NewUnknown( const char* str )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2312,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2313,1
    - Dst: fopen_s
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2316,1
    - Dst: fopen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2321,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 7
    argCount: 2
    argNames:
    - filepath
    - mode
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2324
      start: 2310
    functionDepth: 1
    functionLinenumber: 2310
    functionLinenumberEnd: 2324
    functionName: tinyxml2::callfopen
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - fopen_s
    - TIXMLASSERT
    - fopen
    linkageType: ''
    returnType: FILE
    signature: FILE * callfopen( const char* filepath, const char* mode )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2327,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2328,1
    - Dst: XMLNode*::_parent::DeleteChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2330,1
    - Dst: XMLNode*::_memPool::SetTracked
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2337,1
    - Dst: tinyxml2::XMLNode::DeleteNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2339,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 1
    argNames:
    - node
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2341
      start: 2326
    functionDepth: 2
    functionLinenumber: 2326
    functionLinenumberEnd: 2341
    functionName: tinyxml2::XMLDocument::DeleteNode
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - XMLNode*::_parent::DeleteChild
    - tinyxml2::XMLNode::DeleteNode
    - TIXMLASSERT
    - XMLNode*::_memPool::SetTracked
    linkageType: ''
    returnType: void
    signature: void XMLDocument::DeleteNode( XMLNode* node )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2347,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2348,1
    - Dst: tinyxml2::XMLDocument::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2352,1
    - Dst: callfopen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2353,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2355,1
    - Dst: tinyxml2::XMLDocument::LoadFile
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2358,1
    - Dst: fclose
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2359,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 14
    argCount: 1
    argNames:
    - filename
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2361
      start: 2344
    functionDepth: 2
    functionLinenumber: 2344
    functionLinenumberEnd: 2361
    functionName: tinyxml2::XMLDocument::LoadFile
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 4
    functionsReached:
    - TIXMLASSERT
    - fclose
    - callfopen
    - tinyxml2::XMLDocument::LoadFile
    - tinyxml2::XMLDocument::SetError
    - tinyxml2::XMLDocument::Clear
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLDocument::LoadFile( const char* filename )
  - BBCount: 6
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2365,1
    - Dst: TIXML_FSEEK
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2367,1
    - Dst: fgetc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2368,1
    - Dst: ferror
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2368,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2369,1
    - Dst: TIXML_FSEEK
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2373,1
    - Dst: TIXML_FTELL
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2377,1
    - Dst: TIXML_FSEEK
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2378,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2380,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2383,1
    - Dst: static_cast<unsigned long long>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2384,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2387,1
    - Dst: static_cast<unsigned long long>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2390,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2392,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2397,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2401,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2402,1
    - Dst: char::char
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2403,1
    - Dst: fread
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2404,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2406,1
    - Dst: tinyxml2::XMLDocument::Parse
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2412,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 33
    argCount: 1
    argNames:
    - fp
    argTypes:
    - FILE*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2414
      start: 2363
    functionDepth: 3
    functionLinenumber: 2363
    functionLinenumberEnd: 2414
    functionName: tinyxml2::XMLDocument::LoadFile
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 4
    functionsReached:
    - TIXML_FSEEK
    - char::char
    - static_cast<unsigned long long>
    - fgetc
    - ferror
    - fread
    - TIXMLASSERT
    - TIXML_FTELL
    - tinyxml2::XMLDocument::Parse
    - static_cast<size_t>
    - tinyxml2::XMLDocument::SetError
    - tinyxml2::XMLDocument::Clear
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLDocument::LoadFile( FILE* fp )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2420,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2421,1
    - Dst: callfopen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2425,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2427,1
    - Dst: tinyxml2::XMLDocument::SaveFile
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2430,1
    - Dst: fclose
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2431,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 2
    argNames:
    - filename
    - compact
    argTypes:
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2433
      start: 2417
    functionDepth: 2
    functionLinenumber: 2417
    functionLinenumberEnd: 2433
    functionName: tinyxml2::XMLDocument::SaveFile
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - tinyxml2::XMLDocument::SaveFile
    - TIXMLASSERT
    - fclose
    - callfopen
    - tinyxml2::XMLDocument::SetError
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLDocument::SaveFile( const char* filename, bool compact
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::ClearError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2440,1
    - Dst: tinyxml2::XMLDocument::Print
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2442,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 2
    argNames:
    - fp
    - compact
    argTypes:
    - FILE*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2444
      start: 2436
    functionDepth: 3
    functionLinenumber: 2436
    functionLinenumberEnd: 2444
    functionName: tinyxml2::XMLDocument::SaveFile
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - tinyxml2::XMLDocument::Print
    - tinyxml2::XMLDocument::ClearError
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLDocument::SaveFile( FILE* fp, bool compact )
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2449,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2452,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2455,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2456,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2458,1
    - Dst: char::char
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2459,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2460,1
    - Dst: tinyxml2::XMLDocument::Parse
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2463,1
    - Dst: Error
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2464,1
    - Dst: DeleteChildren
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2468,1
    - Dst: tinyxml2::XMLDocument::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2469,1
    - Dst: tinyxml2::XMLDocument::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2470,1
    - Dst: tinyxml2::XMLDocument::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2471,1
    - Dst: tinyxml2::XMLDocument::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2472,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 22
    argCount: 2
    argNames:
    - xml
    - nBytes
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2475
      start: 2447
    functionDepth: 2
    functionLinenumber: 2447
    functionLinenumberEnd: 2475
    functionName: tinyxml2::XMLDocument::Parse
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 6
    functionsReached:
    - char::char
    - memcpy
    - TIXMLASSERT
    - tinyxml2::XMLDocument::Parse
    - strlen
    - Error
    - DeleteChildren
    - static_cast<size_t>
    - tinyxml2::XMLDocument::SetError
    - tinyxml2::XMLDocument::Clear
    linkageType: ''
    returnType: XMLError
    signature: XMLError XMLDocument::Parse( const char* xml, size_t nBytes )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::Accept
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2481,1
    - Dst: tinyxml2::XMLDocument::Accept
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2485,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - streamer
    argTypes:
    - XMLPrinter*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2487
      start: 2478
    functionDepth: 2
    functionLinenumber: 2478
    functionLinenumberEnd: 2487
    functionName: tinyxml2::XMLDocument::Print
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - tinyxml2::XMLDocument::Accept
    linkageType: ''
    returnType: void
    signature: void XMLDocument::Print( XMLPrinter* streamer ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2493,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2494
      start: 2490
    functionDepth: 0
    functionLinenumber: 2490
    functionLinenumberEnd: 2494
    functionName: tinyxml2::XMLDocument::ClearError
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 4
    functionsReached:
    - Reset
    linkageType: ''
    returnType: void
    signature: void XMLDocument::ClearError()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2499,1
    - Dst: Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2502,1
    - Dst: char::char
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2505,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2507,1
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2508,1
    - Dst: tinyxml2::XMLDocument::ErrorIDToName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2509,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2509,1
    - Dst: static_cast<unsigned int>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2509,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2512,1
    - Dst: TIXML_SNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2513,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2514,1
    - Dst: va_start
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2517,1
    - Dst: TIXML_VSNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2518,1
    - Dst: va_end
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2519,1
    - Dst: SetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2521,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 16
    argCount: 3
    argNames:
    - error
    - lineNum
    - format
    argTypes:
    - XMLError
    - int
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2523
      start: 2497
    functionDepth: 2
    functionLinenumber: 2497
    functionLinenumberEnd: 2523
    functionName: tinyxml2::XMLDocument::SetError
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 10
    functionsReached:
    - Reset
    - char::char
    - static_cast<unsigned int>
    - va_start
    - va_end
    - TIXML_VSNPRINTF
    - SetStr
    - TIXMLASSERT
    - tinyxml2::XMLDocument::ErrorIDToName
    - strlen
    - TIXML_SNPRINTF
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void XMLDocument::SetError( XMLError error, int lineNum, const char*
      format, ... )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2528,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2530,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 4
    argCount: 1
    argNames:
    - errorID
    argTypes:
    - XMLError
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2532
      start: 2526
    functionDepth: 1
    functionLinenumber: 2526
    functionLinenumberEnd: 2532
    functionName: tinyxml2::XMLDocument::ErrorIDToName
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 3
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: char
    signature: char * XMLDocument::ErrorIDToName(XMLError errorID)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Empty
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2536,1
    - Dst: GetStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2536,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2537
      start: 2534
    functionDepth: 0
    functionLinenumber: 2534
    functionLinenumberEnd: 2537
    functionName: tinyxml2::XMLDocument::ErrorStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - Empty
    - GetStr
    linkageType: ''
    returnType: char
    signature: char * XMLDocument::ErrorStr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2542,1
    - Dst: tinyxml2::XMLDocument::ErrorStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2542,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2543
      start: 2540
    functionDepth: 1
    functionLinenumber: 2540
    functionLinenumberEnd: 2543
    functionName: tinyxml2::XMLDocument::PrintError
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLDocument::ErrorStr
    - printf
    linkageType: ''
    returnType: void
    signature: void XMLDocument::PrintError() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::ErrorIDToName
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2547,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2548
      start: 2545
    functionDepth: 2
    functionLinenumber: 2545
    functionLinenumberEnd: 2548
    functionName: tinyxml2::XMLDocument::ErrorName
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLDocument::ErrorIDToName
    linkageType: ''
    returnType: char
    signature: char * XMLDocument::ErrorName() const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2552,1
    - Dst: NoChildren
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2552,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2553,1
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2557,1
    - Dst: const_cast<char*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2558,1
    - Dst: tinyxml2::XMLUtil::ReadBOM
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2558,1
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2560,1
    - Dst: ParseDeep
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2563,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 12
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2564
      start: 2550
    functionDepth: 2
    functionLinenumber: 2550
    functionLinenumberEnd: 2564
    functionName: tinyxml2::XMLDocument::Parse
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 6
    functionsReached:
    - NoChildren
    - tinyxml2::XMLUtil::ReadBOM
    - TIXMLASSERT
    - tinyxml2::SkipWhiteSpace
    - ParseDeep
    - const_cast<char*>
    - tinyxml2::XMLDocument::SetError
    linkageType: ''
    returnType: void
    signature: void XMLDocument::Parse()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::SetError
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2570,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2572
      start: 2566
    functionDepth: 2
    functionLinenumber: 2566
    functionLinenumberEnd: 2572
    functionName: tinyxml2::XMLDocument::PushDepth
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLDocument::SetError
    linkageType: ''
    returnType: void
    signature: void XMLDocument::PushDepth()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2576,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2578
      start: 2574
    functionDepth: 1
    functionLinenumber: 2574
    functionLinenumberEnd: 2578
    functionName: tinyxml2::XMLDocument::PopDepth
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void XMLDocument::PopDepth()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2597,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2598,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2601,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2602,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2603,1
    - Dst: Push
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2604,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 13
    argCount: 3
    argNames:
    - file
    - compact
    - depth
    argTypes:
    - FILE*
    - bool
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2605
      start: 2580
    functionDepth: 1
    functionLinenumber: 2580
    functionLinenumberEnd: 2605
    functionName: tinyxml2::XMLPrinter::XMLPrinter
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    - Push
    - static_cast<unsigned char>
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::XMLPrinter( FILE* file, bool compact, int depth )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: va_start
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2611,1
    - Dst: vfprintf
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2614,1
    - Dst: TIXML_VSCPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2617,1
    - Dst: va_end
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2619,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2620,1
    - Dst: va_start
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2621,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2622,1
    - Dst: Size
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2622,1
    - Dst: Size
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2622,1
    - Dst: PushArr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2623,1
    - Dst: TIXML_VSNPRINTF
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2624,1
    - Dst: va_end
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2626,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - format
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2627
      start: 2608
    functionDepth: 2
    functionLinenumber: 2608
    functionLinenumberEnd: 2627
    functionName: tinyxml2::XMLPrinter::Print
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - va_start
    - va_end
    - TIXML_VSNPRINTF
    - vfprintf
    - TIXMLASSERT
    - TIXML_VSCPRINTF
    - Size
    - PushArr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::Print( const char* format, ... )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fwrite
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2633,1
    - Dst: PushArr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2636,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2636,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2637,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - char*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2640
      start: 2630
    functionDepth: 0
    functionLinenumber: 2630
    functionLinenumberEnd: 2640
    functionName: tinyxml2::XMLPrinter::Write
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 10
    functionsReached:
    - fwrite
    - memcpy
    - static_cast<int>
    - PushArr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::Write( const char* data, size_t size )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: fputc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2646,1
    - Dst: PushArr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2649,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 7
    argCount: 1
    argNames:
    - ch
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2653
      start: 2643
    functionDepth: 0
    functionLinenumber: 2643
    functionLinenumberEnd: 2653
    functionName: tinyxml2::XMLPrinter::Putc
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 6
    functionsReached:
    - fputc
    - PushArr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::Putc( char ch )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2659,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 1
    argNames:
    - depth
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2661
      start: 2656
    functionDepth: 0
    functionLinenumber: 2656
    functionLinenumberEnd: 2661
    functionName: tinyxml2::XMLPrinter::PrintSpace
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - tinyxml2::XMLPrinter::Write
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PrintSpace( int depth )
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2672,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2678,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2681,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2682,1
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2688,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2689,1
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2690,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2697,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2703,1
    - Dst: static_cast<int>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2709,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2710,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2714,1
    CyclomaticComplexity: 11
    EdgeCount: 11
    ICount: 34
    argCount: 2
    argNames:
    - p
    - restricted
    argTypes:
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2716
      start: 2664
    functionDepth: 1
    functionLinenumber: 2664
    functionLinenumberEnd: 2716
    functionName: tinyxml2::XMLPrinter::PrintString
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 2
    functionsReached:
    - tinyxml2::XMLPrinter::Write
    - TIXMLASSERT
    - static_cast<unsigned char>
    - tinyxml2::XMLPrinter::Putc
    - static_cast<int>
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PrintString( const char* p, bool restricted )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2723,1
    - Dst: reinterpret_cast< const char* >
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2723,1
    - Dst: tinyxml2::XMLPrinter::PushDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2726,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 2
    argNames:
    - writeBOM
    - writeDec
    argTypes:
    - bool
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2728
      start: 2719
    functionDepth: 3
    functionLinenumber: 2719
    functionLinenumberEnd: 2728
    functionName: tinyxml2::XMLPrinter::PushHeader
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLPrinter::Write
    - tinyxml2::XMLPrinter::PushDeclaration
    - reinterpret_cast< const char* >
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushHeader( bool writeBOM, bool writeDec )
  - BBCount: 4
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::SealElementIfJustOpened
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2732,1
    - Dst: tinyxml2::XMLPrinter::PrintSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2739,1
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2741,1
    - Dst: tinyxml2::XMLPrinter::PrintSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2742,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 13
    argCount: 1
    argNames:
    - compactMode
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2746
      start: 2730
    functionDepth: 2
    functionLinenumber: 2730
    functionLinenumberEnd: 2746
    functionName: tinyxml2::XMLPrinter::PrepareForNewNode
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 4
    functionsReached:
    - tinyxml2::XMLPrinter::SealElementIfJustOpened
    - tinyxml2::XMLPrinter::Putc
    - tinyxml2::XMLPrinter::PrintSpace
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PrepareForNewNode( bool compactMode )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::PrepareForNewNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2750,1
    - Dst: Push
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2751,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2753,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2754,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - name
    - compactMode
    argTypes:
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2758
      start: 2748
    functionDepth: 2
    functionLinenumber: 2748
    functionLinenumberEnd: 2758
    functionName: tinyxml2::XMLPrinter::OpenElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLPrinter::Write
    - tinyxml2::XMLPrinter::PrepareForNewNode
    - Push
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::OpenElement( const char* name, bool compactMode )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2763,1
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2764,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2765,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2766,1
    - Dst: tinyxml2::XMLPrinter::PrintString
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2767,1
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2768,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2769
      start: 2761
    functionDepth: 2
    functionLinenumber: 2761
    functionLinenumberEnd: 2769
    functionName: tinyxml2::XMLPrinter::PushAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 7
    functionsReached:
    - tinyxml2::XMLPrinter::Putc
    - TIXMLASSERT
    - tinyxml2::XMLPrinter::PrintString
    - tinyxml2::XMLPrinter::Write
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushAttribute( const char* name, const char* value
      )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2775,1
    - Dst: tinyxml2::XMLPrinter::PushAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2776,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - v
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2777
      start: 2772
    functionDepth: 1
    functionLinenumber: 2772
    functionLinenumberEnd: 2777
    functionName: tinyxml2::XMLPrinter::PushAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 8
    functionsReached:
    - tinyxml2::XMLPrinter::PushAttribute
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushAttribute( const char* name, int v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2783,1
    - Dst: tinyxml2::XMLPrinter::PushAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2784,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - v
    argTypes:
    - char*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2785
      start: 2780
    functionDepth: 1
    functionLinenumber: 2780
    functionLinenumberEnd: 2785
    functionName: tinyxml2::XMLPrinter::PushAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 9
    functionsReached:
    - tinyxml2::XMLPrinter::PushAttribute
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushAttribute( const char* name, unsigned v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2791,1
    - Dst: tinyxml2::XMLPrinter::PushAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2792,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - v
    argTypes:
    - char*
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2793
      start: 2788
    functionDepth: 1
    functionLinenumber: 2788
    functionLinenumberEnd: 2793
    functionName: tinyxml2::XMLPrinter::PushAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 10
    functionsReached:
    - tinyxml2::XMLPrinter::PushAttribute
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushAttribute(const char* name, int64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2799,1
    - Dst: tinyxml2::XMLPrinter::PushAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2800,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - v
    argTypes:
    - char*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2801
      start: 2796
    functionDepth: 1
    functionLinenumber: 2796
    functionLinenumberEnd: 2801
    functionName: tinyxml2::XMLPrinter::PushAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 11
    functionsReached:
    - tinyxml2::XMLPrinter::PushAttribute
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushAttribute(const char* name, uint64_t v)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2807,1
    - Dst: tinyxml2::XMLPrinter::PushAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2808,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - v
    argTypes:
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2809
      start: 2804
    functionDepth: 1
    functionLinenumber: 2804
    functionLinenumberEnd: 2809
    functionName: tinyxml2::XMLPrinter::PushAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 12
    functionsReached:
    - tinyxml2::XMLPrinter::PushAttribute
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushAttribute( const char* name, bool v )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2815,1
    - Dst: tinyxml2::XMLPrinter::PushAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2816,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 2
    argNames:
    - name
    - v
    argTypes:
    - char*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2817
      start: 2812
    functionDepth: 1
    functionLinenumber: 2812
    functionLinenumberEnd: 2817
    functionName: tinyxml2::XMLPrinter::PushAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 13
    functionsReached:
    - tinyxml2::XMLPrinter::PushAttribute
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushAttribute( const char* name, double v )
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: Pop
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2823,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2826,1
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2830,1
    - Dst: tinyxml2::XMLPrinter::PrintSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2831,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2833,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2834,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2835,1
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2842,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 20
    argCount: 1
    argNames:
    - compactMode
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2845
      start: 2820
    functionDepth: 1
    functionLinenumber: 2820
    functionLinenumberEnd: 2845
    functionName: tinyxml2::XMLPrinter::CloseElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLPrinter::Write
    - Pop
    - tinyxml2::XMLPrinter::PrintSpace
    - tinyxml2::XMLPrinter::Putc
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::CloseElement( bool compactMode )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2854,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2855
      start: 2848
    functionDepth: 1
    functionLinenumber: 2848
    functionLinenumberEnd: 2855
    functionName: tinyxml2::XMLPrinter::SealElementIfJustOpened
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 3
    functionsReached:
    - tinyxml2::XMLPrinter::Putc
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::SealElementIfJustOpened()
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::SealElementIfJustOpened
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2862,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2864,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2865,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2866,1
    - Dst: tinyxml2::XMLPrinter::PrintString
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2869,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 10
    argCount: 2
    argNames:
    - text
    - cdata
    argTypes:
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2871
      start: 2858
    functionDepth: 2
    functionLinenumber: 2858
    functionLinenumberEnd: 2871
    functionName: tinyxml2::XMLPrinter::PushText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 8
    functionsReached:
    - tinyxml2::XMLPrinter::SealElementIfJustOpened
    - tinyxml2::XMLPrinter::PrintString
    - tinyxml2::XMLPrinter::Write
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushText( const char* text, bool cdata )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2877,1
    - Dst: tinyxml2::XMLPrinter::PushText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2878,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2879
      start: 2874
    functionDepth: 1
    functionLinenumber: 2874
    functionLinenumberEnd: 2879
    functionName: tinyxml2::XMLPrinter::PushText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 9
    functionsReached:
    - tinyxml2::XMLPrinter::PushText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushText( int64_t value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2885,1
    - Dst: tinyxml2::XMLPrinter::PushText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2886,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2887
      start: 2882
    functionDepth: 1
    functionLinenumber: 2882
    functionLinenumberEnd: 2887
    functionName: tinyxml2::XMLPrinter::PushText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 10
    functionsReached:
    - tinyxml2::XMLPrinter::PushText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushText( uint64_t value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2893,1
    - Dst: tinyxml2::XMLPrinter::PushText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2894,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2895
      start: 2890
    functionDepth: 1
    functionLinenumber: 2890
    functionLinenumberEnd: 2895
    functionName: tinyxml2::XMLPrinter::PushText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 11
    functionsReached:
    - tinyxml2::XMLPrinter::PushText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushText( int value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2901,1
    - Dst: tinyxml2::XMLPrinter::PushText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2902,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2903
      start: 2898
    functionDepth: 1
    functionLinenumber: 2898
    functionLinenumberEnd: 2903
    functionName: tinyxml2::XMLPrinter::PushText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 12
    functionsReached:
    - tinyxml2::XMLPrinter::PushText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushText( unsigned value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2909,1
    - Dst: tinyxml2::XMLPrinter::PushText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2910,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2911
      start: 2906
    functionDepth: 1
    functionLinenumber: 2906
    functionLinenumberEnd: 2911
    functionName: tinyxml2::XMLPrinter::PushText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 13
    functionsReached:
    - tinyxml2::XMLPrinter::PushText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushText( bool value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2917,1
    - Dst: tinyxml2::XMLPrinter::PushText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2918,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2919
      start: 2914
    functionDepth: 1
    functionLinenumber: 2914
    functionLinenumberEnd: 2919
    functionName: tinyxml2::XMLPrinter::PushText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 14
    functionsReached:
    - tinyxml2::XMLPrinter::PushText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushText( float value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLUtil::ToStr
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2925,1
    - Dst: tinyxml2::XMLPrinter::PushText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2926,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - value
    argTypes:
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2927
      start: 2922
    functionDepth: 1
    functionLinenumber: 2922
    functionLinenumberEnd: 2927
    functionName: tinyxml2::XMLPrinter::PushText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 15
    functionsReached:
    - tinyxml2::XMLPrinter::PushText
    - tinyxml2::XMLUtil::ToStr
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushText( double value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::PrepareForNewNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2932,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2934,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2935,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2936,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - comment
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2937
      start: 2930
    functionDepth: 2
    functionLinenumber: 2930
    functionLinenumberEnd: 2937
    functionName: tinyxml2::XMLPrinter::PushComment
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLPrinter::Write
    - tinyxml2::XMLPrinter::PrepareForNewNode
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushComment( const char* comment )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::PrepareForNewNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2942,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2944,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2945,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2946,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2947
      start: 2940
    functionDepth: 2
    functionLinenumber: 2940
    functionLinenumberEnd: 2947
    functionName: tinyxml2::XMLPrinter::PushDeclaration
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 3
    functionsReached:
    - tinyxml2::XMLPrinter::Write
    - tinyxml2::XMLPrinter::PrepareForNewNode
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushDeclaration( const char* value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::PrepareForNewNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2952,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2954,1
    - Dst: tinyxml2::XMLPrinter::Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2955,1
    - Dst: tinyxml2::XMLPrinter::Putc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2956,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - value
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2957
      start: 2950
    functionDepth: 2
    functionLinenumber: 2950
    functionLinenumberEnd: 2957
    functionName: tinyxml2::XMLPrinter::PushUnknown
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 1
    functionsReached:
    - tinyxml2::XMLPrinter::Write
    - tinyxml2::XMLPrinter::Putc
    - tinyxml2::XMLPrinter::PrepareForNewNode
    linkageType: ''
    returnType: void
    signature: void XMLPrinter::PushUnknown( const char* value )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: ProcessEntities
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2962,1
    - Dst: HasBOM
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2963,1
    - Dst: tinyxml2::XMLPrinter::PushHeader
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2964,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 1
    argNames:
    - ' doc'
    argTypes:
    - XMLDocument
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2967
      start: 2960
    functionDepth: 2
    functionLinenumber: 2960
    functionLinenumberEnd: 2967
    functionName: tinyxml2::XMLPrinter::VisitEnter
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - HasBOM
    - ProcessEntities
    - tinyxml2::XMLPrinter::PushHeader
    linkageType: ''
    returnType: bool
    signature: bool XMLPrinter::VisitEnter( const XMLDocument& doc )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: Parent
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2973,1
    - Dst: Parent
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2974,1
    - Dst: CompactMode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2976,1
    - Dst: tinyxml2::XMLPrinter::OpenElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2977,1
    - Dst: Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2977,1
    - Dst: tinyxml2::XMLPrinter::PushAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2979,1
    - Dst: XMLAttribute*::Name
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2979,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2979,1
    - Dst: XMLAttribute*::Next
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2980,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 10
    argCount: 2
    argNames:
    - ' element'
    - attribute
    argTypes:
    - XMLElement
    - XMLAttribute*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2983
      start: 2970
    functionDepth: 3
    functionLinenumber: 2970
    functionLinenumberEnd: 2983
    functionName: tinyxml2::XMLPrinter::VisitEnter
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - XMLAttribute*::Value
    - tinyxml2::XMLPrinter::PushAttribute
    - XMLAttribute*::Next
    - CompactMode
    - Name
    - Parent
    - tinyxml2::XMLPrinter::OpenElement
    - XMLAttribute*::Name
    linkageType: ''
    returnType: bool
    signature: bool XMLPrinter::VisitEnter( const XMLElement& element, const XMLAttribute*
      attribute )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::CloseElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2988,1
    - Dst: CompactMode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2988,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' element'
    argTypes:
    - XMLElement
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2990
      start: 2986
    functionDepth: 2
    functionLinenumber: 2986
    functionLinenumberEnd: 2990
    functionName: tinyxml2::XMLPrinter::VisitExit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - CompactMode
    - tinyxml2::XMLPrinter::CloseElement
    linkageType: ''
    returnType: bool
    signature: bool XMLPrinter::VisitExit( const XMLElement& element )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::PushText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2995,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2995,1
    - Dst: CData
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:2995,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' text'
    argTypes:
    - XMLText
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2997
      start: 2993
    functionDepth: 3
    functionLinenumber: 2993
    functionLinenumberEnd: 2997
    functionName: tinyxml2::XMLPrinter::Visit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::PushText
    - CData
    - Value
    linkageType: ''
    returnType: bool
    signature: bool XMLPrinter::Visit( const XMLText& text )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::PushComment
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:3002,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:3002,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' comment'
    argTypes:
    - XMLComment
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3004
      start: 3000
    functionDepth: 3
    functionLinenumber: 3000
    functionLinenumberEnd: 3004
    functionName: tinyxml2::XMLPrinter::Visit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::PushComment
    - Value
    linkageType: ''
    returnType: bool
    signature: bool XMLPrinter::Visit( const XMLComment& comment )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::PushDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:3008,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:3008,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' declaration'
    argTypes:
    - XMLDeclaration
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3010
      start: 3006
    functionDepth: 3
    functionLinenumber: 3006
    functionLinenumberEnd: 3010
    functionName: tinyxml2::XMLPrinter::Visit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::PushDeclaration
    - Value
    linkageType: ''
    returnType: bool
    signature: bool XMLPrinter::Visit( const XMLDeclaration& declaration )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLPrinter::PushUnknown
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:3015,1
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp:3015,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' unknown'
    argTypes:
    - XMLUnknown
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 3017
      start: 3013
    functionDepth: 3
    functionLinenumber: 3013
    functionLinenumberEnd: 3017
    functionName: tinyxml2::XMLPrinter::Visit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLPrinter::PushUnknown
    - Value
    linkageType: ''
    returnType: bool
    signature: bool XMLPrinter::Visit( const XMLUnknown& unknown )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 84
      start: 83
    functionDepth: 0
    functionLinenumber: 83
    functionLinenumberEnd: 84
    functionName: TIXMLASSERT
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 102
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TIXMLASSERT( x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 87
      start: 86
    functionDepth: 0
    functionLinenumber: 86
    functionLinenumberEnd: 87
    functionName: TIXMLASSERT
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 102
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TIXMLASSERT( x )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 1
    argCount: 3
    argNames:
    - (
    - x
    - )
    argTypes:
    - auto
    - auto
    - auto
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 93
      start: 92
    functionDepth: 0
    functionLinenumber: 92
    functionLinenumberEnd: 93
    functionName: TIXMLASSERT
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 102
    functionsReached: []
    linkageType: ''
    returnType: auto
    signature: TIXMLASSERT( x )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:153,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:154,1
    - Dst: Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:155,1
    - Dst: Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:168,1
    - Dst: const_cast<char*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 194
    functionName: tinyxml2::StrPair
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - Reset
    - TIXMLASSERT
    - const_cast<char*>
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB StrPair
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 149
    functionName: tinyxml2::StrPair
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StrPair()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:153,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:154,1
    - Dst: Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - start
    - end
    - flags
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 159
    functionName: tinyxml2::Set
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - Reset
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void Set( char* start, char* end, int flags )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: tinyxml2::Empty
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:168,1
    - Dst: const_cast<char*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: tinyxml2::SetInternedStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - Reset
    - const_cast<char*>
    linkageType: ''
    returnType: void
    signature: void SetInternedStr( const char* str )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 211
    functionName: tinyxml2::DynArray::DynArray
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DynArray()
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: ~DynArray()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~DynArray()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 221
    functionName: tinyxml2::DynArray::Clear
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:224,1
    - Dst: tinyxml2::DynArray::EnsureCapacity
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - t
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 223
    functionDepth: 1
    functionLinenumber: 223
    functionLinenumberEnd: 228
    functionName: tinyxml2::DynArray::Push
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    - tinyxml2::DynArray::EnsureCapacity
    linkageType: ''
    returnType: void
    signature: void Push( T t )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:231,1
    - Dst: tinyxml2::DynArray::EnsureCapacity
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - count
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 230
    functionDepth: 1
    functionLinenumber: 230
    functionLinenumberEnd: 236
    functionName: tinyxml2::DynArray::PushArr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    - tinyxml2::DynArray::EnsureCapacity
    linkageType: ''
    returnType: T
    signature: T * PushArr( size_t count )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 238
    functionDepth: 1
    functionLinenumber: 238
    functionLinenumberEnd: 242
    functionName: tinyxml2::DynArray::Pop
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: T
    signature: T Pop()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - count
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 244
    functionDepth: 1
    functionLinenumber: 244
    functionLinenumberEnd: 247
    functionName: tinyxml2::DynArray::PopArr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void PopArr( size_t count )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 251
    functionName: tinyxml2::DynArray::Empty
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionName: '& operator[](size_t i)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: T
    signature: T & operator[](size_t i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 261
    functionName: '& operator[](size_t i) const'
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: T
    signature: T & operator[](size_t i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:264,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 266
    functionName: '& PeekTop() const'
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: T
    signature: T & PeekTop() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 271
    functionName: tinyxml2::DynArray::Size
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: size_t
    signature: size_t Size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 273
    functionDepth: 1
    functionLinenumber: 273
    functionLinenumberEnd: 276
    functionName: tinyxml2::DynArray::Capacity
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: size_t
    signature: size_t Capacity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:279,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 278
    functionDepth: 1
    functionLinenumber: 278
    functionLinenumberEnd: 283
    functionName: tinyxml2::DynArray::SwapRemove
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void SwapRemove(size_t i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 285
    functionDepth: 1
    functionLinenumber: 285
    functionLinenumberEnd: 288
    functionName: tinyxml2::DynArray::Mem
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: T
    signature: T * Mem() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 290
    functionDepth: 1
    functionLinenumber: 290
    functionLinenumberEnd: 293
    functionName: tinyxml2::DynArray::Mem
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: T
    signature: T * Mem()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:300,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:302,1
    - Dst: T::T
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:304,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:305,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:306,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - cap
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 299
    functionDepth: 1
    functionLinenumber: 299
    functionLinenumberEnd: 313
    functionName: tinyxml2::DynArray::EnsureCapacity
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - T::T
    - memcpy
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void EnsureCapacity( size_t cap )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 329
    functionName: tinyxml2::MemPool::MemPool
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MemPool()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 330
    functionDepth: 0
    functionLinenumber: 330
    functionLinenumberEnd: 330
    functionName: ~MemPool()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MemPool()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 346
    functionDepth: 0
    functionLinenumber: 346
    functionLinenumberEnd: 346
    functionName: tinyxml2::MemPoolT::MemPoolT
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MemPoolT()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 347
    functionDepth: 2
    functionLinenumber: 347
    functionLinenumberEnd: 349
    functionName: ~MemPoolT()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLDocument::Clear
    linkageType: ''
    returnType: void
    signature: void ~MemPoolT()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Empty
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:353,1
    - Dst: Pop
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:354,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 362
    functionName: tinyxml2::MemPoolT::Clear
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - Pop
    - Empty
    linkageType: ''
    returnType: void
    signature: void Clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 364
    functionDepth: 0
    functionLinenumber: 364
    functionLinenumberEnd: 366
    functionName: tinyxml2::MemPoolT::ItemSize
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t ItemSize() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 367
    functionDepth: 0
    functionLinenumber: 367
    functionLinenumberEnd: 369
    functionName: tinyxml2::MemPoolT::CurrentAllocs
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t CurrentAllocs() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Block::Block
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:374,1
    - Dst: Push
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:375,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:385,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 371
    functionDepth: 1
    functionLinenumber: 371
    functionLinenumberEnd: 395
    functionName: tinyxml2::MemPoolT::Alloc
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    - Push
    - Block::Block
    linkageType: ''
    returnType: void
    signature: void * Alloc() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Item*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:402,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:404,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - mem
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 397
    functionDepth: 0
    functionLinenumber: 397
    functionLinenumberEnd: 408
    functionName: tinyxml2::MemPoolT::Free
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - memset
    - static_cast<Item*>
    linkageType: ''
    returnType: void
    signature: void Free( void* mem ) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:410,1
    - Dst: Size
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:412,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 409
    functionDepth: 0
    functionLinenumber: 409
    functionLinenumberEnd: 413
    functionName: tinyxml2::MemPoolT::Trace
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - Size
    - printf
    linkageType: ''
    returnType: void
    signature: void Trace( const char* name )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 415
    functionDepth: 0
    functionLinenumber: 415
    functionLinenumberEnd: 417
    functionName: tinyxml2::MemPoolT::SetTracked
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SetTracked() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 419
    functionDepth: 0
    functionLinenumber: 419
    functionLinenumberEnd: 421
    functionName: tinyxml2::MemPoolT::Untracked
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t Untracked() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 516
    functionName: tinyxml2::XMLVisitor
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB XMLVisitor
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 483
    functionDepth: 0
    functionLinenumber: 483
    functionLinenumberEnd: 485
    functionName: tinyxml2::VisitEnter
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool VisitEnter( const XMLDocument& /*doc*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 487
    functionDepth: 0
    functionLinenumber: 487
    functionLinenumberEnd: 489
    functionName: tinyxml2::VisitExit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool VisitExit( const XMLDocument& /*doc*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 494
    functionName: tinyxml2::VisitEnter
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool VisitEnter( const XMLElement& /*element*/, const XMLAttribute*
      /*firstAttribute*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 496
    functionDepth: 0
    functionLinenumber: 496
    functionLinenumberEnd: 498
    functionName: tinyxml2::VisitExit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool VisitExit( const XMLElement& /*element*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 503
    functionName: tinyxml2::Visit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Visit( const XMLDeclaration& /*declaration*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 505
    functionDepth: 0
    functionLinenumber: 505
    functionLinenumberEnd: 507
    functionName: tinyxml2::Visit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Visit( const XMLText& /*text*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 509
    functionDepth: 0
    functionLinenumber: 509
    functionLinenumberEnd: 511
    functionName: tinyxml2::Visit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Visit( const XMLComment& /*comment*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 513
    functionDepth: 0
    functionLinenumber: 513
    functionLinenumberEnd: 515
    functionName: tinyxml2::Visit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Visit( const XMLUnknown& /*unknown*/ )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:551,1
    - Dst: tinyxml2::IsWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:553,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:559,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 547
    functionDepth: 1
    functionLinenumber: 547
    functionLinenumberEnd: 561
    functionName: tinyxml2::XMLUtil
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - tinyxml2::IsWhiteSpace
    - TIXMLASSERT
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB XMLUtil
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_cast<char*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:563,1
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:563,1
    - Dst: const_cast<const char*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:563,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - curLineNumPtr
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 562
    functionDepth: 1
    functionLinenumber: 562
    functionLinenumberEnd: 564
    functionName: tinyxml2::SkipWhiteSpace
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 13
    functionsReached:
    - const_cast<const char*>
    - tinyxml2::SkipWhiteSpace
    - const_cast<char*>
    linkageType: ''
    returnType: char
    signature: char * SkipWhiteSpace( char* const p, int* curLineNumPtr )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::IsUTF8Continuation
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:569,1
    - Dst: isspace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:569,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:569,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 568
    functionDepth: 1
    functionLinenumber: 568
    functionLinenumberEnd: 570
    functionName: tinyxml2::IsWhiteSpace
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 3
    functionsReached:
    - isspace
    - tinyxml2::IsUTF8Continuation
    - static_cast<unsigned char>
    linkageType: ''
    returnType: bool
    signature: bool IsWhiteSpace( char p )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: isalpha
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:577,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 572
    functionDepth: 0
    functionLinenumber: 572
    functionLinenumberEnd: 581
    functionName: tinyxml2::IsNameStartChar
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached:
    - isalpha
    linkageType: ''
    returnType: bool
    signature: bool IsNameStartChar( unsigned char ch )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::IsNameStartChar
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:584,1
    - Dst: isdigit
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:585,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 583
    functionDepth: 1
    functionLinenumber: 583
    functionLinenumberEnd: 588
    functionName: tinyxml2::IsNameChar
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - isdigit
    - tinyxml2::IsNameStartChar
    linkageType: ''
    returnType: bool
    signature: bool IsNameChar( unsigned char ch )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:591,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 1
    argNames:
    - p
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 590
    functionDepth: 2
    functionLinenumber: 590
    functionLinenumberEnd: 593
    functionName: tinyxml2::IsPrefixHex
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - tinyxml2::SkipWhiteSpace
    linkageType: ''
    returnType: bool
    signature: bool IsPrefixHex( const char* p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:599,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:600,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:601,1
    - Dst: strncmp
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:602,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:602,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - p
    - q
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 595
    functionDepth: 1
    functionLinenumber: 595
    functionLinenumberEnd: 603
    functionName: tinyxml2::StringEqual
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 24
    functionsReached:
    - TIXMLASSERT
    - static_cast<size_t>
    - strncmp
    linkageType: ''
    returnType: bool
    signature: bool StringEqual( const char* p, const char* q, int nChar=INT_MAX )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 605
    functionDepth: 0
    functionLinenumber: 605
    functionLinenumberEnd: 607
    functionName: tinyxml2::IsUTF8Continuation
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool IsUTF8Continuation( const char p )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:153,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:154,1
    - Dst: Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:155,1
    - Dst: Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:168,1
    - Dst: const_cast<char*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 20
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 194
      start: 133
    functionDepth: 1
    functionLinenumber: 133
    functionLinenumberEnd: 194
    functionName: tinyxml2::StrPair
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - Reset
    - TIXMLASSERT
    - const_cast<char*>
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB StrPair
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 149
      start: 149
    functionDepth: 0
    functionLinenumber: 149
    functionLinenumberEnd: 149
    functionName: tinyxml2::StrPair
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void StrPair()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:153,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:154,1
    - Dst: Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 3
    argNames:
    - start
    - end
    - flags
    argTypes:
    - char*
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 159
      start: 152
    functionDepth: 1
    functionLinenumber: 152
    functionLinenumberEnd: 159
    functionName: tinyxml2::Set
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - Reset
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void Set( char* start, char* end, int flags )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 165
      start: 163
    functionDepth: 0
    functionLinenumber: 163
    functionLinenumberEnd: 165
    functionName: tinyxml2::Empty
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Reset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:168,1
    - Dst: const_cast<char*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:169,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 170
      start: 167
    functionDepth: 0
    functionLinenumber: 167
    functionLinenumberEnd: 170
    functionName: tinyxml2::SetInternedStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - Reset
    - const_cast<char*>
    linkageType: ''
    returnType: void
    signature: void SetInternedStr( const char* str )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 211
      start: 206
    functionDepth: 0
    functionLinenumber: 206
    functionLinenumberEnd: 211
    functionName: tinyxml2::DynArray::DynArray
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void DynArray()
  - BBCount: 2
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 217
      start: 213
    functionDepth: 0
    functionLinenumber: 213
    functionLinenumberEnd: 217
    functionName: ~DynArray()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~DynArray()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 221
      start: 219
    functionDepth: 0
    functionLinenumber: 219
    functionLinenumberEnd: 221
    functionName: tinyxml2::DynArray::Clear
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void Clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:224,1
    - Dst: tinyxml2::DynArray::EnsureCapacity
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:225,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - t
    argTypes:
    - T
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 228
      start: 223
    functionDepth: 2
    functionLinenumber: 223
    functionLinenumberEnd: 228
    functionName: tinyxml2::DynArray::Push
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    - tinyxml2::DynArray::EnsureCapacity
    linkageType: ''
    returnType: void
    signature: void Push( T t )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:231,1
    - Dst: tinyxml2::DynArray::EnsureCapacity
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:232,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - count
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 236
      start: 230
    functionDepth: 2
    functionLinenumber: 230
    functionLinenumberEnd: 236
    functionName: tinyxml2::DynArray::PushArr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    - tinyxml2::DynArray::EnsureCapacity
    linkageType: ''
    returnType: T
    signature: T * PushArr( size_t count )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:239,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 242
      start: 238
    functionDepth: 1
    functionLinenumber: 238
    functionLinenumberEnd: 242
    functionName: tinyxml2::DynArray::Pop
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: T
    signature: T Pop()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:245,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - count
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 244
    functionDepth: 1
    functionLinenumber: 244
    functionLinenumberEnd: 247
    functionName: tinyxml2::DynArray::PopArr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void PopArr( size_t count )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 251
      start: 249
    functionDepth: 0
    functionLinenumber: 249
    functionLinenumberEnd: 251
    functionName: tinyxml2::DynArray::Empty
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Empty() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:254,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 256
      start: 253
    functionDepth: 1
    functionLinenumber: 253
    functionLinenumberEnd: 256
    functionName: '& operator[](size_t i)'
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: T
    signature: T & operator[](size_t i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:259,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - i
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 261
      start: 258
    functionDepth: 1
    functionLinenumber: 258
    functionLinenumberEnd: 261
    functionName: '& operator[](size_t i) const'
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: T
    signature: T & operator[](size_t i) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:264,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 266
      start: 263
    functionDepth: 1
    functionLinenumber: 263
    functionLinenumberEnd: 266
    functionName: '& PeekTop() const'
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: T
    signature: T & PeekTop() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:269,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 268
    functionDepth: 1
    functionLinenumber: 268
    functionLinenumberEnd: 271
    functionName: tinyxml2::DynArray::Size
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: size_t
    signature: size_t Size() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:274,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 276
      start: 273
    functionDepth: 1
    functionLinenumber: 273
    functionLinenumberEnd: 276
    functionName: tinyxml2::DynArray::Capacity
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: size_t
    signature: size_t Capacity() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:279,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:280,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 5
    argCount: 1
    argNames:
    - i
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 283
      start: 278
    functionDepth: 1
    functionLinenumber: 278
    functionLinenumberEnd: 283
    functionName: tinyxml2::DynArray::SwapRemove
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void SwapRemove(size_t i)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:286,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 288
      start: 285
    functionDepth: 1
    functionLinenumber: 285
    functionLinenumberEnd: 288
    functionName: tinyxml2::DynArray::Mem
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: T
    signature: T * Mem() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:291,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 293
      start: 290
    functionDepth: 1
    functionLinenumber: 290
    functionLinenumberEnd: 293
    functionName: tinyxml2::DynArray::Mem
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: T
    signature: T * Mem()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:300,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:302,1
    - Dst: T::T
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:304,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:305,1
    - Dst: memcpy
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:306,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 12
    argCount: 1
    argNames:
    - cap
    argTypes:
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 313
      start: 299
    functionDepth: 1
    functionLinenumber: 299
    functionLinenumberEnd: 313
    functionName: tinyxml2::DynArray::EnsureCapacity
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached:
    - T::T
    - memcpy
    - TIXMLASSERT
    linkageType: ''
    returnType: void
    signature: void EnsureCapacity( size_t cap )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 329
      start: 329
    functionDepth: 0
    functionLinenumber: 329
    functionLinenumberEnd: 329
    functionName: tinyxml2::MemPool::MemPool
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MemPool()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 330
      start: 330
    functionDepth: 0
    functionLinenumber: 330
    functionLinenumberEnd: 330
    functionName: ~MemPool()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~MemPool()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 346
      start: 346
    functionDepth: 0
    functionLinenumber: 346
    functionLinenumberEnd: 346
    functionName: tinyxml2::MemPoolT::MemPoolT
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void MemPoolT()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::XMLDocument::Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:348,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 349
      start: 347
    functionDepth: 2
    functionLinenumber: 347
    functionLinenumberEnd: 349
    functionName: ~MemPoolT()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - tinyxml2::XMLDocument::Clear
    linkageType: ''
    returnType: void
    signature: void ~MemPoolT()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Empty
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:353,1
    - Dst: Pop
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:354,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 9
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 362
      start: 351
    functionDepth: 0
    functionLinenumber: 351
    functionLinenumberEnd: 362
    functionName: tinyxml2::MemPoolT::Clear
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - Pop
    - Empty
    linkageType: ''
    returnType: void
    signature: void Clear()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 366
      start: 364
    functionDepth: 0
    functionLinenumber: 364
    functionLinenumberEnd: 366
    functionName: tinyxml2::MemPoolT::ItemSize
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t ItemSize() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 369
      start: 367
    functionDepth: 0
    functionLinenumber: 367
    functionLinenumberEnd: 369
    functionName: tinyxml2::MemPoolT::CurrentAllocs
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t CurrentAllocs() const
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: Block::Block
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:374,1
    - Dst: Push
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:375,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:385,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 18
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 395
      start: 371
    functionDepth: 1
    functionLinenumber: 371
    functionLinenumberEnd: 395
    functionName: tinyxml2::MemPoolT::Alloc
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - TIXMLASSERT
    - Push
    - Block::Block
    linkageType: ''
    returnType: void
    signature: void * Alloc() override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: static_cast<Item*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:402,1
    - Dst: memset
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:404,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 1
    argNames:
    - mem
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 408
      start: 397
    functionDepth: 0
    functionLinenumber: 397
    functionLinenumberEnd: 408
    functionName: tinyxml2::MemPoolT::Free
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - memset
    - static_cast<Item*>
    linkageType: ''
    returnType: void
    signature: void Free( void* mem ) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: printf
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:410,1
    - Dst: Size
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:412,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - name
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 413
      start: 409
    functionDepth: 0
    functionLinenumber: 409
    functionLinenumberEnd: 413
    functionName: tinyxml2::MemPoolT::Trace
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - Size
    - printf
    linkageType: ''
    returnType: void
    signature: void Trace( const char* name )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 417
      start: 415
    functionDepth: 0
    functionLinenumber: 415
    functionLinenumberEnd: 417
    functionName: tinyxml2::MemPoolT::SetTracked
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SetTracked() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 421
      start: 419
    functionDepth: 0
    functionLinenumber: 419
    functionLinenumberEnd: 421
    functionName: tinyxml2::MemPoolT::Untracked
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: size_t
    signature: size_t Untracked() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 516
      start: 477
    functionDepth: 0
    functionLinenumber: 477
    functionLinenumberEnd: 516
    functionName: tinyxml2::XMLVisitor
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB XMLVisitor
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 485
      start: 483
    functionDepth: 0
    functionLinenumber: 483
    functionLinenumberEnd: 485
    functionName: tinyxml2::VisitEnter
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool VisitEnter( const XMLDocument& /*doc*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 489
      start: 487
    functionDepth: 0
    functionLinenumber: 487
    functionLinenumberEnd: 489
    functionName: tinyxml2::VisitExit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool VisitExit( const XMLDocument& /*doc*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 494
      start: 492
    functionDepth: 0
    functionLinenumber: 492
    functionLinenumberEnd: 494
    functionName: tinyxml2::VisitEnter
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool VisitEnter( const XMLElement& /*element*/, const XMLAttribute*
      /*firstAttribute*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 498
      start: 496
    functionDepth: 0
    functionLinenumber: 496
    functionLinenumberEnd: 498
    functionName: tinyxml2::VisitExit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool VisitExit( const XMLElement& /*element*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 503
      start: 501
    functionDepth: 0
    functionLinenumber: 501
    functionLinenumberEnd: 503
    functionName: tinyxml2::Visit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Visit( const XMLDeclaration& /*declaration*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 507
      start: 505
    functionDepth: 0
    functionLinenumber: 505
    functionLinenumberEnd: 507
    functionName: tinyxml2::Visit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Visit( const XMLText& /*text*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 511
      start: 509
    functionDepth: 0
    functionLinenumber: 509
    functionLinenumberEnd: 511
    functionName: tinyxml2::Visit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Visit( const XMLComment& /*comment*/ )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 515
      start: 513
    functionDepth: 0
    functionLinenumber: 513
    functionLinenumberEnd: 515
    functionName: tinyxml2::Visit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Visit( const XMLUnknown& /*unknown*/ )
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:551,1
    - Dst: tinyxml2::IsWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:553,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:559,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 561
      start: 547
    functionDepth: 2
    functionLinenumber: 547
    functionLinenumberEnd: 561
    functionName: tinyxml2::XMLUtil
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - tinyxml2::IsWhiteSpace
    - TIXMLASSERT
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB XMLUtil
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_cast<char*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:563,1
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:563,1
    - Dst: const_cast<const char*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:563,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - p
    - curLineNumPtr
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 564
      start: 562
    functionDepth: 1
    functionLinenumber: 562
    functionLinenumberEnd: 564
    functionName: tinyxml2::SkipWhiteSpace
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 15
    functionsReached:
    - const_cast<const char*>
    - tinyxml2::SkipWhiteSpace
    - const_cast<char*>
    linkageType: ''
    returnType: char
    signature: char * SkipWhiteSpace( char* const p, int* curLineNumPtr )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::IsUTF8Continuation
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:569,1
    - Dst: isspace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:569,1
    - Dst: static_cast<unsigned char>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:569,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 570
      start: 568
    functionDepth: 1
    functionLinenumber: 568
    functionLinenumberEnd: 570
    functionName: tinyxml2::IsWhiteSpace
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached:
    - isspace
    - tinyxml2::IsUTF8Continuation
    - static_cast<unsigned char>
    linkageType: ''
    returnType: bool
    signature: bool IsWhiteSpace( char p )
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: isalpha
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:577,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 8
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 581
      start: 572
    functionDepth: 0
    functionLinenumber: 572
    functionLinenumberEnd: 581
    functionName: tinyxml2::IsNameStartChar
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 5
    functionsReached:
    - isalpha
    linkageType: ''
    returnType: bool
    signature: bool IsNameStartChar( unsigned char ch )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::IsNameStartChar
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:584,1
    - Dst: isdigit
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:585,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 2
    argCount: 1
    argNames:
    - ch
    argTypes:
    - unsigned char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 588
      start: 583
    functionDepth: 1
    functionLinenumber: 583
    functionLinenumberEnd: 588
    functionName: tinyxml2::IsNameChar
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - isdigit
    - tinyxml2::IsNameStartChar
    linkageType: ''
    returnType: bool
    signature: bool IsNameChar( unsigned char ch )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: tinyxml2::SkipWhiteSpace
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:591,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 3
    argCount: 1
    argNames:
    - p
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 593
      start: 590
    functionDepth: 2
    functionLinenumber: 590
    functionLinenumberEnd: 593
    functionName: tinyxml2::IsPrefixHex
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - tinyxml2::SkipWhiteSpace
    linkageType: ''
    returnType: bool
    signature: bool IsPrefixHex( const char* p)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:599,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:600,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:601,1
    - Dst: strncmp
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:602,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:602,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 8
    argCount: 2
    argNames:
    - p
    - q
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 603
      start: 595
    functionDepth: 1
    functionLinenumber: 595
    functionLinenumberEnd: 603
    functionName: tinyxml2::StringEqual
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 24
    functionsReached:
    - TIXMLASSERT
    - static_cast<size_t>
    - strncmp
    linkageType: ''
    returnType: bool
    signature: bool StringEqual( const char* p, const char* q, int nChar=INT_MAX )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - p
    argTypes:
    - char
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 607
      start: 605
    functionDepth: 0
    functionLinenumber: 605
    functionLinenumberEnd: 607
    functionName: tinyxml2::IsUTF8Continuation
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool IsUTF8Continuation( const char p )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:678,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 680
      start: 670
    functionDepth: 1
    functionLinenumber: 670
    functionLinenumberEnd: 680
    functionName: XMLNode
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB XMLNode
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:683,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 685
      start: 682
    functionDepth: 1
    functionLinenumber: 682
    functionLinenumberEnd: 685
    functionName: GetDocument
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: XMLDocument
    signature: XMLDocument * GetDocument()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 690
      start: 688
    functionDepth: 0
    functionLinenumber: 688
    functionLinenumberEnd: 690
    functionName: ToElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: XMLElement
    signature: "XMLElement *\t\tToElement()"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 694
      start: 692
    functionDepth: 0
    functionLinenumber: 692
    functionLinenumberEnd: 694
    functionName: ToText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: XMLText
    signature: "XMLText *\t\tToText()"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 698
      start: 696
    functionDepth: 0
    functionLinenumber: 696
    functionLinenumberEnd: 698
    functionName: ToComment
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: XMLComment
    signature: "XMLComment *\t\tToComment()"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 702
      start: 700
    functionDepth: 0
    functionLinenumber: 700
    functionLinenumberEnd: 702
    functionName: ToDocument
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: XMLDocument
    signature: "XMLDocument *\tToDocument()"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 706
      start: 704
    functionDepth: 0
    functionLinenumber: 704
    functionLinenumberEnd: 706
    functionName: ToDeclaration
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: XMLDeclaration
    signature: "XMLDeclaration *\tToDeclaration()"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 710
      start: 708
    functionDepth: 0
    functionLinenumber: 708
    functionLinenumberEnd: 710
    functionName: ToUnknown
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: XMLUnknown
    signature: "XMLUnknown *\t\tToUnknown()"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 714
      start: 712
    functionDepth: 0
    functionLinenumber: 712
    functionLinenumberEnd: 714
    functionName: ToElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: XMLElement
    signature: "XMLElement *\t\tToElement() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 717
      start: 715
    functionDepth: 0
    functionLinenumber: 715
    functionLinenumberEnd: 717
    functionName: ToText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: XMLText
    signature: "XMLText *\t\t\tToText() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 720
      start: 718
    functionDepth: 0
    functionLinenumber: 718
    functionLinenumberEnd: 720
    functionName: ToComment
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: XMLComment
    signature: "XMLComment *\t\tToComment() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 723
      start: 721
    functionDepth: 0
    functionLinenumber: 721
    functionLinenumberEnd: 723
    functionName: ToDocument
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: XMLDocument
    signature: "XMLDocument *\t\tToDocument() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 726
      start: 724
    functionDepth: 0
    functionLinenumber: 724
    functionLinenumberEnd: 726
    functionName: ToDeclaration
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: XMLDeclaration
    signature: "XMLDeclaration *\tToDeclaration() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 729
      start: 727
    functionDepth: 0
    functionLinenumber: 727
    functionLinenumberEnd: 729
    functionName: ToUnknown
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: XMLUnknown
    signature: "XMLUnknown *\t\tToUnknown() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 754
      start: 754
    functionDepth: 0
    functionLinenumber: 754
    functionLinenumberEnd: 754
    functionName: GetLineNum
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int GetLineNum() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 759
      start: 757
    functionDepth: 0
    functionLinenumber: 757
    functionLinenumberEnd: 759
    functionName: Parent
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: XMLNode
    signature: "XMLNode *\tParent() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 763
      start: 761
    functionDepth: 0
    functionLinenumber: 761
    functionLinenumberEnd: 763
    functionName: Parent
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * Parent()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 768
      start: 766
    functionDepth: 0
    functionLinenumber: 766
    functionLinenumberEnd: 768
    functionName: NoChildren
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool NoChildren() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 773
      start: 771
    functionDepth: 0
    functionLinenumber: 771
    functionLinenumberEnd: 773
    functionName: FirstChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 34
    functionsReached: []
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode *  FirstChild() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 777
      start: 775
    functionDepth: 0
    functionLinenumber: 775
    functionLinenumberEnd: 777
    functionName: FirstChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 34
    functionsReached: []
    linkageType: ''
    returnType: XMLNode
    signature: "XMLNode *\t\tFirstChild()"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_cast<XMLElement*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:785,1
    - Dst: const_cast<const XMLNode*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:785,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 786
      start: 784
    functionDepth: 0
    functionLinenumber: 784
    functionLinenumberEnd: 786
    functionName: FirstChildElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 24
    functionsReached:
    - const_cast<const XMLNode*>
    - const_cast<XMLElement*>
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * FirstChildElement( const char* name = 0 )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 791
      start: 789
    functionDepth: 0
    functionLinenumber: 789
    functionLinenumberEnd: 791
    functionName: LastChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: XMLNode
    signature: "XMLNode *\tLastChild() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 795
      start: 793
    functionDepth: 0
    functionLinenumber: 793
    functionLinenumberEnd: 795
    functionName: LastChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: XMLNode
    signature: "XMLNode *\t\tLastChild()"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_cast<XMLElement*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:803,1
    - Dst: const_cast<const XMLNode*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:803,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 804
      start: 802
    functionDepth: 0
    functionLinenumber: 802
    functionLinenumberEnd: 804
    functionName: LastChildElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - const_cast<const XMLNode*>
    - const_cast<XMLElement*>
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * LastChildElement( const char* name = 0 )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 809
      start: 807
    functionDepth: 0
    functionLinenumber: 807
    functionLinenumberEnd: 809
    functionName: PreviousSibling
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: XMLNode
    signature: "XMLNode *\tPreviousSibling() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 813
      start: 811
    functionDepth: 0
    functionLinenumber: 811
    functionLinenumberEnd: 813
    functionName: PreviousSibling
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: XMLNode
    signature: "XMLNode *\tPreviousSibling()"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_cast<XMLElement*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:819,1
    - Dst: const_cast<const XMLNode*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:819,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 820
      start: 818
    functionDepth: 0
    functionLinenumber: 818
    functionLinenumberEnd: 820
    functionName: PreviousSiblingElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - const_cast<const XMLNode*>
    - const_cast<XMLElement*>
    linkageType: ''
    returnType: XMLElement
    signature: "XMLElement *\tPreviousSiblingElement( const char* name = 0 )"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 825
      start: 823
    functionDepth: 0
    functionLinenumber: 823
    functionLinenumberEnd: 825
    functionName: NextSibling
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: XMLNode
    signature: "XMLNode *\tNextSibling() const"
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 829
      start: 827
    functionDepth: 0
    functionLinenumber: 827
    functionLinenumberEnd: 829
    functionName: NextSibling
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: XMLNode
    signature: "XMLNode *\tNextSibling()"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: const_cast<XMLElement*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:835,1
    - Dst: const_cast<const XMLNode*>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:835,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 836
      start: 834
    functionDepth: 0
    functionLinenumber: 834
    functionLinenumberEnd: 836
    functionName: NextSiblingElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 24
    functionsReached:
    - const_cast<const XMLNode*>
    - const_cast<XMLElement*>
    linkageType: ''
    returnType: XMLElement
    signature: "XMLElement *\tNextSiblingElement( const char* name = 0 )"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: InsertEndChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:848,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - addThis
    argTypes:
    - XMLNode*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 849
      start: 847
    functionDepth: 0
    functionLinenumber: 847
    functionLinenumberEnd: 849
    functionName: LinkEndChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - InsertEndChild
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * LinkEndChild( XMLNode* addThis )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - userData
    argTypes:
    - void*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 941
      start: 941
    functionDepth: 0
    functionLinenumber: 941
    functionLinenumberEnd: 941
    functionName: SetUserData
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SetUserData(void* userData)
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 948
      start: 948
    functionDepth: 0
    functionLinenumber: 948
    functionLinenumberEnd: 948
    functionName: GetUserData
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void * GetUserData() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLNode
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1019,1
    - Dst: _isCData
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1019,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 19
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1029
      start: 993
    functionDepth: 2
    functionLinenumber: 993
    functionLinenumberEnd: 1029
    functionName: XMLText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - _isCData
    - XMLNode
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB XMLText
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1001
      start: 999
    functionDepth: 0
    functionLinenumber: 999
    functionLinenumberEnd: 1001
    functionName: ToText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: XMLText
    signature: XMLText * ToText() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1004
      start: 1002
    functionDepth: 0
    functionLinenumber: 1002
    functionLinenumberEnd: 1004
    functionName: ToText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: XMLText
    signature: XMLText * ToText() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - isCData
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1009
      start: 1007
    functionDepth: 0
    functionLinenumber: 1007
    functionLinenumberEnd: 1009
    functionName: SetCData
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SetCData( bool isCData )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1013
      start: 1011
    functionDepth: 0
    functionLinenumber: 1011
    functionLinenumberEnd: 1013
    functionName: CData
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 9
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool CData() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1020
      start: 1020
    functionDepth: 0
    functionLinenumber: 1020
    functionLinenumberEnd: 1020
    functionName: ~XMLText()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~XMLText()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLComment
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1056,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1058
      start: 1033
    functionDepth: 1
    functionLinenumber: 1033
    functionLinenumberEnd: 1058
    functionName: XMLComment
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 1
    functionsReached:
    - XMLComment
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB XMLComment
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1042
      start: 1040
    functionDepth: 0
    functionLinenumber: 1040
    functionLinenumberEnd: 1042
    functionName: ToComment
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: XMLComment
    signature: XMLComment * ToComment() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1095,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1097
      start: 1072
    functionDepth: 1
    functionLinenumber: 1072
    functionLinenumberEnd: 1097
    functionName: XMLDeclaration
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 1
    functionsReached:
    - XMLDeclaration
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB XMLDeclaration
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1081
      start: 1079
    functionDepth: 0
    functionLinenumber: 1079
    functionLinenumberEnd: 1081
    functionName: ToDeclaration
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: XMLDeclaration
    signature: XMLDeclaration * ToDeclaration() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLUnknown
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1130,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 11
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1132
      start: 1107
    functionDepth: 1
    functionLinenumber: 1107
    functionLinenumberEnd: 1132
    functionName: XMLUnknown
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 1
    functionsReached:
    - XMLUnknown
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB XMLUnknown
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1116
      start: 1114
    functionDepth: 0
    functionLinenumber: 1114
    functionLinenumberEnd: 1116
    functionName: ToUnknown
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: XMLUnknown
    signature: XMLUnknown * ToUnknown() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryIntValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1166,1
    - Dst: QueryInt64Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1172,1
    - Dst: QueryUnsigned64Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1178,1
    - Dst: QueryUnsignedValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1185,1
    - Dst: QueryBoolValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1191,1
    - Dst: QueryDoubleValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1197,1
    - Dst: QueryFloatValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 33
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1259
      start: 1142
    functionDepth: 0
    functionLinenumber: 1142
    functionLinenumberEnd: 1259
    functionName: XMLAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached:
    - QueryUnsigned64Value
    - QueryIntValue
    - QueryFloatValue
    - QueryDoubleValue
    - QueryBoolValue
    - QueryUnsignedValue
    - QueryInt64Value
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB XMLAttribute
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1153
      start: 1153
    functionDepth: 0
    functionLinenumber: 1153
    functionLinenumberEnd: 1153
    functionName: GetLineNum
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 8
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int GetLineNum() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1158
      start: 1156
    functionDepth: 0
    functionLinenumber: 1156
    functionLinenumberEnd: 1158
    functionName: Next
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 12
    functionsReached: []
    linkageType: ''
    returnType: XMLAttribute
    signature: XMLAttribute * Next() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryIntValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1166,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1168
      start: 1164
    functionDepth: 0
    functionLinenumber: 1164
    functionLinenumberEnd: 1168
    functionName: IntValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - QueryIntValue
    linkageType: ''
    returnType: int
    signature: int IntValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryInt64Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1172,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1174
      start: 1170
    functionDepth: 0
    functionLinenumber: 1170
    functionLinenumberEnd: 1174
    functionName: Int64Value
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - QueryInt64Value
    linkageType: ''
    returnType: int64_t
    signature: int64_t Int64Value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryUnsigned64Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1178,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1180
      start: 1176
    functionDepth: 0
    functionLinenumber: 1176
    functionLinenumberEnd: 1180
    functionName: Unsigned64Value
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - QueryUnsigned64Value
    linkageType: ''
    returnType: uint64_t
    signature: uint64_t Unsigned64Value() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryUnsignedValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1185,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1187
      start: 1183
    functionDepth: 0
    functionLinenumber: 1183
    functionLinenumberEnd: 1187
    functionName: UnsignedValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - QueryUnsignedValue
    linkageType: ''
    returnType: unsigned
    signature: unsigned UnsignedValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryBoolValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1193
      start: 1189
    functionDepth: 0
    functionLinenumber: 1189
    functionLinenumberEnd: 1193
    functionName: BoolValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - QueryBoolValue
    linkageType: ''
    returnType: bool
    signature: bool BoolValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryDoubleValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1197,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1199
      start: 1195
    functionDepth: 0
    functionLinenumber: 1195
    functionLinenumberEnd: 1199
    functionName: DoubleValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - QueryDoubleValue
    linkageType: ''
    returnType: double
    signature: double DoubleValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryFloatValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1203,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1205
      start: 1201
    functionDepth: 0
    functionLinenumber: 1201
    functionLinenumberEnd: 1205
    functionName: FloatValue
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - QueryFloatValue
    linkageType: ''
    returnType: float
    signature: float FloatValue() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1245
      start: 1245
    functionDepth: 0
    functionLinenumber: 1245
    functionLinenumberEnd: 1245
    functionName: XMLAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLAttribute()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1246
      start: 1246
    functionDepth: 0
    functionLinenumber: 1246
    functionLinenumberEnd: 1246
    functionName: ~XMLAttribute()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~XMLAttribute()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1272,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1273
      start: 1266
    functionDepth: 0
    functionLinenumber: 1266
    functionLinenumberEnd: 1273
    functionName: XMLElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - Value
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB XMLElement
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: SetValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1276,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - str
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1277
      start: 1275
    functionDepth: 0
    functionLinenumber: 1275
    functionLinenumberEnd: 1277
    functionName: SetName
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached:
    - SetValue
    linkageType: ''
    returnType: void
    signature: void SetName( const char* str, bool staticMem=false )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1281
      start: 1279
    functionDepth: 0
    functionLinenumber: 1279
    functionLinenumberEnd: 1281
    functionName: ToElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * ToElement() override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1284
      start: 1282
    functionDepth: 0
    functionLinenumber: 1282
    functionLinenumberEnd: 1284
    functionName: ToElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * ToElement() const override
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FindAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1346,1
    - Dst: XMLAttribute*::QueryIntValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1350,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1351
      start: 1345
    functionDepth: 0
    functionLinenumber: 1345
    functionLinenumberEnd: 1351
    functionName: QueryIntAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - XMLAttribute*::QueryIntValue
    - FindAttribute
    linkageType: ''
    returnType: XMLError
    signature: XMLError QueryIntAttribute( const char* name, int* value ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FindAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1355,1
    - Dst: XMLAttribute*::QueryUnsignedValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1359,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - unsigned int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1360
      start: 1354
    functionDepth: 0
    functionLinenumber: 1354
    functionLinenumberEnd: 1360
    functionName: QueryUnsignedAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - FindAttribute
    - XMLAttribute*::QueryUnsignedValue
    linkageType: ''
    returnType: XMLError
    signature: XMLError QueryUnsignedAttribute( const char* name, unsigned int* value
      ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FindAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1364,1
    - Dst: XMLAttribute*::QueryInt64Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1368,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - int64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1369
      start: 1363
    functionDepth: 0
    functionLinenumber: 1363
    functionLinenumberEnd: 1369
    functionName: QueryInt64Attribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - XMLAttribute*::QueryInt64Value
    - FindAttribute
    linkageType: ''
    returnType: XMLError
    signature: XMLError QueryInt64Attribute(const char* name, int64_t* value) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FindAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1373,1
    - Dst: XMLAttribute*::QueryUnsigned64Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1377,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - uint64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1378
      start: 1372
    functionDepth: 0
    functionLinenumber: 1372
    functionLinenumberEnd: 1378
    functionName: QueryUnsigned64Attribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - FindAttribute
    - XMLAttribute*::QueryUnsigned64Value
    linkageType: ''
    returnType: XMLError
    signature: XMLError QueryUnsigned64Attribute(const char* name, uint64_t* value)
      const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FindAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1382,1
    - Dst: XMLAttribute*::QueryBoolValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1386,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1387
      start: 1381
    functionDepth: 0
    functionLinenumber: 1381
    functionLinenumberEnd: 1387
    functionName: QueryBoolAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - FindAttribute
    - XMLAttribute*::QueryBoolValue
    linkageType: ''
    returnType: XMLError
    signature: XMLError QueryBoolAttribute( const char* name, bool* value ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FindAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1390,1
    - Dst: XMLAttribute*::QueryDoubleValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1394,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1395
      start: 1389
    functionDepth: 0
    functionLinenumber: 1389
    functionLinenumberEnd: 1395
    functionName: QueryDoubleAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - XMLAttribute*::QueryDoubleValue
    - FindAttribute
    linkageType: ''
    returnType: XMLError
    signature: XMLError QueryDoubleAttribute( const char* name, double* value ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FindAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1398,1
    - Dst: XMLAttribute*::QueryFloatValue
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1402,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 5
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1403
      start: 1397
    functionDepth: 0
    functionLinenumber: 1397
    functionLinenumberEnd: 1403
    functionName: QueryFloatAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - FindAttribute
    - XMLAttribute*::QueryFloatValue
    linkageType: ''
    returnType: XMLError
    signature: XMLError QueryFloatAttribute( const char* name, float* value ) const
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: FindAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1407,1
    - Dst: XMLAttribute*::Value
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1411,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1413
      start: 1406
    functionDepth: 0
    functionLinenumber: 1406
    functionLinenumberEnd: 1413
    functionName: QueryStringAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - XMLAttribute*::Value
    - FindAttribute
    linkageType: ''
    returnType: XMLError
    signature: XMLError QueryStringAttribute(const char* name, const char** value)
      const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryIntAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1435,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1436
      start: 1434
    functionDepth: 1
    functionLinenumber: 1434
    functionLinenumberEnd: 1436
    functionName: QueryAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - QueryIntAttribute
    linkageType: ''
    returnType: XMLError
    signature: XMLError QueryAttribute( const char* name, int* value ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryUnsignedAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1439,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - unsigned int*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1440
      start: 1438
    functionDepth: 1
    functionLinenumber: 1438
    functionLinenumberEnd: 1440
    functionName: QueryAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - QueryUnsignedAttribute
    linkageType: ''
    returnType: XMLError
    signature: XMLError QueryAttribute( const char* name, unsigned int* value ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryInt64Attribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1443,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - int64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1444
      start: 1442
    functionDepth: 1
    functionLinenumber: 1442
    functionLinenumberEnd: 1444
    functionName: QueryAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - QueryInt64Attribute
    linkageType: ''
    returnType: XMLError
    signature: XMLError QueryAttribute(const char* name, int64_t* value) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryUnsigned64Attribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1447,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - uint64_t*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1448
      start: 1446
    functionDepth: 1
    functionLinenumber: 1446
    functionLinenumberEnd: 1448
    functionName: QueryAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - QueryUnsigned64Attribute
    linkageType: ''
    returnType: XMLError
    signature: XMLError QueryAttribute(const char* name, uint64_t* value) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryBoolAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1451,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - bool*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1452
      start: 1450
    functionDepth: 1
    functionLinenumber: 1450
    functionLinenumberEnd: 1452
    functionName: QueryAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - QueryBoolAttribute
    linkageType: ''
    returnType: XMLError
    signature: XMLError QueryAttribute( const char* name, bool* value ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryDoubleAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1455,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - double*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1456
      start: 1454
    functionDepth: 1
    functionLinenumber: 1454
    functionLinenumberEnd: 1456
    functionName: QueryAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - QueryDoubleAttribute
    linkageType: ''
    returnType: XMLError
    signature: XMLError QueryAttribute( const char* name, double* value ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryFloatAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1459,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - float*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1460
      start: 1458
    functionDepth: 1
    functionLinenumber: 1458
    functionLinenumberEnd: 1460
    functionName: QueryAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - QueryFloatAttribute
    linkageType: ''
    returnType: XMLError
    signature: XMLError QueryAttribute( const char* name, float* value ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: QueryStringAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1463,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - char**
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1464
      start: 1462
    functionDepth: 1
    functionLinenumber: 1462
    functionLinenumberEnd: 1464
    functionName: QueryAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - QueryStringAttribute
    linkageType: ''
    returnType: XMLError
    signature: XMLError QueryAttribute(const char* name, const char** value) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FindOrCreateAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1468,1
    - Dst: XMLAttribute*::SetAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1469,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1470
      start: 1467
    functionDepth: 1
    functionLinenumber: 1467
    functionLinenumberEnd: 1470
    functionName: SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 17
    functionsReached:
    - FindOrCreateAttribute
    - XMLAttribute*::SetAttribute
    linkageType: ''
    returnType: void
    signature: void SetAttribute( const char* name, const char* value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FindOrCreateAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1473,1
    - Dst: XMLAttribute*::SetAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1474,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - int
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1475
      start: 1472
    functionDepth: 1
    functionLinenumber: 1472
    functionLinenumberEnd: 1475
    functionName: SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 18
    functionsReached:
    - FindOrCreateAttribute
    - XMLAttribute*::SetAttribute
    linkageType: ''
    returnType: void
    signature: void SetAttribute( const char* name, int value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FindOrCreateAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1478,1
    - Dst: XMLAttribute*::SetAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1479,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - unsigned
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1480
      start: 1477
    functionDepth: 1
    functionLinenumber: 1477
    functionLinenumberEnd: 1480
    functionName: SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 19
    functionsReached:
    - FindOrCreateAttribute
    - XMLAttribute*::SetAttribute
    linkageType: ''
    returnType: void
    signature: void SetAttribute( const char* name, unsigned value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FindOrCreateAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1484,1
    - Dst: XMLAttribute*::SetAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1485,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - int64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1486
      start: 1483
    functionDepth: 1
    functionLinenumber: 1483
    functionLinenumberEnd: 1486
    functionName: SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 20
    functionsReached:
    - FindOrCreateAttribute
    - XMLAttribute*::SetAttribute
    linkageType: ''
    returnType: void
    signature: void SetAttribute(const char* name, int64_t value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FindOrCreateAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1490,1
    - Dst: XMLAttribute*::SetAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1491,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - uint64_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1492
      start: 1489
    functionDepth: 1
    functionLinenumber: 1489
    functionLinenumberEnd: 1492
    functionName: SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 21
    functionsReached:
    - FindOrCreateAttribute
    - XMLAttribute*::SetAttribute
    linkageType: ''
    returnType: void
    signature: void SetAttribute(const char* name, uint64_t value)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FindOrCreateAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1496,1
    - Dst: XMLAttribute*::SetAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1497,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1498
      start: 1495
    functionDepth: 1
    functionLinenumber: 1495
    functionLinenumberEnd: 1498
    functionName: SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 22
    functionsReached:
    - FindOrCreateAttribute
    - XMLAttribute*::SetAttribute
    linkageType: ''
    returnType: void
    signature: void SetAttribute( const char* name, bool value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FindOrCreateAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1501,1
    - Dst: XMLAttribute*::SetAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1502,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - double
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1503
      start: 1500
    functionDepth: 1
    functionLinenumber: 1500
    functionLinenumberEnd: 1503
    functionName: SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 23
    functionsReached:
    - FindOrCreateAttribute
    - XMLAttribute*::SetAttribute
    linkageType: ''
    returnType: void
    signature: void SetAttribute( const char* name, double value )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FindOrCreateAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1506,1
    - Dst: XMLAttribute*::SetAttribute
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1507,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 2
    argNames:
    - name
    - value
    argTypes:
    - char*
    - float
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1508
      start: 1505
    functionDepth: 1
    functionLinenumber: 1505
    functionLinenumberEnd: 1508
    functionName: SetAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 24
    functionsReached:
    - FindOrCreateAttribute
    - XMLAttribute*::SetAttribute
    linkageType: ''
    returnType: void
    signature: void SetAttribute( const char* name, float value )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1518
      start: 1516
    functionDepth: 0
    functionLinenumber: 1516
    functionLinenumberEnd: 1518
    functionName: FirstAttribute
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 10
    functionsReached: []
    linkageType: ''
    returnType: XMLAttribute
    signature: XMLAttribute * FirstAttribute() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1680
      start: 1678
    functionDepth: 0
    functionLinenumber: 1678
    functionLinenumberEnd: 1680
    functionName: ClosingType
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: ElementClosingType
    signature: ElementClosingType ClosingType() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1731,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1735,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1739,1
    - Dst: static_cast<size_t>
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1753,1
    - Dst: FirstChildElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1814,1
    - Dst: FirstChildElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1817,1
    - Dst: XMLDocument
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1934,1
    - Dst: PushDepth
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1972,1
    - Dst: PopDepth
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1975,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 41
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1985
      start: 1719
    functionDepth: 1
    functionLinenumber: 1719
    functionLinenumberEnd: 1985
    functionName: XMLDocument
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 5
    functionsReached:
    - XMLDocument
    - PushDepth
    - TIXMLASSERT
    - PopDepth
    - FirstChildElement
    - static_cast<size_t>
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB XMLDocument
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1735,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1737
      start: 1734
    functionDepth: 1
    functionLinenumber: 1734
    functionLinenumberEnd: 1737
    functionName: ToDocument
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 6
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: XMLDocument
    signature: XMLDocument * ToDocument() override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1739,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1741
      start: 1738
    functionDepth: 1
    functionLinenumber: 1738
    functionLinenumberEnd: 1741
    functionName: ToDocument
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 6
    functionsReached:
    - TIXMLASSERT
    linkageType: ''
    returnType: XMLDocument
    signature: XMLDocument * ToDocument() const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1793
      start: 1791
    functionDepth: 0
    functionLinenumber: 1791
    functionLinenumberEnd: 1793
    functionName: ProcessEntities
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 6
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool ProcessEntities() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1796
      start: 1794
    functionDepth: 0
    functionLinenumber: 1794
    functionLinenumberEnd: 1796
    functionName: WhitespaceMode
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: Whitespace
    signature: Whitespace WhitespaceMode() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1803
      start: 1801
    functionDepth: 0
    functionLinenumber: 1801
    functionLinenumberEnd: 1803
    functionName: HasBOM
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool HasBOM() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - useBOM
    argTypes:
    - bool
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1808
      start: 1806
    functionDepth: 0
    functionLinenumber: 1806
    functionLinenumberEnd: 1808
    functionName: SetBOM
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void SetBOM( bool useBOM )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FirstChildElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1814,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1815
      start: 1813
    functionDepth: 1
    functionLinenumber: 1813
    functionLinenumberEnd: 1815
    functionName: RootElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 8
    functionsReached:
    - FirstChildElement
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * RootElement()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: FirstChildElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1817,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1818
      start: 1816
    functionDepth: 1
    functionLinenumber: 1816
    functionLinenumberEnd: 1818
    functionName: RootElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 8
    functionsReached:
    - FirstChildElement
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * RootElement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1886
      start: 1884
    functionDepth: 0
    functionLinenumber: 1884
    functionLinenumberEnd: 1886
    functionName: Error
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 272
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool Error() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1890
      start: 1888
    functionDepth: 0
    functionLinenumber: 1888
    functionLinenumberEnd: 1890
    functionName: ErrorID
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: XMLError
    signature: XMLError ErrorID() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1906
      start: 1903
    functionDepth: 0
    functionLinenumber: 1903
    functionLinenumberEnd: 1906
    functionName: ErrorLineNum
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: int
    signature: int ErrorLineNum() const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1928
      start: 1926
    functionDepth: 0
    functionLinenumber: 1926
    functionLinenumberEnd: 1928
    functionName: ShallowClone
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached: []
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * ShallowClone( XMLDocument* /*document*/ ) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1931
      start: 1929
    functionDepth: 0
    functionLinenumber: 1929
    functionLinenumberEnd: 1931
    functionName: ShallowEqual
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool ShallowEqual( const XMLNode* /*compare*/ ) const override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLDocument*::PushDepth
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1972,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - document
    argTypes:
    - XMLDocument*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1973
      start: 1970
    functionDepth: 0
    functionLinenumber: 1970
    functionLinenumberEnd: 1973
    functionName: DepthTracker::DepthTracker
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - XMLDocument*::PushDepth
    linkageType: ''
    returnType: void
    signature: void DepthTracker(XMLDocument * document)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: PopDepth
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1975,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1976
      start: 1974
    functionDepth: 0
    functionLinenumber: 1974
    functionLinenumberEnd: 1976
    functionName: ~DepthTracker()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - PopDepth
    linkageType: ''
    returnType: void
    signature: void ~DepthTracker()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1990,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1991,1
    - Dst: ItemSize
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1991,1
    - Dst: Alloc
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1992,1
    - Dst: NodeType::NodeType
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1992,1
    - Dst: TIXMLASSERT
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1993,1
    - Dst: Push
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:1996,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 7
    argCount: 1
    argNames:
    - ' pool'
    argTypes:
    - MemPoolT<PoolElementSize>
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 1998
      start: 1988
    functionDepth: 1
    functionLinenumber: 1988
    functionLinenumberEnd: 1998
    functionName: XMLDocument::CreateUnlinkedNode
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - Alloc
    - TIXMLASSERT
    - Push
    - NodeType::NodeType
    - ItemSize
    linkageType: ''
    returnType: NodeType
    signature: NodeType * XMLDocument::CreateUnlinkedNode( MemPoolT<PoolElementSize>&
      pool )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2075,1
    - Dst: explicit::FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2075,1
    - Dst: XMLHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2079,1
    - Dst: explicit::FirstChildElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2079,1
    - Dst: XMLHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2083,1
    - Dst: explicit::LastChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2083,1
    - Dst: XMLHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2087,1
    - Dst: explicit::LastChildElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2087,1
    - Dst: XMLHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2091,1
    - Dst: explicit::PreviousSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2091,1
    - Dst: XMLHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2095,1
    - Dst: explicit::PreviousSiblingElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2095,1
    - Dst: XMLHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2099,1
    - Dst: explicit::NextSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2099,1
    - Dst: XMLHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2103,1
    - Dst: explicit::NextSiblingElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2103,1
    - Dst: explicit::ToElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2112,1
    - Dst: explicit::ToText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2116,1
    - Dst: explicit::ToUnknown
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2120,1
    - Dst: explicit::ToDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2129
      start: 2055
    functionDepth: 1
    functionLinenumber: 2055
    functionLinenumberEnd: 2129
    functionName: XMLHandle
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 1
    functionsReached:
    - explicit::LastChildElement
    - explicit::ToUnknown
    - explicit::ToElement
    - explicit::ToDeclaration
    - explicit::PreviousSibling
    - explicit::FirstChildElement
    - explicit::FirstChild
    - explicit::NextSiblingElement
    - explicit::LastChild
    - explicit::PreviousSiblingElement
    - XMLHandle
    - explicit::ToText
    - explicit::NextSibling
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB XMLHandle
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' ref'
    argTypes:
    - XMLHandle
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2066
      start: 2065
    functionDepth: 0
    functionLinenumber: 2065
    functionLinenumberEnd: 2066
    functionName: XMLHandle
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLHandle( const XMLHandle& ref )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' ref'
    argTypes:
    - XMLHandle
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2071
      start: 2068
    functionDepth: 0
    functionLinenumber: 2068
    functionLinenumberEnd: 2071
    functionName: '& operator=( const XMLHandle& ref )'
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: XMLHandle
    signature: XMLHandle & operator=( const XMLHandle& ref )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2075,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2075,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2076
      start: 2074
    functionDepth: 2
    functionLinenumber: 2074
    functionLinenumberEnd: 2076
    functionName: FirstChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 36
    functionsReached:
    - FirstChild
    - XMLHandle
    linkageType: ''
    returnType: XMLHandle
    signature: XMLHandle FirstChild()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2079,1
    - Dst: FirstChildElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2079,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2080
      start: 2078
    functionDepth: 2
    functionLinenumber: 2078
    functionLinenumberEnd: 2080
    functionName: FirstChildElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 29
    functionsReached:
    - XMLHandle
    - FirstChildElement
    linkageType: ''
    returnType: XMLHandle
    signature: XMLHandle FirstChildElement( const char* name = 0 )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2083,1
    - Dst: LastChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2083,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2084
      start: 2082
    functionDepth: 2
    functionLinenumber: 2082
    functionLinenumberEnd: 2084
    functionName: LastChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached:
    - LastChild
    - XMLHandle
    linkageType: ''
    returnType: XMLHandle
    signature: XMLHandle LastChild()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2087,1
    - Dst: LastChildElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2087,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2088
      start: 2086
    functionDepth: 2
    functionLinenumber: 2086
    functionLinenumberEnd: 2088
    functionName: LastChildElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - XMLHandle
    - LastChildElement
    linkageType: ''
    returnType: XMLHandle
    signature: XMLHandle LastChildElement( const char* name = 0 )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2091,1
    - Dst: PreviousSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2091,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2092
      start: 2090
    functionDepth: 2
    functionLinenumber: 2090
    functionLinenumberEnd: 2092
    functionName: PreviousSibling
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - PreviousSibling
    - XMLHandle
    linkageType: ''
    returnType: XMLHandle
    signature: XMLHandle PreviousSibling()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2095,1
    - Dst: PreviousSiblingElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2095,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2096
      start: 2094
    functionDepth: 2
    functionLinenumber: 2094
    functionLinenumberEnd: 2096
    functionName: PreviousSiblingElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 2
    functionsReached:
    - XMLHandle
    - PreviousSiblingElement
    linkageType: ''
    returnType: XMLHandle
    signature: XMLHandle PreviousSiblingElement( const char* name = 0 )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2099,1
    - Dst: NextSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2099,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2100
      start: 2098
    functionDepth: 2
    functionLinenumber: 2098
    functionLinenumberEnd: 2100
    functionName: NextSibling
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 12
    functionsReached:
    - XMLHandle
    - NextSibling
    linkageType: ''
    returnType: XMLHandle
    signature: XMLHandle NextSibling()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2103,1
    - Dst: NextSiblingElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2103,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2104
      start: 2102
    functionDepth: 2
    functionLinenumber: 2102
    functionLinenumberEnd: 2104
    functionName: NextSiblingElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 26
    functionsReached:
    - XMLHandle
    - NextSiblingElement
    linkageType: ''
    returnType: XMLHandle
    signature: XMLHandle NextSiblingElement( const char* name = 0 )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2109
      start: 2107
    functionDepth: 0
    functionLinenumber: 2107
    functionLinenumberEnd: 2109
    functionName: ToNode
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * ToNode()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ToElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2112,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2113
      start: 2111
    functionDepth: 1
    functionLinenumber: 2111
    functionLinenumberEnd: 2113
    functionName: ToElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 8
    functionsReached:
    - ToElement
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * ToElement()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ToText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2116,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2117
      start: 2115
    functionDepth: 1
    functionLinenumber: 2115
    functionLinenumberEnd: 2117
    functionName: ToText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 6
    functionsReached:
    - ToText
    linkageType: ''
    returnType: XMLText
    signature: XMLText * ToText()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ToUnknown
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2120,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2121
      start: 2119
    functionDepth: 1
    functionLinenumber: 2119
    functionLinenumberEnd: 2121
    functionName: ToUnknown
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached:
    - ToUnknown
    linkageType: ''
    returnType: XMLUnknown
    signature: XMLUnknown * ToUnknown()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ToDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2124,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2125
      start: 2123
    functionDepth: 1
    functionLinenumber: 2123
    functionLinenumberEnd: 2125
    functionName: ToDeclaration
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 6
    functionsReached:
    - ToDeclaration
    linkageType: ''
    returnType: XMLDeclaration
    signature: XMLDeclaration * ToDeclaration()
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLConstHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2152,1
    - Dst: explicit::FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2152,1
    - Dst: XMLConstHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2155,1
    - Dst: explicit::FirstChildElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2155,1
    - Dst: XMLConstHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2158,1
    - Dst: explicit::LastChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2158,1
    - Dst: XMLConstHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2161,1
    - Dst: explicit::LastChildElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2161,1
    - Dst: XMLConstHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2164,1
    - Dst: explicit::PreviousSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2164,1
    - Dst: XMLConstHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2167,1
    - Dst: explicit::PreviousSiblingElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2167,1
    - Dst: XMLConstHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2170,1
    - Dst: explicit::NextSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2170,1
    - Dst: XMLConstHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2173,1
    - Dst: explicit::NextSiblingElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2173,1
    - Dst: explicit::ToElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2181,1
    - Dst: explicit::ToText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2184,1
    - Dst: explicit::ToUnknown
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2187,1
    - Dst: explicit::ToDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 36
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2195
      start: 2136
    functionDepth: 1
    functionLinenumber: 2136
    functionLinenumberEnd: 2195
    functionName: XMLConstHandle
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 1
    functionsReached:
    - explicit::LastChildElement
    - explicit::ToUnknown
    - explicit::ToElement
    - explicit::ToDeclaration
    - explicit::PreviousSibling
    - explicit::FirstChildElement
    - explicit::FirstChild
    - explicit::NextSiblingElement
    - explicit::LastChild
    - explicit::PreviousSiblingElement
    - explicit::ToText
    - XMLConstHandle
    - explicit::NextSibling
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB XMLConstHandle
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 1
    argNames:
    - ' ref'
    argTypes:
    - XMLConstHandle
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2144
      start: 2143
    functionDepth: 0
    functionLinenumber: 2143
    functionLinenumberEnd: 2144
    functionName: XMLConstHandle
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 1
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void XMLConstHandle( const XMLConstHandle& ref )
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 3
    argCount: 1
    argNames:
    - ' ref'
    argTypes:
    - XMLConstHandle
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2149
      start: 2146
    functionDepth: 0
    functionLinenumber: 2146
    functionLinenumberEnd: 2149
    functionName: '& operator=( const XMLConstHandle& ref )'
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: XMLConstHandle
    signature: XMLConstHandle & operator=( const XMLConstHandle& ref )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLConstHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2152,1
    - Dst: FirstChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2152,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2153
      start: 2151
    functionDepth: 2
    functionLinenumber: 2151
    functionLinenumberEnd: 2153
    functionName: FirstChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 38
    functionsReached:
    - FirstChild
    - XMLConstHandle
    linkageType: ''
    returnType: XMLConstHandle
    signature: XMLConstHandle FirstChild() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLConstHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2155,1
    - Dst: FirstChildElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2155,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2156
      start: 2154
    functionDepth: 2
    functionLinenumber: 2154
    functionLinenumberEnd: 2156
    functionName: FirstChildElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 31
    functionsReached:
    - FirstChildElement
    - XMLConstHandle
    linkageType: ''
    returnType: XMLConstHandle
    signature: XMLConstHandle FirstChildElement( const char* name = 0 ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLConstHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2158,1
    - Dst: LastChild
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2158,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2159
      start: 2157
    functionDepth: 2
    functionLinenumber: 2157
    functionLinenumberEnd: 2159
    functionName: LastChild
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 6
    functionsReached:
    - LastChild
    - XMLConstHandle
    linkageType: ''
    returnType: XMLConstHandle
    signature: "XMLConstHandle LastChild()\tconst"
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLConstHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2161,1
    - Dst: LastChildElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2161,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2162
      start: 2160
    functionDepth: 2
    functionLinenumber: 2160
    functionLinenumberEnd: 2162
    functionName: LastChildElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached:
    - LastChildElement
    - XMLConstHandle
    linkageType: ''
    returnType: XMLConstHandle
    signature: XMLConstHandle LastChildElement( const char* name = 0 ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLConstHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2164,1
    - Dst: PreviousSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2164,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2165
      start: 2163
    functionDepth: 2
    functionLinenumber: 2163
    functionLinenumberEnd: 2165
    functionName: PreviousSibling
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached:
    - PreviousSibling
    - XMLConstHandle
    linkageType: ''
    returnType: XMLConstHandle
    signature: XMLConstHandle PreviousSibling() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLConstHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2167,1
    - Dst: PreviousSiblingElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2167,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2168
      start: 2166
    functionDepth: 2
    functionLinenumber: 2166
    functionLinenumberEnd: 2168
    functionName: PreviousSiblingElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached:
    - PreviousSiblingElement
    - XMLConstHandle
    linkageType: ''
    returnType: XMLConstHandle
    signature: XMLConstHandle PreviousSiblingElement( const char* name = 0 ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLConstHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2170,1
    - Dst: NextSibling
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2170,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2171
      start: 2169
    functionDepth: 2
    functionLinenumber: 2169
    functionLinenumberEnd: 2171
    functionName: NextSibling
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 14
    functionsReached:
    - NextSibling
    - XMLConstHandle
    linkageType: ''
    returnType: XMLConstHandle
    signature: XMLConstHandle NextSibling() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLConstHandle
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2173,1
    - Dst: NextSiblingElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2173,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2174
      start: 2172
    functionDepth: 2
    functionLinenumber: 2172
    functionLinenumberEnd: 2174
    functionName: NextSiblingElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 28
    functionsReached:
    - NextSiblingElement
    - XMLConstHandle
    linkageType: ''
    returnType: XMLConstHandle
    signature: XMLConstHandle NextSiblingElement( const char* name = 0 ) const
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2179
      start: 2177
    functionDepth: 0
    functionLinenumber: 2177
    functionLinenumberEnd: 2179
    functionName: ToNode
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: XMLNode
    signature: XMLNode * ToNode() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ToElement
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2181,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2182
      start: 2180
    functionDepth: 1
    functionLinenumber: 2180
    functionLinenumberEnd: 2182
    functionName: ToElement
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 10
    functionsReached:
    - ToElement
    linkageType: ''
    returnType: XMLElement
    signature: XMLElement * ToElement() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ToText
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2184,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2185
      start: 2183
    functionDepth: 1
    functionLinenumber: 2183
    functionLinenumberEnd: 2185
    functionName: ToText
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 8
    functionsReached:
    - ToText
    linkageType: ''
    returnType: XMLText
    signature: XMLText * ToText() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ToUnknown
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2187,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2188
      start: 2186
    functionDepth: 1
    functionLinenumber: 2186
    functionLinenumberEnd: 2188
    functionName: ToUnknown
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 6
    functionsReached:
    - ToUnknown
    linkageType: ''
    returnType: XMLUnknown
    signature: XMLUnknown * ToUnknown() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ToDeclaration
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2190,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2191
      start: 2189
    functionDepth: 1
    functionLinenumber: 2189
    functionLinenumberEnd: 2191
    functionName: ToDeclaration
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 8
    functionsReached:
    - ToDeclaration
    linkageType: ''
    returnType: XMLDeclaration
    signature: XMLDeclaration * ToDeclaration() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: XMLPrinter
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2249,1
    - Dst: Mem
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2310,1
    - Dst: Size
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2318,1
    - Dst: Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2325,1
    - Dst: Push
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2326,1
    - Dst: Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2341,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 22
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2374
      start: 2240
    functionDepth: 1
    functionLinenumber: 2240
    functionLinenumberEnd: 2374
    functionName: XMLPrinter
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 1
    functionsReached:
    - Clear
    - Push
    - Size
    - Mem
    - strlen
    - Write
    - XMLPrinter
    linkageType: ''
    returnType: class TINYXML2_LIB
    signature: class TINYXML2_LIB XMLPrinter
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 1
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2250
      start: 2250
    functionDepth: 0
    functionLinenumber: 2250
    functionLinenumberEnd: 2250
    functionName: ~XMLPrinter()
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached: []
    linkageType: ''
    returnType: void
    signature: void ~XMLPrinter()
  - BBCount: 1
    BranchProfiles: []
    Callsites: []
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2295
      start: 2293
    functionDepth: 0
    functionLinenumber: 2293
    functionLinenumberEnd: 2295
    functionName: VisitExit
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 4
    functionsReached: []
    linkageType: ''
    returnType: bool
    signature: bool VisitExit( const XMLDocument& /*doc*/ ) override
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Mem
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2310,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2311
      start: 2309
    functionDepth: 0
    functionLinenumber: 2309
    functionLinenumberEnd: 2311
    functionName: CStr
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 8
    functionsReached:
    - Mem
    linkageType: ''
    returnType: char
    signature: char * CStr() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Size
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2318,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2319
      start: 2317
    functionDepth: 0
    functionLinenumber: 2317
    functionLinenumberEnd: 2319
    functionName: CStrSize
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 8
    functionsReached:
    - Size
    linkageType: ''
    returnType: size_t
    signature: size_t CStrSize() const
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Clear
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2325,1
    - Dst: Push
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2326,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 4
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2328
      start: 2324
    functionDepth: 0
    functionLinenumber: 2324
    functionLinenumberEnd: 2328
    functionName: ClearBuffer
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 0
    functionsReached:
    - Clear
    - Push
    linkageType: ''
    returnType: void
    signature: void ClearBuffer( bool resetToFirstElement = true )
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: Write
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2341,1
    - Dst: strlen
      Src: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h:2341,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - data
    argTypes:
    - char*
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 2341
      start: 2341
    functionDepth: 1
    functionLinenumber: 2341
    functionLinenumberEnd: 2341
    functionName: Write
    functionSourceFile: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    functionUses: 22
    functionsReached:
    - strlen
    - Write
    linkageType: ''
    returnType: void
    signature: void Write(const char* data)
  - BBCount: 2
    BranchProfiles: []
    Callsites:
    - Dst: what
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:16,1
    - Dst: std::string::find
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:35,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 6
    argCount: 1
    argNames:
    - ' e'
    argTypes:
    - std::exception
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 41
      start: 14
    functionDepth: 3
    functionLinenumber: 14
    functionLinenumberEnd: 41
    functionName: ExceptionFilter::isExpectedException
    functionSourceFile: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp
    functionUses: 0
    functionsReached:
    - std::string::find
    - what
    linkageType: ''
    returnType: bool
    signature: bool isExpectedException(const std::exception& e)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:55,1
    - Dst: ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:60,1
    - Dst: std::string::length
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:60,1
    - Dst: push_back
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:62,1
    CyclomaticComplexity: 1
    EdgeCount: 1
    ICount: 6
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 64
      start: 51
    functionDepth: 2
    functionLinenumber: 51
    functionLinenumberEnd: 64
    functionName: BlackboardFuzzer::generateKey
    functionSourceFile: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp
    functionUses: 0
    functionsReached:
    - std::string::length
    - ConsumeIntegralInRange
    - push_back
    linkageType: ''
    returnType: std::string
    signature: std::string generateKey()
  - BBCount: 17
    BranchProfiles: []
    Callsites:
    - Dst: BlackboardFuzzer::generateKey
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:74,1
    - Dst: ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:75,1
    - Dst: BT::Blackboard::Ptr::set
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:78,1
    - Dst: ConsumeIntegral
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:78,1
    - Dst: BT::Blackboard::Ptr::set
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:81,1
    - Dst: ConsumeFloatingPoint
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:81,1
    - Dst: BT::Blackboard::Ptr::set
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:84,1
    - Dst: ConsumeRandomLengthString
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:84,1
    - Dst: BT::Blackboard::Ptr::set
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:87,1
    - Dst: ConsumeBool
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:87,1
    - Dst: BT::Blackboard::Ptr::set
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:90,1
    - Dst: ConsumeIntegral
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:90,1
    - Dst: BT::Blackboard::Ptr::set
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:93,1
    - Dst: ConsumeFloatingPoint
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:93,1
    - Dst: BT::Blackboard::Ptr::get
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:97,1
    - Dst: BlackboardFuzzer::generateKey
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:97,1
    - Dst: empty
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:103,1
    - Dst: ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:106,1
    - Dst: size
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:107,1
    - Dst: ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:109,1
    - Dst: BT::Blackboard::Ptr::unset
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:112,1
    - Dst: BT::Blackboard::Ptr::getEntry
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:115,1
    - Dst: BT::Blackboard::Ptr::get
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:118,1
    - Dst: BT::Blackboard::Ptr::get
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:121,1
    - Dst: BT::Blackboard::Ptr::get
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:124,1
    - Dst: size
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:130,1
    - Dst: ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:133,1
    - Dst: size
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:133,1
    - Dst: ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:135,1
    - Dst: size
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:135,1
    - Dst: BT::Blackboard::Ptr::addSubtreeRemapping
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:136,1
    - Dst: ExceptionFilter::isExpectedException
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:141,1
    CyclomaticComplexity: 20
    EdgeCount: 20
    ICount: 55
    argCount: 1
    argNames:
    - bb
    argTypes:
    - BT::Blackboard::Ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 146
      start: 66
    functionDepth: 4
    functionLinenumber: 66
    functionLinenumberEnd: 146
    functionName: BlackboardFuzzer::fuzzSingleBB
    functionSourceFile: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp
    functionUses: 0
    functionsReached:
    - BlackboardFuzzer::generateKey
    - ConsumeRandomLengthString
    - BT::Blackboard::Ptr::get
    - BT::Blackboard::Ptr::getEntry
    - BT::Blackboard::Ptr::unset
    - ConsumeIntegral
    - BT::Blackboard::Ptr::addSubtreeRemapping
    - ExceptionFilter::isExpectedException
    - size
    - ConsumeIntegralInRange
    - ConsumeFloatingPoint
    - BT::Blackboard::Ptr::set
    - empty
    - ConsumeBool
    linkageType: ''
    returnType: void
    signature: void fuzzSingleBB(BT::Blackboard::Ptr bb)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: empty
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:150,1
    - Dst: ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:153,1
    - Dst: size
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:154,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:156,1
    - Dst: ConsumeBool
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:157,1
    - Dst: auto::enableAutoRemapping
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:159,1
    - Dst: push_back
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:162,1
    CyclomaticComplexity: 2
    EdgeCount: 2
    ICount: 7
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 163
      start: 148
    functionDepth: 2
    functionLinenumber: 148
    functionLinenumberEnd: 163
    functionName: BlackboardFuzzer::createBlackboardHierarchy
    functionSourceFile: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp
    functionUses: 0
    functionsReached:
    - auto::enableAutoRemapping
    - BT::Blackboard::create
    - size
    - push_back
    - ConsumeIntegralInRange
    - empty
    - ConsumeBool
    linkageType: ''
    returnType: void
    signature: void createBlackboardHierarchy()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BT::ExportBlackboardToJSON
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:169,1
    - Dst: ConsumeBool
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:170,1
    - Dst: auto::dump
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:172,1
    - Dst: ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:173,1
    - Dst: std::string::length
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:173,1
    - Dst: std::string::insert
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:174,1
    - Dst: ConsumeRandomLengthString
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:174,1
    - Dst: parser::parse
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:175,1
    - Dst: BT::ImportBlackboardFromJSON
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:177,1
    - Dst: ExceptionFilter::isExpectedException
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:181,1
    CyclomaticComplexity: 4
    EdgeCount: 4
    ICount: 12
    argCount: 1
    argNames:
    - bb
    argTypes:
    - BT::Blackboard::Ptr
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 186
      start: 165
    functionDepth: 5
    functionLinenumber: 165
    functionLinenumberEnd: 186
    functionName: BlackboardFuzzer::fuzzJsonOperations
    functionSourceFile: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp
    functionUses: 0
    functionsReached:
    - ConsumeRandomLengthString
    - BT::ImportBlackboardFromJSON
    - std::string::length
    - ExceptionFilter::isExpectedException
    - BT::ExportBlackboardToJSON
    - ConsumeIntegralInRange
    - parser::parse
    - auto::dump
    - ConsumeBool
    - std::string::insert
    linkageType: ''
    returnType: void
    signature: void fuzzJsonOperations(BT::Blackboard::Ptr bb)
  - BBCount: 1
    BranchProfiles: []
    Callsites:
    - Dst: push_back
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:191,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:191,1
    CyclomaticComplexity: 0
    EdgeCount: 0
    ICount: 2
    argCount: 1
    argNames:
    - ' provider'
    argTypes:
    - FuzzedDataProvider
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 192
      start: 189
    functionDepth: 2
    functionLinenumber: 189
    functionLinenumberEnd: 192
    functionName: BlackboardFuzzer::BlackboardFuzzer
    functionSourceFile: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp
    functionUses: 0
    functionsReached:
    - BT::Blackboard::create
    - push_back
    linkageType: ''
    returnType: void
    signature: void BlackboardFuzzer(FuzzedDataProvider& provider)
  - BBCount: 8
    BranchProfiles: []
    Callsites:
    - Dst: ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:196,1
    - Dst: empty
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:198,1
    - Dst: ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:204,1
    - Dst: size
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:204,1
    - Dst: ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:207,1
    - Dst: BlackboardFuzzer::fuzzSingleBB
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:211,1
    - Dst: ConsumeBool
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:216,1
    - Dst: BlackboardFuzzer::createBlackboardHierarchy
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:218,1
    - Dst: BlackboardFuzzer::fuzzJsonOperations
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:224,1
    - Dst: ConsumeBool
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:229,1
    - Dst: size
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:229,1
    - Dst: ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:232,1
    - Dst: size
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:232,1
    - Dst: erase
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:233,1
    - Dst: begin
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:233,1
    - Dst: ExceptionFilter::isExpectedException
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:240,1
    - Dst: what
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:242,1
    CyclomaticComplexity: 13
    EdgeCount: 13
    ICount: 28
    argCount: 0
    argNames: []
    argTypes: []
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 247
      start: 194
    functionDepth: 6
    functionLinenumber: 194
    functionLinenumberEnd: 247
    functionName: BlackboardFuzzer::fuzz
    functionSourceFile: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp
    functionUses: 0
    functionsReached:
    - BlackboardFuzzer::fuzzJsonOperations
    - begin
    - ExceptionFilter::isExpectedException
    - size
    - erase
    - ConsumeIntegralInRange
    - what
    - ConsumeBool
    - empty
    - BlackboardFuzzer::fuzzSingleBB
    - BlackboardFuzzer::createBlackboardHierarchy
    linkageType: ''
    returnType: void
    signature: void fuzz()
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: BlackboardFuzzer::fuzz
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:259,1
    - Dst: ExceptionFilter::isExpectedException
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:263,1
    - Dst: what
      Src: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp:265,1
    CyclomaticComplexity: 3
    EdgeCount: 3
    ICount: 12
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 271
      start: 250
    functionDepth: 7
    functionLinenumber: 250
    functionLinenumberEnd: 271
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp
    functionUses: 0
    functionsReached:
    - BlackboardFuzzer::fuzz
    - ExceptionFilter::isExpectedException
    - what
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size)
  - BBCount: 3
    BranchProfiles: []
    Callsites:
    - Dst: PickValueInArray
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:32,1
    - Dst: ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:36,1
    - Dst: PickValueInArray
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:39,1
    - Dst: ConsumeRandomLengthString
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:40,1
    - Dst: ConsumeBool
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:44,1
    - Dst: ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:52,1
    - Dst: generateFuzzedNodeXML
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:55,1
    CyclomaticComplexity: 5
    EdgeCount: 5
    ICount: 18
    argCount: 1
    argNames:
    - ' fdp'
    argTypes:
    - FuzzedDataProvider
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 61
      start: 23
    functionDepth: 1
    functionLinenumber: 23
    functionLinenumberEnd: 61
    functionName: generateFuzzedNodeXML
    functionSourceFile: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp
    functionUses: 1
    functionsReached:
    - ConsumeRandomLengthString
    - PickValueInArray
    - ConsumeIntegralInRange
    - generateFuzzedNodeXML
    - ConsumeBool
    linkageType: ''
    returnType: std::string
    signature: std::string generateFuzzedNodeXML(FuzzedDataProvider& fdp, int depth
      = 0)
  - BBCount: 7
    BranchProfiles: []
    Callsites:
    - Dst: BT::BehaviorTreeFactory::BehaviorTreeFactory
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:71,1
    - Dst: FuzzedDataProvider::ConsumeBool
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:76,1
    - Dst: FuzzedDataProvider::ConsumeRandomLengthString
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:78,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:81,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:93,1
    - Dst: generateFuzzedNodeXML
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:96,1
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:103,1
    - Dst: FuzzedDataProvider::ConsumeIntegralInRange
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:105,1
    - Dst: BT::BehaviorTreeFactory::createTreeFromText
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:108,1
    - Dst: BT::VerifyXML
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:111,1
    - Dst: BT::BehaviorTreeFactory::registerBehaviorTreeFromText
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:114,1
    - Dst: BT::BehaviorTreeFactory::registeredBehaviorTrees
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:115,1
    - Dst: BT::BehaviorTreeFactory::createTree
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:117,1
    - Dst: BT::BehaviorTreeFactory::registeredBehaviorTrees
      Src: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp:117,1
    CyclomaticComplexity: 10
    EdgeCount: 10
    ICount: 33
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 127
      start: 63
    functionDepth: 4
    functionLinenumber: 63
    functionLinenumberEnd: 127
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp
    functionUses: 0
    functionsReached:
    - BT::BehaviorTreeFactory::createTreeFromText
    - BT::VerifyXML
    - BT::BehaviorTreeFactory::createTree
    - BT::Blackboard::create
    - generateFuzzedNodeXML
    - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
    - BT::BehaviorTreeFactory::BehaviorTreeFactory
    - FuzzedDataProvider::ConsumeRandomLengthString
    - FuzzedDataProvider::ConsumeIntegralInRange
    - BT::BehaviorTreeFactory::registeredBehaviorTrees
    - FuzzedDataProvider::ConsumeBool
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size)
  - BBCount: 5
    BranchProfiles: []
    Callsites:
    - Dst: BT::Blackboard::create
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:24,1
    - Dst: std::make_shared<BT::EnumsTable>
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:25,1
    - Dst: BT::Ast::Environment::vars::set
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:28,1
    - Dst: BT::Ast::Environment::vars::set
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:29,1
    - Dst: BT::Ast::Environment::vars::set
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:30,1
    - Dst: BT::Ast::Environment::vars::set
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:31,1
    - Dst: string
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:31,1
    - Dst: FuzzedDataProvider::ConsumeRandomLengthString
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:38,1
    - Dst: BT::ValidateScript
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:40,1
    - Dst: BT::ParseScript
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:44,1
    - Dst: auto::value
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:49,1
    - Dst: auto::isNumber
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:51,1
    - Dst: auto::cast
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:53,1
    - Dst: BT::Ast::Environment::vars::set
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:56,1
    - Dst: BT::Any::Any
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:58,1
    - Dst: BT::Ast::Environment::vars::get
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:59,1
    - Dst: BT::ParseScriptAndExecute
      Src: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp:68,1
    CyclomaticComplexity: 6
    EdgeCount: 6
    ICount: 29
    argCount: 2
    argNames:
    - data
    - size
    argTypes:
    - uint8_t*
    - size_t
    assertStmts: []
    constantsTouched: []
    func_position:
      end: 76
      start: 12
    functionDepth: 7
    functionLinenumber: 12
    functionLinenumberEnd: 76
    functionName: LLVMFuzzerTestOneInput
    functionSourceFile: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp
    functionUses: 0
    functionsReached:
    - BT::Ast::Environment::vars::get
    - BT::ParseScript
    - std::make_shared<BT::EnumsTable>
    - BT::Any::Any
    - string
    - BT::Blackboard::create
    - BT::Ast::Environment::vars::set
    - auto::value
    - BT::ValidateScript
    - BT::ParseScriptAndExecute
    - auto::isNumber
    - auto::cast
    - FuzzedDataProvider::ConsumeRandomLengthString
    linkageType: ''
    returnType: int
    signature: int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size)
Fuzzer filename: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp
Fuzzing method: LLVMFuzzerTestOneInput
included-header-files:
- vector
- behaviortree_cpp/controls/while_do_else_node.h
- behaviortree_cpp/json_export.h
- groot2_test_utils.hpp
- behaviortree_cpp/utils/callback_gate.h
- behaviortree_cpp/bt_parser.h
- gmock/gmock.h
- cmath
- expected
- behaviortree_cpp/actions/unset_blackboard_node.h
- future
- chrono
- iomanip
- fstream
- thread
- ../sample_nodes/movebase_node.h
- cstddef
- behaviortree_cpp/loggers/bt_observer.h
- behaviortree_cpp/actions/script_node.h
- behaviortree_cpp/loggers/bt_cout_logger.h
- action_test_node.h
- ament_index_cpp/version.h
- android/api-level.h
- windows.h
- behaviortree_cpp/contrib/expected.hpp
- behaviortree_cpp/decorators/delay_node.h
- array
- leaf_node.h
- behaviortree_cpp/utils/wakeup_signal.hpp
- behaviortree_cpp/decorators/updated_decorator.h
- type_traits
- limits
- behaviortree_cpp/utils/timer_queue.h
- behaviortree_cpp/xml_parsing.h
- gtest/gtest.h
- assert.h
- typeindex
- sqlite3.h
- behaviortree_cpp/controls/sequence_with_memory_node.h
- condition_test_node.h
- minitrace_export.h
- emscripten/fiber.h
- exception
- curses.h
- minitrace.h
- cstdio
- behaviortree_cpp/utils/safe_any.hpp
- include/animal_hierarchy_test.h
- behaviortree_cpp/controls/parallel_node.h
- functional
- MAGIC_ENUM_CONFIG_FILE
- map
- behaviortree_cpp/utils/wildcards.hpp
- xlocale.h
- minicoro.h
- version
- string.h
- cxxabi.h
- behaviortree_cpp/decorators/force_success_node.h
- behaviortree_cpp/decorators/loop_node.h
- behaviortree_cpp/decorators/timeout_node.h
- climits
- absl/base/config.h
- clocale
- typeinfo
- behaviortree_cpp/loggers/groot2_protocol.h
- cstdarg
- platform.hpp
- behaviortree_cpp/actions/always_failure_node.h
- zmq.hpp
- valarray
- cstring
- behaviortree_cpp/behavior_tree.h
- stdarg.h
- behaviortree_cpp/utils/convert_impl.hpp
- crossdoor_nodes.h
- numeric
- Windows.h
- ament_index_cpp/get_package_share_path.hpp
- behaviortree_cpp/basic_types.h
- forward_list
- behaviortree_cpp/controls/switch_node.h
- behaviortree_cpp/loggers/bt_file_logger_v2.h
- atomic
- unordered_set
- behaviortree_cpp/action_node.h
- behaviortree_cpp/tree_node.h
- stdio.h
- algorithm
- behaviortree_cpp/loggers/bt_zmq_publisher.h
- stddef.h
- initializer_list
- inttypes.h
- behaviortree_cpp/utils/shared_library.h
- fuzzer/FuzzedDataProvider.h
- ../sample_nodes/dummy_nodes.h
- behaviortree_cpp/controls/reactive_sequence.h
- flatbuffers/base.h
- behaviortree_cpp/controls/if_then_else_node.h
- iostream
- variant
- behaviortree_cpp/contrib/magic_enum.hpp
- simple_string.hpp
- dlfcn.h
- behaviortree_cpp/contrib/any.hpp
- limits.h
- behaviortree_cpp/controls/fallback_node.h
- behaviortree_cpp/decorators/repeat_node.h
- cassert
- behaviortree_cpp/controls/parallel_all_node.h
- behaviortree_cpp/utils/polymorphic_cast_registry.hpp
- absl/strings/string_view.h
- intrinsics.h
- behaviortree_cpp/decorators/retry_node.h
- behaviortree_cpp/controls/try_catch_node.h
- unordered_map
- istream
- behaviortree_cpp/decorators/run_once_node.h
- utility
- behaviortree_cpp/condition_node.h
- string_view
- custom_type.hpp
- memory
- behaviortree_cpp/actions/test_node.h
- ios
- charconv
- filesystem
- behaviortree_cpp/flatbuffers/BT_logger_generated.h
- system_error
- unistd.h
- behaviortree_cpp/controls/sequence_node.h
- behaviortree_cpp/scripting/any_types.hpp
- stdlib.h
- dummy_nodes.h
- behaviortree_cpp/actions/sleep_node.h
- behaviortree_cpp/utils/demangle_util.h
- deque
- experimental/string_view
- iterator
- behaviortree_cpp/actions/script_condition.h
- behaviortree_cpp/scripting/operators.hpp
- behaviortree_cpp/actions/pop_from_queue.hpp
- test_helper.hpp
- queue
- ranges
- utils/strcat.hpp
- behaviortree_cpp/decorators/force_failure_node.h
- behaviortree_cpp/utils/strcat.hpp
- cstdint
- behaviortree_cpp/loggers/groot2_publisher.h
- cstdlib
- stdint.h
- behaviortree_cpp/scripting/script_parser.hpp
- list
- optional
- condition_variable
- behaviortree_cpp/utils/simple_string.hpp
- behaviortree_cpp/exceptions.h
- behaviortree_cpp/actions/always_success_node.h
- ctype.h
- nonstd/expected.tweak.hpp
- random
- ../sample_nodes/crossdoor_nodes.h
- zmq.h
- filesystem/path.h
- movebase_node.h
- string
- set
- ament_index_cpp/get_package_share_directory.hpp
- locale.h
- any
- behaviortree_cpp/decorators/script_precondition.h
- stdexcept
- tuple
- behaviortree_cpp/utils/signal.h
- behaviortree_cpp/contrib/json.hpp
- cerrno
- behaviortree_cpp/bt_factory.h
- tinyxml2.h
- crtdbg.h
- behaviortree_cpp/control_node.h
- behaviortree_cpp/blackboard.h
- FLATBUFFERS_ASSERT_INCLUDE
- iosfwd
- behaviortree_cpp/utils/locked_reference.hpp
- behaviortree_cpp/decorators/keep_running_until_failure_node.h
- behaviortree_cpp/actions/set_blackboard_node.h
- behaviortree_cpp/controls/manual_node.h
- compare
- ostream
- valgrind/valgrind.h
- behaviortree_cpp/loggers/bt_minitrace_logger.h
- behaviortree_cpp/loggers/abstract_logger.h
- experimental/filesystem
- utility.h
- pthread.h
- sys/time.h
- behaviortree_cpp/actions/updated_action.h
- zmq_addon.hpp
- new
- shared_mutex
- behaviortree_cpp/decorator_node.h
- android/log.h
- behaviortree_cpp/loggers/bt_sqlite_logger.h
- behaviortree_cpp/decorators/subtree_node.h
- ucontext.h
- signal.h
- cctype
- behaviortree_cpp/controls/reactive_fallback.h
- sstream
- behaviortree_cpp/decorators/inverter_node.h
- mutex
report: name
sources:
- function_names:
  - BehaviorTreeTest
  - ~BehaviorTreeTest() override
  - BehaviorTreeTest
  - '& operator=(const BehaviorTreeTest&)'
  - BehaviorTreeTest
  - '& operator=(BehaviorTreeTest&&)'
  - TEST_F
  - TEST_F
  - TEST_F
  - main
  source_file: /src/behaviortreecpp/tests/gtest_tree.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: root
        type: BT::SequenceNode
      - name: action_1
        type: BT::AsyncActionTest
      - name: condition_1
        type: BT::ConditionTestNode
      - name: condition_2
        type: BT::ConditionTestNode
      - name: fal_conditions
        type: BT::FallbackNode
      item_type: struct
      name: BehaviorTreeTest
      pos:
        line_end: 53
        line_start: 25
        source_file: /src/behaviortreecpp/tests/gtest_tree.cpp
    typedefs: []
    union: []
- function_names:
  - DeadlineTest
  - ~DeadlineTest() override
  - DeadlineTest
  - '& operator=(const DeadlineTest&)'
  - DeadlineTest
  - '& operator=(DeadlineTest&&)'
  - RepeatTest
  - ~RepeatTest() override
  - RepeatTest
  - '& operator=(const RepeatTest&)'
  - RepeatTest
  - '& operator=(RepeatTest&&)'
  - RepeatTestAsync
  - ~RepeatTestAsync() override
  - RepeatTestAsync
  - '& operator=(const RepeatTestAsync&)'
  - RepeatTestAsync
  - '& operator=(RepeatTestAsync&&)'
  - RetryTest
  - ~RetryTest() override
  - RetryTest
  - '& operator=(const RetryTest&)'
  - RetryTest
  - '& operator=(RetryTest&&)'
  - TimeoutAndRetry
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_decorator.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: root
        type: BT::TimeoutNode
      - name: action
        type: BT::AsyncActionTest
      item_type: struct
      name: DeadlineTest
      pos:
        line_end: 43
        line_start: 29
        source_file: /src/behaviortreecpp/tests/gtest_decorator.cpp
    - fields:
      - name: root
        type: BT::RepeatNode
      - name: action
        type: BT::SyncActionTest
      item_type: struct
      name: RepeatTest
      pos:
        line_end: 59
        line_start: 45
        source_file: /src/behaviortreecpp/tests/gtest_decorator.cpp
    - fields:
      - name: root
        type: BT::RepeatNode
      - name: action
        type: BT::AsyncActionTest
      item_type: struct
      name: RepeatTestAsync
      pos:
        line_end: 75
        line_start: 61
        source_file: /src/behaviortreecpp/tests/gtest_decorator.cpp
    - fields:
      - name: root
        type: BT::RetryNode
      - name: action
        type: BT::SyncActionTest
      item_type: struct
      name: RetryTest
      pos:
        line_end: 91
        line_start: 77
        source_file: /src/behaviortreecpp/tests/gtest_decorator.cpp
    - fields:
      - name: retry
        type: BT::RetryNode
      - name: timeout_root
        type: BT::TimeoutNode
      - name: action
        type: BT::SyncActionTest
      item_type: struct
      name: TimeoutAndRetry
      pos:
        line_end: 104
        line_start: 93
        source_file: /src/behaviortreecpp/tests/gtest_decorator.cpp
    typedefs: []
    union: []
- function_names:
  - TEST
  - TEST
  - TEST
  - KeepRunning::KeepRunning
  - KeepRunning::providedPorts
  - KeepRunning::onStart
  - KeepRunning::onRunning
  - KeepRunning::onHalted
  - TEST
  - TEST
  - TEST
  - TEST
  - CoroTestNode::CoroTestNode
  - CoroTestNode::tick
  - CoroTestNode::providedPorts
  - TEST
  - TEST
  - TEST
  - SimpleOutput::SimpleOutput
  - SimpleOutput::providedPorts
  - SimpleOutput::tick
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_preconditions.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - SimpleCoroAction::SimpleCoroAction
  - SimpleCoroAction::halt
  - SimpleCoroAction::wasHalted
  - SimpleCoroAction::setRequiredTime
  - SimpleCoroAction::tick
  - executeWhileRunning
  - executeWhileRunning
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_coroutines.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_substitution.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - TestTick
  - RegisterTestTick
  source_file: /src/behaviortreecpp/tests/test_helper.hpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - Groot2Test::makePublisher
  - Groot2Test::makeHook
  - Groot2Test::Client::Client
  - Groot2Test::Client::rawRequest
  - Groot2Test::Client::request
  - Groot2Test::makePublisher
  - Groot2Test::makeHook
  - Groot2Test::Client::Client
  - Groot2Test::Client::rawRequest
  - Groot2Test::Client::request
  source_file: /src/behaviortreecpp/tests/groot2_test_utils.hpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: publisher
        type: std::unique_ptr<BT::Groot2Publisher>
      - name: port
        type: unsigned
      item_type: struct
      name: PublisherAndPort
      pos:
        line_end: 21
        line_start: 17
        source_file: /src/behaviortreecpp/tests/groot2_test_utils.hpp
    - fields:
      - name: publisher
        type: std::unique_ptr<BT::Groot2Publisher>
      - name: port
        type: unsigned
      item_type: struct
      name: PublisherAndPort
      pos:
        line_end: 21
        line_start: 17
        source_file: /src/behaviortreecpp/tests/groot2_test_utils.hpp
    typedefs: []
    union: []
- function_names:
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_any.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ToStr
  - ActionEnum::ActionEnum
  - ActionEnum::tick
  - ActionEnum::providedPorts
  - TEST
  - TEST
  - PrintEnum::PrintEnum
  - ~PrintEnum() override
  - PrintEnum::PrintEnum
  - '& operator=(const PrintEnum&)'
  - PrintEnum::PrintEnum
  - '& operator=(PrintEnum&&)'
  - PrintEnum::providedPorts
  - PrintEnum::tick
  - IsHealthOk::IsHealthOk
  - ~IsHealthOk() override
  - IsHealthOk::IsHealthOk
  - '& operator=(const IsHealthOk&)'
  - IsHealthOk::IsHealthOk
  - '& operator=(IsHealthOk&&)'
  - IsHealthOk::providedPorts
  - IsHealthOk::tick
  - TEST
  - ActionWithNodeType::ActionWithNodeType
  - ActionWithNodeType::tick
  - ActionWithNodeType::providedPorts
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_enums.cpp
  types:
    enum:
    - enumerators:
      - name: Red
        value: '0'
      - name: Undefined
      - name: Green
        value: '2'
      - name: Blue
        value: '1'
      item_type: enum
      name: Color
      pos:
        line_end: 12
        line_start: 6
        source_file: /src/behaviortreecpp/tests/gtest_enums.cpp
    - enumerators:
      - name: NO_FAULT
        value: '0'
      - name: LOW_BATTERY
        value: '1'
      item_type: enum
      name: BatteryStatus
      pos:
        line_end: 133
        line_start: 129
        source_file: /src/behaviortreecpp/tests/gtest_enums.cpp
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TrackingAction::TrackingAction
  - TrackingAction::onStart
  - TrackingAction::onRunning
  - TrackingAction::onHalted
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_reactive.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - IMotor
  - ~IMotor()
  - IMotor
  - '& operator=(const IMotor&)'
  - IMotor
  - '& operator=(IMotor&&)'
  - doMove
  - PathFollow::PathFollow
  - PathFollow::providedPorts
  - PathFollow::onStart
  - PathFollow::onRunning
  - PathFollow::onHalted
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_interface.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: doMove()
        type: void
      item_type: struct
      name: IMotor
      pos:
        line_end: 17
        line_start: 7
        source_file: /src/behaviortreecpp/tests/gtest_interface.cpp
    - fields: []
      item_type: struct
      name: LinearMotor
      pos:
        line_end: 26
        line_start: 20
        source_file: /src/behaviortreecpp/tests/gtest_interface.cpp
    typedefs: []
    union: []
- function_names:
  - TEST
  - CopyPorts::CopyPorts
  - CopyPorts::tick
  - CopyPorts::providedPorts
  - TEST
  - TEST
  - TEST
  - TEST
  - ReadInConstructor::ReadInConstructor
  - ReadInConstructor::tick
  - ReadInConstructor::providedPorts
  - TEST
  - TEST
  - ModifyPose::ModifyPose
  - ModifyPose::providedPorts
  - ModifyPose::tick
  - TEST
  - NaughtyNav2Node::NaughtyNav2Node
  - NaughtyNav2Node::tick
  - NaughtyNav2Node::providedPorts
  - TEST
  - TEST
  - TEST
  - TEST
  - Assert::Assert
  - Assert::providedPorts
  - Assert::tick
  - TEST
  - TEST
  - PrintToConsole::PrintToConsole
  - PrintToConsole::providedPorts
  - PrintToConsole::tick
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_subtree.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_match.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - operator==(const Vector3D& other) const
  - operator==(const Quaternion3D& other) const
  - operator==(const Pose3D& other) const
  - TestTypes::BT_JSON_CONVERTER
  - TestTypes::BT_JSON_CONVERTER
  - TestTypes::BT_JSON_CONVERTER
  - TestTypes::jsonFromTime
  - TestTypes::jsonToTime
  - operator==(const Vector3D& other) const
  - operator==(const Quaternion3D& other) const
  - operator==(const Pose3D& other) const
  - TestTypes::BT_JSON_CONVERTER
  - TestTypes::BT_JSON_CONVERTER
  - TestTypes::BT_JSON_CONVERTER
  - TestTypes::jsonFromTime
  - TestTypes::jsonToTime
  - JsonTest::JsonTest
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  source_file: /src/behaviortreecpp/tests/gtest_json.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: x
        type: double
      - name: y
        type: double
      - name: z
        type: double
      item_type: struct
      name: Vector3D
      pos:
        line_end: 20
        line_start: 11
        source_file: /src/behaviortreecpp/tests/gtest_json.cpp
    - fields:
      - name: w
        type: double
      - name: x
        type: double
      - name: y
        type: double
      - name: z
        type: double
      item_type: struct
      name: Quaternion3D
      pos:
        line_end: 32
        line_start: 22
        source_file: /src/behaviortreecpp/tests/gtest_json.cpp
    - fields:
      - name: pos
        type: Vector3D
      - name: rot
        type: Quaternion3D
      item_type: struct
      name: Pose3D
      pos:
        line_end: 42
        line_start: 34
        source_file: /src/behaviortreecpp/tests/gtest_json.cpp
    - fields:
      - name: sec
        type: uint32_t
      - name: nsec
        type: uint32_t
      item_type: struct
      name: Time
      pos:
        line_end: 48
        line_start: 44
        source_file: /src/behaviortreecpp/tests/gtest_json.cpp
    - fields:
      - name: x
        type: double
      - name: y
        type: double
      - name: z
        type: double
      item_type: struct
      name: Vector3D
      pos:
        line_end: 20
        line_start: 11
        source_file: /src/behaviortreecpp/tests/gtest_json.cpp
    - fields:
      - name: w
        type: double
      - name: x
        type: double
      - name: y
        type: double
      - name: z
        type: double
      item_type: struct
      name: Quaternion3D
      pos:
        line_end: 32
        line_start: 22
        source_file: /src/behaviortreecpp/tests/gtest_json.cpp
    - fields:
      - name: pos
        type: Vector3D
      - name: rot
        type: Quaternion3D
      item_type: struct
      name: Pose3D
      pos:
        line_end: 42
        line_start: 34
        source_file: /src/behaviortreecpp/tests/gtest_json.cpp
    - fields:
      - name: sec
        type: uint32_t
      - name: nsec
        type: uint32_t
      item_type: struct
      name: Time
      pos:
        line_end: 48
        line_start: 44
        source_file: /src/behaviortreecpp/tests/gtest_json.cpp
    typedefs: []
    union: []
- function_names:
  - TryCatchTest::SetUp
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  source_file: /src/behaviortreecpp/tests/gtest_try_catch.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - TickWhileRunning
  - TickWhileRunning
  - SwitchTest
  - ~SwitchTest() override
  - SwitchTest
  - '& operator=(const SwitchTest&)'
  - SwitchTest
  - '& operator=(SwitchTest&&)'
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_switch.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: root
        type: std::unique_ptr<Switch2>
      - name: action_1
        type: BT::AsyncActionTest
      - name: action_42
        type: BT::AsyncActionTest
      - name: action_def
        type: BT::AsyncActionTest
      - name: bb
        type: BT::Blackboard::Ptr
      - name: simple_switch_config_
        type: BT::NodeConfig
      item_type: struct
      name: SwitchTest
      pos:
        line_end: 81
        line_start: 43
        source_file: /src/behaviortreecpp/tests/gtest_switch.cpp
    typedefs: []
    union: []
- function_names:
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_skipping.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - operator==(const TestPoint& other) const
  - operator!=(const TestPoint& other) const
  - BT::convertFromString
  - BT::convertFromString
  - NodeWithIntPorts::NodeWithIntPorts
  - NodeWithIntPorts::tick
  - NodeWithIntPorts::providedPorts
  - NodeWithStringPorts::NodeWithStringPorts
  - NodeWithStringPorts::tick
  - NodeWithStringPorts::providedPorts
  - NodeWithDoublePorts::NodeWithDoublePorts
  - NodeWithDoublePorts::tick
  - NodeWithDoublePorts::providedPorts
  - NodeWithGenericPorts::NodeWithGenericPorts
  - NodeWithGenericPorts::tick
  - NodeWithGenericPorts::providedPorts
  - NodeWithAnyPorts::NodeWithAnyPorts
  - NodeWithAnyPorts::tick
  - NodeWithAnyPorts::providedPorts
  - NodeWithTestPointPorts::NodeWithTestPointPorts
  - NodeWithTestPointPorts::tick
  - NodeWithTestPointPorts::providedPorts
  - NodeWithVectorPorts::NodeWithVectorPorts
  - NodeWithVectorPorts::tick
  - NodeWithVectorPorts::providedPorts
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - GetAnyAsString::GetAnyAsString
  - GetAnyAsString::tick
  - GetAnyAsString::providedPorts
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - IllegalPortNameNode::IllegalPortNameNode
  - IllegalPortNameNode::tick
  - IllegalPortNameNode::providedPorts
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: x
        type: double
      - name: y
        type: double
      item_type: struct
      name: TestPoint
      pos:
        line_end: 59
        line_start: 47
        source_file: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    - fields:
      - name: value
        type: int
      item_type: struct
      name: CustomTypeNoConversion
      pos:
        line_end: 65
        line_start: 62
        source_file: /src/behaviortreecpp/tests/gtest_port_type_rules.cpp
    typedefs: []
    union: []
- function_names:
  - PluginIssue953Test::SetUp
  - TEST_F
  - TEST_F
  - TEST_F
  source_file: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: BT_PLUGIN_ISSUE953_PATH
      pos:
        line_end: 25
        line_start: 24
        source_file: /src/behaviortreecpp/tests/gtest_plugin_issue953.cpp
      type_or_value: '"plugin_issue953.so"'
    structs: []
    typedefs: []
    union: []
- function_names:
  - GetScriptResult
  - GetScriptResult
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - checkLevel
  - TEST
  - SampleNode595::SampleNode595
  - SampleNode595::tick
  - SampleNode595::providedPorts
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/script_parser_test.cpp
  types:
    enum:
    - enumerators:
      - name: RED
        value: '1'
      - name: BLUE
        value: '3'
      - name: GREEN
        value: '5'
      item_type: enum
      name: Color
      pos:
        line_end: 259
        line_start: 254
        source_file: /src/behaviortreecpp/tests/script_parser_test.cpp
    - enumerators:
      - name: RED
        value: '1'
      - name: BLUE
        value: '3'
      - name: GREEN
        value: '5'
      item_type: enum
      name: Color
      pos:
        line_end: 294
        line_start: 289
        source_file: /src/behaviortreecpp/tests/script_parser_test.cpp
    - enumerators:
      - name: BATT
        value: '1'
      - name: CONTROLLER
        value: '2'
      item_type: enum
      name: DeviceType
      pos:
        line_end: 314
        line_start: 310
        source_file: /src/behaviortreecpp/tests/script_parser_test.cpp
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_groot2_publisher_thread_safety.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - malformedRequestScenario
  - incompleteHookScenario
  - createTreeWithNamedSubtrees
  - requestBlackboardDump
  - requestBlackboardDumpError
  - malformedRequestScenario
  - incompleteHookScenario
  - createTreeWithNamedSubtrees
  - requestBlackboardDump
  - requestBlackboardDumpError
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_groot2_publisher_integration.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - NodeWithPorts::NodeWithPorts
  - NodeWithPorts::tick
  - NodeWithPorts::providedPorts
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - NodeInPorts::NodeInPorts
  - NodeInPorts::tick
  - NodeInPorts::providedPorts
  - NodeOutPorts::NodeOutPorts
  - NodeOutPorts::tick
  - NodeOutPorts::providedPorts
  - TEST
  - ActionVectorStringIn::ActionVectorStringIn
  - ActionVectorStringIn::tick
  - ActionVectorStringIn::providedPorts
  - TEST
  - operator==(const Point2D& other) const
  - operator!=(const Point2D& other) const
  - BT::convertFromString<Point2D>(StringView str)
  - BT::toStr<Point2D>(const Point2D& point)
  - BT_JSON_CONVERTER
  - DefaultTestAction::DefaultTestAction
  - DefaultTestAction::tick
  - DefaultTestAction::providedPorts
  - TEST
  - NodeWithDefaultPoints::NodeWithDefaultPoints
  - NodeWithDefaultPoints::tick
  - NodeWithDefaultPoints::providedPorts
  - TEST
  - NodeWithDefaultStrings::NodeWithDefaultStrings
  - NodeWithDefaultStrings::tick
  - NodeWithDefaultStrings::providedPorts
  - TEST
  - NodeWithDefaultNullptr::NodeWithDefaultNullptr
  - NodeWithDefaultNullptr::tick
  - NodeWithDefaultNullptr::providedPorts
  - TEST
  - TEST
  - ActionWithDefaultPort::ActionWithDefaultPort
  - ActionWithDefaultPort::tick
  - ActionWithDefaultPort::providedPorts
  - TEST
  - CollectDoubleAction::CollectDoubleAction
  - CollectDoubleAction::tick
  - CollectDoubleAction::providedPorts
  - ProduceVectorDoubleAction::ProduceVectorDoubleAction
  - ProduceVectorDoubleAction::tick
  - ProduceVectorDoubleAction::providedPorts
  - TEST
  - ActionWithDefaultEmptyVector::ActionWithDefaultEmptyVector
  - ActionWithDefaultEmptyVector::tick
  - ActionWithDefaultEmptyVector::providedPorts
  - TEST
  - TestPoint989ToJson
  - TestPoint989FromJson
  - TestPoint989ToJson
  - TestPoint989FromJson
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_ports.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: value
        type: std::string
      item_type: struct
      name: MyType
      pos:
        line_end: 160
        line_start: 157
        source_file: /src/behaviortreecpp/tests/gtest_ports.cpp
    - fields:
      - name: x
        type: int
      - name: y
        type: int
      item_type: struct
      name: Point2D
      pos:
        line_end: 288
        line_start: 276
        source_file: /src/behaviortreecpp/tests/gtest_ports.cpp
    - fields:
      - name: a
        type: int
      - name: b
        type: double
      - name: c
        type: std::string
      item_type: struct
      name: TestStruct
      pos:
        line_end: 522
        line_start: 517
        source_file: /src/behaviortreecpp/tests/gtest_ports.cpp
    - fields:
      - name: x
        type: double
      - name: y
        type: double
      item_type: struct
      name: TestPoint989
      pos:
        line_end: 790
        line_start: 786
        source_file: /src/behaviortreecpp/tests/gtest_ports.cpp
    - fields:
      - name: x
        type: double
      - name: y
        type: double
      item_type: struct
      name: TestPoint989
      pos:
        line_end: 790
        line_start: 786
        source_file: /src/behaviortreecpp/tests/gtest_ports.cpp
    typedefs: []
    union: []
- function_names:
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_loop.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ThrowingAction::ThrowingAction
  - ThrowingAction::tick
  - ThrowingAction::providedPorts
  - SucceedingAction::SucceedingAction
  - SucceedingAction::tick
  - SucceedingAction::providedPorts
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_exception_tracking.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - spinUntilDone
  - MockedThreadedActionFixture
  - TEST_P
  - TEST_F
  - TEST_F
  - TEST_F
  source_file: /src/behaviortreecpp/tests/gtest_async_action_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields: []
      item_type: struct
      name: MockedThreadedAction
      pos:
        line_end: 33
        line_start: 15
        source_file: /src/behaviortreecpp/tests/gtest_async_action_node.cpp
    - fields:
      - name: config
        type: BT::NodeConfig
      - name: sn
        type: MockedThreadedAction
      item_type: struct
      name: MockedThreadedActionFixture
      pos:
        line_end: 42
        line_start: 36
        source_file: /src/behaviortreecpp/tests/gtest_async_action_node.cpp
    - fields: []
      item_type: struct
      name: NodeStatusFixture
      pos:
        line_end: 48
        line_start: 45
        source_file: /src/behaviortreecpp/tests/gtest_async_action_node.cpp
    typedefs: []
    union: []
- function_names:
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_updates.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - FastAction::FastAction
  - FastAction::providedPorts
  - FastAction::tick
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_wakeup.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - FilePath
  - FilePath
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - makeTestMetadata
  - makeTestMetadata
  - ActionWithMetadata::ActionWithMetadata
  - ActionWithMetadata::tick
  - ActionWithMetadata::providedPorts
  - ActionWithMetadata::metadata
  - TEST
  - TEST
  - TEST
  - ActionIssue1046::ActionIssue1046
  - ActionIssue1046::tick
  - ActionIssue1046::providedPorts
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_factory.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - SimpleFallbackTest
  - ~SimpleFallbackTest() override
  - SimpleFallbackTest
  - '& operator=(const SimpleFallbackTest&)'
  - SimpleFallbackTest
  - '& operator=(SimpleFallbackTest&&)'
  - ReactiveFallbackTest
  - ~ReactiveFallbackTest() override
  - ReactiveFallbackTest
  - '& operator=(const ReactiveFallbackTest&)'
  - ReactiveFallbackTest
  - '& operator=(ReactiveFallbackTest&&)'
  - SimpleFallbackWithMemoryTest
  - ~SimpleFallbackWithMemoryTest() override
  - SimpleFallbackWithMemoryTest
  - '& operator=(const SimpleFallbackWithMemoryTest&)'
  - SimpleFallbackWithMemoryTest
  - '& operator=(SimpleFallbackWithMemoryTest&&)'
  - ComplexFallbackWithMemoryTest
  - ~ComplexFallbackWithMemoryTest() override
  - ComplexFallbackWithMemoryTest
  - '& operator=(const ComplexFallbackWithMemoryTest&)'
  - ComplexFallbackWithMemoryTest
  - '& operator=(ComplexFallbackWithMemoryTest&&)'
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  source_file: /src/behaviortreecpp/tests/gtest_fallback.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: root
        type: BT::FallbackNode
      - name: condition
        type: BT::ConditionTestNode
      - name: action
        type: BT::AsyncActionTest
      item_type: struct
      name: SimpleFallbackTest
      pos:
        line_end: 39
        line_start: 22
        source_file: /src/behaviortreecpp/tests/gtest_fallback.cpp
    - fields:
      - name: root
        type: BT::ReactiveFallback
      - name: condition_1
        type: BT::ConditionTestNode
      - name: condition_2
        type: BT::ConditionTestNode
      - name: action_1
        type: BT::AsyncActionTest
      item_type: struct
      name: ReactiveFallbackTest
      pos:
        line_end: 63
        line_start: 41
        source_file: /src/behaviortreecpp/tests/gtest_fallback.cpp
    - fields:
      - name: root
        type: BT::FallbackNode
      - name: action
        type: BT::AsyncActionTest
      - name: condition
        type: BT::ConditionTestNode
      item_type: struct
      name: SimpleFallbackWithMemoryTest
      pos:
        line_end: 82
        line_start: 65
        source_file: /src/behaviortreecpp/tests/gtest_fallback.cpp
    - fields:
      - name: root
        type: BT::FallbackNode
      - name: action_1
        type: BT::AsyncActionTest
      - name: action_2
        type: BT::AsyncActionTest
      - name: condition_1
        type: BT::ConditionTestNode
      - name: condition_2
        type: BT::ConditionTestNode
      - name: fal_conditions
        type: BT::FallbackNode
      - name: fal_actions
        type: BT::FallbackNode
      item_type: struct
      name: ComplexFallbackWithMemoryTest
      pos:
        line_end: 122
        line_start: 84
        source_file: /src/behaviortreecpp/tests/gtest_fallback.cpp
    typedefs: []
    union: []
- function_names:
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_simple_string.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - SimpleParallelTest
  - ~SimpleParallelTest() override
  - SimpleParallelTest
  - '& operator=(const SimpleParallelTest&)'
  - SimpleParallelTest
  - '& operator=(SimpleParallelTest&&)'
  - ComplexParallelTest
  - ~ComplexParallelTest() override
  - ComplexParallelTest
  - '& operator=(const ComplexParallelTest&)'
  - ComplexParallelTest
  - '& operator=(ComplexParallelTest&&)'
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_parallel.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: root
        type: BT::ParallelNode
      - name: action_1
        type: BT::AsyncActionTest
      - name: condition_1
        type: BT::ConditionTestNode
      - name: action_2
        type: BT::AsyncActionTest
      - name: condition_2
        type: BT::ConditionTestNode
      item_type: struct
      name: SimpleParallelTest
      pos:
        line_end: 52
        line_start: 25
        source_file: /src/behaviortreecpp/tests/gtest_parallel.cpp
    - fields:
      - name: parallel_root
        type: BT::ParallelNode
      - name: parallel_left
        type: BT::ParallelNode
      - name: parallel_right
        type: BT::ParallelNode
      - name: action_L1
        type: BT::AsyncActionTest
      - name: condition_L1
        type: BT::ConditionTestNode
      - name: action_L2
        type: BT::AsyncActionTest
      - name: condition_L2
        type: BT::ConditionTestNode
      - name: action_R
        type: BT::AsyncActionTest
      - name: condition_R
        type: BT::ConditionTestNode
      item_type: struct
      name: ComplexParallelTest
      pos:
        line_end: 102
        line_start: 54
        source_file: /src/behaviortreecpp/tests/gtest_parallel.cpp
    typedefs: []
    union: []
- function_names:
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_basic_types.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - CreateAnimal::CreateAnimal
  - CreateAnimal::tick
  - CreateAnimal::providedPorts
  - CreateCat::CreateCat
  - CreateCat::tick
  - CreateCat::providedPorts
  - CreateSphynx::CreateSphynx
  - CreateSphynx::tick
  - CreateSphynx::providedPorts
  - CreateDog::CreateDog
  - CreateDog::tick
  - CreateDog::providedPorts
  - CreateCatAsAnimal::CreateCatAsAnimal
  - CreateCatAsAnimal::tick
  - CreateCatAsAnimal::providedPorts
  - PrintAnimalName::PrintAnimalName
  - PrintAnimalName::tick
  - PrintAnimalName::providedPorts
  - PrintCatName::PrintCatName
  - PrintCatName::tick
  - PrintCatName::providedPorts
  - PrintDogName::PrintDogName
  - PrintDogName::tick
  - PrintDogName::providedPorts
  - createBlackboardWithRegistry
  - createBlackboardWithRegistry
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - UpdateAnimal::UpdateAnimal
  - UpdateAnimal::tick
  - UpdateAnimal::providedPorts
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_polymorphic_ports.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  source_file: /src/behaviortreecpp/tests/gtest_name_validation.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BB_TestNode::BB_TestNode
  - BB_TestNode::tick
  - BB_TestNode::providedPorts
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - RefCountClass::RefCountClass
  - RefCountClass::RefCountClass
  - '& operator=(const RefCountClass& from)'
  - RefCountClass::RefCountClass
  - '& operator=(RefCountClass&&)'
  - ~RefCountClass()
  - RefCountClass::refCount
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - ComparisonNode::ComparisonNode
  - ComparisonNode::providedPorts
  - ComparisonNode::tick
  - TEST
  - BT::convertFromString
  - BT::convertFromString
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - UpdatePosition::UpdatePosition
  - UpdatePosition::tick
  - UpdatePosition::providedPorts
  - TEST
  - TEST
  - ActionWithLockedPort::ActionWithLockedPort
  - ActionWithLockedPort::tick
  - ActionWithLockedPort::providedPorts
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_blackboard.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: x
        type: double
      - name: y
        type: double
      item_type: struct
      name: Point
      pos:
        line_end: 414
        line_start: 410
        source_file: /src/behaviortreecpp/tests/gtest_blackboard.cpp
    typedefs: []
    union: []
- function_names:
  - IfThenElseTest::SetUp
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  source_file: /src/behaviortreecpp/tests/gtest_if_then_else.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - SimpleSequenceTest
  - ~SimpleSequenceTest() override
  - SimpleSequenceTest
  - '& operator=(const SimpleSequenceTest&)'
  - SimpleSequenceTest
  - '& operator=(SimpleSequenceTest&&)'
  - ComplexSequenceTest
  - ~ComplexSequenceTest() override
  - ComplexSequenceTest
  - '& operator=(const ComplexSequenceTest&)'
  - ComplexSequenceTest
  - '& operator=(ComplexSequenceTest&&)'
  - SequenceTripleActionTest
  - ~SequenceTripleActionTest() override
  - SequenceTripleActionTest
  - '& operator=(const SequenceTripleActionTest&)'
  - SequenceTripleActionTest
  - '& operator=(SequenceTripleActionTest&&)'
  - ComplexSequence2ActionsTest
  - ~ComplexSequence2ActionsTest() override
  - ComplexSequence2ActionsTest
  - '& operator=(const ComplexSequence2ActionsTest&)'
  - ComplexSequence2ActionsTest
  - '& operator=(ComplexSequence2ActionsTest&&)'
  - SimpleSequenceWithMemoryTest
  - ~SimpleSequenceWithMemoryTest() override
  - SimpleSequenceWithMemoryTest
  - '& operator=(const SimpleSequenceWithMemoryTest&)'
  - SimpleSequenceWithMemoryTest
  - '& operator=(SimpleSequenceWithMemoryTest&&)'
  - ComplexSequenceWithMemoryTest
  - ~ComplexSequenceWithMemoryTest() override
  - ComplexSequenceWithMemoryTest
  - '& operator=(const ComplexSequenceWithMemoryTest&)'
  - ComplexSequenceWithMemoryTest
  - '& operator=(ComplexSequenceWithMemoryTest&&)'
  - SimpleParallelTest
  - ~SimpleParallelTest() override
  - SimpleParallelTest
  - '& operator=(const SimpleParallelTest&)'
  - SimpleParallelTest
  - '& operator=(SimpleParallelTest&&)'
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_sequence.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: root
        type: BT::SequenceNode
      - name: condition
        type: BT::ConditionTestNode
      - name: action
        type: BT::AsyncActionTest
      item_type: struct
      name: SimpleSequenceTest
      pos:
        line_end: 40
        line_start: 23
        source_file: /src/behaviortreecpp/tests/gtest_sequence.cpp
    - fields:
      - name: root
        type: BT::ReactiveSequence
      - name: action_1
        type: BT::AsyncActionTest
      - name: condition_1
        type: BT::ConditionTestNode
      - name: condition_2
        type: BT::ConditionTestNode
      - name: seq_conditions
        type: BT::SequenceNode
      item_type: struct
      name: ComplexSequenceTest
      pos:
        line_end: 70
        line_start: 42
        source_file: /src/behaviortreecpp/tests/gtest_sequence.cpp
    - fields:
      - name: root
        type: BT::SequenceNode
      - name: condition
        type: BT::ConditionTestNode
      - name: action_1
        type: BT::AsyncActionTest
      - name: action_2
        type: BT::SyncActionTest
      - name: action_3
        type: BT::AsyncActionTest
      item_type: struct
      name: SequenceTripleActionTest
      pos:
        line_end: 97
        line_start: 72
        source_file: /src/behaviortreecpp/tests/gtest_sequence.cpp
    - fields:
      - name: root
        type: BT::SequenceNode
      - name: action_1
        type: BT::AsyncActionTest
      - name: action_2
        type: BT::AsyncActionTest
      - name: seq_1
        type: BT::SequenceNode
      - name: seq_2
        type: BT::SequenceNode
      - name: condition_1
        type: BT::ConditionTestNode
      - name: condition_2
        type: BT::ConditionTestNode
      item_type: struct
      name: ComplexSequence2ActionsTest
      pos:
        line_end: 135
        line_start: 99
        source_file: /src/behaviortreecpp/tests/gtest_sequence.cpp
    - fields:
      - name: root
        type: BT::SequenceWithMemory
      - name: action
        type: BT::AsyncActionTest
      - name: condition
        type: BT::ConditionTestNode
      item_type: struct
      name: SimpleSequenceWithMemoryTest
      pos:
        line_end: 154
        line_start: 137
        source_file: /src/behaviortreecpp/tests/gtest_sequence.cpp
    - fields:
      - name: root
        type: BT::SequenceWithMemory
      - name: action_1
        type: BT::AsyncActionTest
      - name: action_2
        type: BT::AsyncActionTest
      - name: condition_1
        type: BT::ConditionTestNode
      - name: condition_2
        type: BT::ConditionTestNode
      - name: seq_conditions
        type: BT::SequenceWithMemory
      - name: seq_actions
        type: BT::SequenceWithMemory
      item_type: struct
      name: ComplexSequenceWithMemoryTest
      pos:
        line_end: 194
        line_start: 156
        source_file: /src/behaviortreecpp/tests/gtest_sequence.cpp
    - fields:
      - name: root
        type: BT::ParallelNode
      - name: action_1
        type: BT::AsyncActionTest
      - name: condition_1
        type: BT::ConditionTestNode
      - name: action_2
        type: BT::AsyncActionTest
      - name: condition_2
        type: BT::ConditionTestNode
      item_type: struct
      name: SimpleParallelTest
      pos:
        line_end: 223
        line_start: 196
        source_file: /src/behaviortreecpp/tests/gtest_sequence.cpp
    typedefs: []
    union: []
- function_names:
  - WhileDoElseTest::SetUp
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  source_file: /src/behaviortreecpp/tests/gtest_while_do_else.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::test::SimpleCondition::SimpleCondition
  - BT::test::SimpleCondition::providedPorts
  - BT::test::SimpleCondition::tick
  - BT::test::AsyncTestAction::AsyncTestAction
  - BT::test::AsyncTestAction::providedPorts
  - BT::test::AsyncTestAction::onStart
  - BT::test::AsyncTestAction::onRunning
  - BT::test::AsyncTestAction::onHalted
  - BT::test::TEST
  - BT::test::TEST
  - BT::test::SimpleCondition::SimpleCondition
  - BT::test::SimpleCondition::providedPorts
  - BT::test::SimpleCondition::tick
  - BT::test::AsyncTestAction::AsyncTestAction
  - BT::test::AsyncTestAction::providedPorts
  - BT::test::AsyncTestAction::onStart
  - BT::test::AsyncTestAction::onRunning
  - BT::test::AsyncTestAction::onHalted
  - BT::test::TEST
  - BT::test::TEST
  source_file: /src/behaviortreecpp/tests/gtest_reactive_backchaining.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - Now
  - TestNode::TestNode
  - TestNode::setExpectedResult
  - TestNode::expectedResult
  - TestNode::resetTickCount
  - TestNode::tickCount
  - TestNode::tickImpl
  - IsStuck::IsStuck
  - IsStuck::tick
  - BackUpAndSpin::BackUpAndSpin
  - BackUpAndSpin::tick
  - ComputePathToPose::ComputePathToPose
  - ComputePathToPose::tick
  - FollowPath::FollowPath
  - FollowPath::tick
  - FollowPath::halt
  - FollowPath::wasHalted
  - TryDynamicCastPtr
  - Now
  - TestNode::TestNode
  - TestNode::setExpectedResult
  - TestNode::expectedResult
  - TestNode::resetTickCount
  - TestNode::tickCount
  - TestNode::tickImpl
  - IsStuck::IsStuck
  - IsStuck::tick
  - BackUpAndSpin::BackUpAndSpin
  - BackUpAndSpin::tick
  - ComputePathToPose::ComputePathToPose
  - ComputePathToPose::tick
  - FollowPath::FollowPath
  - FollowPath::tick
  - FollowPath::halt
  - FollowPath::wasHalted
  - TryDynamicCastPtr
  - TEST
  source_file: /src/behaviortreecpp/tests/navigation_test.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - throwRuntimeError
  - throwRuntimeError
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_groot2_publisher.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - LoggerTest::SetUp
  - LoggerTest::TearDown
  - LoggerTest::createSimpleTree
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  - TEST_F
  source_file: /src/behaviortreecpp/tests/gtest_loggers.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_xml_null_subtree_id.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_blackboard_thread_safety.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - TEST
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_postconditions.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - TEST
  - TEST
  source_file: /src/behaviortreecpp/tests/gtest_logger_zmq.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::ConditionTestNode::ConditionTestNode(const std::string& name)
  - BT::ConditionTestNode::tick()
  - BT::ConditionTestNode::setExpectedResult(NodeStatus res)
  source_file: /src/behaviortreecpp/tests/src/condition_test_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::AsyncActionTest::AsyncActionTest(const std::string& name, BT::Duration deadline_ms)
  - BT::AsyncActionTest::tick()
  - BT::AsyncActionTest::halt()
  - BT::AsyncActionTest::setTime(BT::Duration time)
  - BT::AsyncActionTest::setExpectedResult(BT::NodeStatus res)
  - BT::SyncActionTest::SyncActionTest(const std::string& name)
  - BT::SyncActionTest::tick()
  - BT::SyncActionTest::setExpectedResult(NodeStatus res)
  source_file: /src/behaviortreecpp/tests/src/action_test_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - Animal::Animal
  - ~Animal()
  - Animal::Animal
  - '& operator=(const Animal&)'
  - Animal::Animal
  - '& operator=(Animal&&)'
  - Animal::name
  - Cat::name
  - Cat::meow
  - Dog::name
  - Dog::bark
  - Sphynx::name
  - RegisterAnimalHierarchy
  source_file: /src/behaviortreecpp/tests/include/animal_hierarchy_test.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::ConditionTestNode::tickCount
  - BT::ConditionTestNode::tickCount
  source_file: /src/behaviortreecpp/tests/include/condition_test_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::SyncActionTest::tickCount
  - BT::SyncActionTest::resetTicks
  - ~AsyncActionTest() override
  - BT::AsyncActionTest::AsyncActionTest
  - '& operator=(const AsyncActionTest&)'
  - BT::AsyncActionTest::AsyncActionTest
  - '& operator=(AsyncActionTest&&)'
  - BT::AsyncActionTest::tickCount
  - BT::AsyncActionTest::successCount
  - BT::AsyncActionTest::failureCount
  - BT::AsyncActionTest::resetCounters
  - BT::SyncActionTest::tickCount
  - BT::SyncActionTest::resetTicks
  - ~AsyncActionTest() override
  - BT::AsyncActionTest::AsyncActionTest
  - '& operator=(const AsyncActionTest&)'
  - BT::AsyncActionTest::AsyncActionTest
  - '& operator=(AsyncActionTest&&)'
  - BT::AsyncActionTest::tickCount
  - BT::AsyncActionTest::successCount
  - BT::AsyncActionTest::failureCount
  - BT::AsyncActionTest::resetCounters
  source_file: /src/behaviortreecpp/tests/include/action_test_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - Environment::Environment
  source_file: /src/behaviortreecpp/tests/include/environment.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::convertFromString
  - BT::convertFromString
  - Issue953Action::Issue953Action
  - Issue953Action::tick
  - Issue953Action::providedPorts
  - BT_REGISTER_NODES
  source_file: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: id
        type: int
      - name: name
        type: std::string
      - name: value
        type: double
      item_type: struct
      name: Issue953Type
      pos:
        line_end: 23
        line_start: 18
        source_file: /src/behaviortreecpp/tests/plugin_issue953/plugin_issue953.cpp
    typedefs: []
    union: []
- function_names:
  - printUsage
  - main
  source_file: /src/behaviortreecpp/tools/bt_nodes_model.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/behaviortreecpp/tools/bt_plugin_manifest.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - s_signal_handler
  - CatchSignals
  - main
  source_file: /src/behaviortreecpp/tools/bt_recorder.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::Scripting::isIdentStart
  - BT::Scripting::isIdentChar
  - BT::Scripting::isDigit
  - BT::Scripting::isHexDigit
  - BT::Scripting::consumeTrailingGarbage
  - BT::Scripting::scanHexNumber
  - BT::Scripting::scanDecimalNumber
  - BT::Scripting::matchTwoCharOp
  - BT::Scripting::matchSingleCharOp
  - BT::Scripting::isIdentStart
  - BT::Scripting::isIdentChar
  - BT::Scripting::isDigit
  - BT::Scripting::isHexDigit
  - BT::Scripting::consumeTrailingGarbage
  - BT::Scripting::scanHexNumber
  - BT::Scripting::scanDecimalNumber
  - BT::Scripting::matchTwoCharOp
  - BT::Scripting::matchSingleCharOp
  - BT::Scripting::tokenize
  - BT::Scripting::isIdentStart
  - BT::Scripting::isIdentChar
  - BT::Scripting::isDigit
  - BT::Scripting::isHexDigit
  - BT::Scripting::consumeTrailingGarbage
  - BT::Scripting::scanHexNumber
  - BT::Scripting::scanDecimalNumber
  - BT::Scripting::matchTwoCharOp
  - BT::Scripting::matchSingleCharOp
  - BT::Scripting::isIdentStart
  - BT::Scripting::isIdentChar
  - BT::Scripting::isDigit
  - BT::Scripting::isHexDigit
  - BT::Scripting::consumeTrailingGarbage
  - BT::Scripting::scanHexNumber
  - BT::Scripting::scanDecimalNumber
  - BT::Scripting::matchTwoCharOp
  - BT::Scripting::matchSingleCharOp
  - BT::Scripting::tokenize
  source_file: /src/behaviortreecpp/src/script_tokenizer.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: is_real
        type: bool
      - name: has_error
        type: bool
      item_type: struct
      name: NumberResult
      pos:
        line_end: 55
        line_start: 51
        source_file: /src/behaviortreecpp/src/script_tokenizer.cpp
    - fields:
      - name: is_real
        type: bool
      - name: has_error
        type: bool
      item_type: struct
      name: NumberResult
      pos:
        line_end: 55
        line_start: 51
        source_file: /src/behaviortreecpp/src/script_tokenizer.cpp
    - fields:
      - name: is_real
        type: bool
      - name: has_error
        type: bool
      item_type: struct
      name: NumberResult
      pos:
        line_end: 55
        line_start: 51
        source_file: /src/behaviortreecpp/src/script_tokenizer.cpp
    - fields:
      - name: is_real
        type: bool
      - name: has_error
        type: bool
      item_type: struct
      name: NumberResult
      pos:
        line_end: 55
        line_start: 51
        source_file: /src/behaviortreecpp/src/script_tokenizer.cpp
    typedefs: []
    union: []
- function_names:
  - BT::toStr
  - BT::toStr
  - BT::toStr
  - BT::toStr
  - BT::toStr
  - BT::toStr
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::ConvertWithBoundCheck
  - BT::ConvertWithBoundCheck
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::parseDouble
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - '& operator<<(std::ostream& os, const NodeType& type)'
  - '& operator<<(std::ostream& os, const NodeStatus& status)'
  - '& operator<<(std::ostream& os, const PortDirection& type)'
  - BT::splitString
  - BT::PortInfo::direction
  - '& TypeInfo::type() const'
  - '& TypeInfo::typeName() const'
  - BT::TypeInfo::parseString
  - BT::TypeInfo::parseString
  - BT::PortInfo::setDescription
  - '& PortInfo::description() const'
  - '& PortInfo::defaultValue() const'
  - '& PortInfo::defaultValueString() const'
  - BT::IsAllowedPortName
  - BT::IsReservedAttribute
  - BT::findForbiddenChar
  - BT::convertFromJSON
  - BT::toJsonString
  - BT::StartWith
  - BT::StartWith
  - BT::toStr
  - BT::toStr
  - BT::toStr
  - BT::toStr
  - BT::toStr
  - BT::toStr
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::ConvertWithBoundCheck
  - BT::ConvertWithBoundCheck
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::parseDouble
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - '& operator<<(std::ostream& os, const NodeType& type)'
  - '& operator<<(std::ostream& os, const NodeStatus& status)'
  - '& operator<<(std::ostream& os, const PortDirection& type)'
  - BT::splitString
  - BT::PortInfo::direction
  - '& TypeInfo::type() const'
  - '& TypeInfo::typeName() const'
  - BT::TypeInfo::parseString
  - BT::TypeInfo::parseString
  - BT::PortInfo::setDescription
  - '& PortInfo::description() const'
  - '& PortInfo::defaultValue() const'
  - '& PortInfo::defaultValueString() const'
  - BT::IsAllowedPortName
  - BT::IsReservedAttribute
  - BT::findForbiddenChar
  - BT::convertFromJSON
  - BT::toJsonString
  - BT::StartWith
  - BT::StartWith
  source_file: /src/behaviortreecpp/src/basic_types.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ActionNodeBase::ActionNodeBase
  - SimpleActionNode::SimpleActionNode
  - SimpleActionNode::tick
  - SyncActionNode::SyncActionNode
  - SyncActionNode::executeTick
  - CoroEntry
  - CoroEntry
  - CoroActionNode::CoroActionNode
  - CoroActionNode::~CoroActionNode()
  - CoroActionNode::setStatusRunningAndYield
  - CoroActionNode::executeTick
  - CoroActionNode::tickImpl
  - CoroActionNode::halt
  - CoroActionNode::destroyCoroutine
  - StatefulActionNode::isHaltRequested
  - StatefulActionNode::tick
  - StatefulActionNode::halt
  - BT::ThreadedAction::executeTick()
  - ThreadedAction::halt
  source_file: /src/behaviortreecpp/src/action_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '* coro'
        type: mco_coro
      - name: desc
        type: mco_desc
      item_type: struct
      name: CoroActionNode::Pimpl
      pos:
        line_end: 74
        line_start: 70
        source_file: /src/behaviortreecpp/src/action_node.cpp
    typedefs: []
    union: []
- function_names:
  - BT::ControlNode::ControlNode
  - BT::ControlNode::addChild
  - BT::ControlNode::childrenCount
  - BT::ControlNode::halt
  - BT::ControlNode::resetChildren
  - '& ControlNode::children() const'
  - BT::ControlNode::haltChild
  - BT::ControlNode::haltChildren
  - BT::ControlNode::haltChildren
  - BT::ControlNode::ControlNode
  - BT::ControlNode::addChild
  - BT::ControlNode::childrenCount
  - BT::ControlNode::halt
  - BT::ControlNode::resetChildren
  - '& ControlNode::children() const'
  - BT::ControlNode::haltChild
  - BT::ControlNode::haltChildren
  - BT::ControlNode::haltChildren
  source_file: /src/behaviortreecpp/src/control_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::applyRecursiveVisitor
  - BT::applyRecursiveVisitor
  - BT::printTreeRecursively
  - BT::buildSerializedStatusSnapshot
  - BT::LibraryVersionNumber
  - BT::LibraryVersionString
  - BT::applyRecursiveVisitor
  - BT::applyRecursiveVisitor
  - BT::printTreeRecursively
  - BT::buildSerializedStatusSnapshot
  - BT::LibraryVersionNumber
  - BT::LibraryVersionString
  source_file: /src/behaviortreecpp/src/behavior_tree.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::ConditionNode::ConditionNode
  - BT::SimpleConditionNode::SimpleConditionNode
  - BT::SimpleConditionNode::tick
  - BT::ConditionNode::ConditionNode
  - BT::SimpleConditionNode::SimpleConditionNode
  - BT::SimpleConditionNode::tick
  source_file: /src/behaviortreecpp/src/condition_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::SharedLibrary::SharedLibrary
  - BT::SharedLibrary::load
  - BT::SharedLibrary::unload
  - BT::SharedLibrary::isLoaded
  - BT::SharedLibrary::findSymbol
  - '& SharedLibrary::getPath() const'
  - BT::SharedLibrary::prefix
  - BT::SharedLibrary::suffix
  - BT::SharedLibrary::SharedLibrary
  - BT::SharedLibrary::load
  - BT::SharedLibrary::unload
  - BT::SharedLibrary::isLoaded
  - BT::SharedLibrary::findSymbol
  - '& SharedLibrary::getPath() const'
  - BT::SharedLibrary::prefix
  - BT::SharedLibrary::suffix
  source_file: /src/behaviortreecpp/src/shared_library_WIN.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::PImpl
  - BT::TreeNode::TreeNode
  - BT::TreeNode::TreeNode
  - '& TreeNode::operator=(TreeNode&& other) noexcept'
  - TreeNode::~TreeNode()
  - BT::TreeNode::executeTick
  - BT::TreeNode::haltNode
  - BT::TreeNode::setStatus
  - '& TreeNode::preConditionsScripts()'
  - '& TreeNode::postConditionsScripts()'
  - BT::TreeNode::checkPreConditions
  - BT::TreeNode::checkPostConditions
  - BT::TreeNode::resetStatus
  - BT::TreeNode::status
  - BT::TreeNode::waitValidStatus
  - '& TreeNode::name() const'
  - BT::TreeNode::isHalted
  - BT::TreeNode::subscribeToStatusChange
  - BT::TreeNode::setPreTickFunction
  - BT::TreeNode::setPostTickFunction
  - BT::TreeNode::setTickMonitorCallback
  - BT::TreeNode::UID
  - '& TreeNode::fullPath() const'
  - '& TreeNode::registrationName() const'
  - '& TreeNode::config() const'
  - '& TreeNode::config()'
  - BT::TreeNode::getRawPortValue
  - BT::TreeNode::isBlackboardPointer
  - BT::TreeNode::stripBlackboardPointer
  - BT::TreeNode::getRemappedKey
  - BT::TreeNode::emitWakeUpSignal
  - BT::TreeNode::requiresWakeUp
  - BT::TreeNode::setRegistrationID
  - BT::TreeNode::setWakeUpInstance
  - BT::TreeNode::modifyPortsRemapping
  - BT::toStr
  - BT::toStr
  - BT::TreeNode::getLockedPortContent(const std::string& key)
  - BT::PImpl
  - BT::TreeNode::TreeNode
  - BT::TreeNode::TreeNode
  - '& TreeNode::operator=(TreeNode&& other) noexcept'
  - TreeNode::~TreeNode()
  - BT::TreeNode::executeTick
  - BT::TreeNode::haltNode
  - BT::TreeNode::setStatus
  - '& TreeNode::preConditionsScripts()'
  - '& TreeNode::postConditionsScripts()'
  - BT::TreeNode::checkPreConditions
  - BT::TreeNode::checkPostConditions
  - BT::TreeNode::resetStatus
  - BT::TreeNode::status
  - BT::TreeNode::waitValidStatus
  - '& TreeNode::name() const'
  - BT::TreeNode::isHalted
  - BT::TreeNode::subscribeToStatusChange
  - BT::TreeNode::setPreTickFunction
  - BT::TreeNode::setPostTickFunction
  - BT::TreeNode::setTickMonitorCallback
  - BT::TreeNode::UID
  - '& TreeNode::fullPath() const'
  - '& TreeNode::registrationName() const'
  - '& TreeNode::config() const'
  - '& TreeNode::config()'
  - BT::TreeNode::getRawPortValue
  - BT::TreeNode::isBlackboardPointer
  - BT::TreeNode::stripBlackboardPointer
  - BT::TreeNode::getRemappedKey
  - BT::TreeNode::emitWakeUpSignal
  - BT::TreeNode::requiresWakeUp
  - BT::TreeNode::setRegistrationID
  - BT::TreeNode::setWakeUpInstance
  - BT::TreeNode::modifyPortsRemapping
  - BT::toStr
  - BT::toStr
  - BT::TreeNode::getLockedPortContent(const std::string& key)
  source_file: /src/behaviortreecpp/src/tree_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: name
        type: std::string
      - name: status
        type: NodeStatus
      - name: state_condition_variable
        type: std::condition_variable
      - name: state_mutex
        type: std::mutex
      - name: state_change_signal
        type: StatusChangeSignal
      - name: config
        type: NodeConfig
      - name: registration_ID
        type: std::string
      - name: pre_tick_callback
        type: PreTickCallback
      - name: post_tick_callback
        type: PostTickCallback
      - name: tick_monitor_callback
        type: TickMonitorCallback
      - name: callback_injection_mutex
        type: std::mutex
      - name: wake_up
        type: std::shared_ptr<WakeUpSignal>
      - name: pre_parsed
        type: std::array<ScriptFunction, size_t(PreCond::COUNT_)>
      - name: post_parsed
        type: std::array<ScriptFunction, size_t(PostCond::COUNT_)>
      item_type: struct
      name: TreeNode::PImpl
      pos:
        line_end: 53
        line_start: 23
        source_file: /src/behaviortreecpp/src/tree_node.cpp
    - fields:
      - name: name
        type: std::string
      - name: status
        type: NodeStatus
      - name: state_condition_variable
        type: std::condition_variable
      - name: state_mutex
        type: std::mutex
      - name: state_change_signal
        type: StatusChangeSignal
      - name: config
        type: NodeConfig
      - name: registration_ID
        type: std::string
      - name: pre_tick_callback
        type: PreTickCallback
      - name: post_tick_callback
        type: PostTickCallback
      - name: tick_monitor_callback
        type: TickMonitorCallback
      - name: callback_injection_mutex
        type: std::mutex
      - name: wake_up
        type: std::shared_ptr<WakeUpSignal>
      - name: pre_parsed
        type: std::array<ScriptFunction, size_t(PreCond::COUNT_)>
      - name: post_parsed
        type: std::array<ScriptFunction, size_t(PostCond::COUNT_)>
      item_type: struct
      name: TreeNode::PImpl
      pos:
        line_end: 53
        line_start: 23
        source_file: /src/behaviortreecpp/src/tree_node.cpp
    typedefs: []
    union: []
- function_names:
  - BT::SharedLibrary::SharedLibrary(const std::string& path, int flags)
  - '* BT::SharedLibrary::getSymbol(const std::string& name)'
  - BT::SharedLibrary::hasSymbol(const std::string& name)
  - BT::SharedLibrary::getOSName(const std::string& name)
  source_file: /src/behaviortreecpp/src/shared_library.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::SharedLibrary::SharedLibrary
  - BT::SharedLibrary::load
  - BT::SharedLibrary::unload
  - BT::SharedLibrary::isLoaded
  - BT::SharedLibrary::findSymbol
  - '& SharedLibrary::getPath() const'
  - BT::SharedLibrary::prefix
  - BT::SharedLibrary::suffix
  - BT::SharedLibrary::SharedLibrary
  - BT::SharedLibrary::load
  - BT::SharedLibrary::unload
  - BT::SharedLibrary::isLoaded
  - BT::SharedLibrary::findSymbol
  - '& SharedLibrary::getPath() const'
  - BT::SharedLibrary::prefix
  - BT::SharedLibrary::suffix
  source_file: /src/behaviortreecpp/src/shared_library_UNIX.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::Scripting::ScriptParser::ScriptParser
  - BT::Scripting::ScriptParser::parseAll
  - '& peek() const'
  - '& advance()'
  - BT::Scripting::ScriptParser::atEnd
  - BT::Scripting::ScriptParser::check
  - '& expect(TokenType type, const char* msg)'
  - BT::Scripting::ScriptParser::leftBP
  - BT::Scripting::ScriptParser::isComparison
  - BT::Scripting::ScriptParser::isAssignment
  - BT::Scripting::ScriptParser::parsePrefix
  - BT::Scripting::ScriptParser::parseExpr
  - BT::Scripting::ScriptParser::parseAssignment
  - BT::Scripting::ScriptParser::parseTernary
  - BT::Scripting::ScriptParser::parseChainedComparison
  - BT::Scripting::ScriptParser::mapComparisonOp
  - BT::Scripting::ScriptParser::makeBinary
  - BT::Scripting::parseStatements
  - BT::Scripting::ScriptParser::ScriptParser
  - BT::Scripting::ScriptParser::parseAll
  - '& peek() const'
  - '& advance()'
  - BT::Scripting::ScriptParser::atEnd
  - BT::Scripting::ScriptParser::check
  - '& expect(TokenType type, const char* msg)'
  - BT::Scripting::ScriptParser::leftBP
  - BT::Scripting::ScriptParser::isComparison
  - BT::Scripting::ScriptParser::isAssignment
  - BT::Scripting::ScriptParser::parsePrefix
  - BT::Scripting::ScriptParser::parseExpr
  - BT::Scripting::ScriptParser::parseAssignment
  - BT::Scripting::ScriptParser::parseTernary
  - BT::Scripting::ScriptParser::parseChainedComparison
  - BT::Scripting::ScriptParser::mapComparisonOp
  - BT::Scripting::ScriptParser::makeBinary
  - BT::Scripting::parseStatements
  - BT::ParseScript
  - BT::ParseScriptAndExecute
  - BT::ValidateScript
  - BT::Scripting::ScriptParser::ScriptParser
  - BT::Scripting::ScriptParser::parseAll
  - '& peek() const'
  - '& advance()'
  - BT::Scripting::ScriptParser::atEnd
  - BT::Scripting::ScriptParser::check
  - '& expect(TokenType type, const char* msg)'
  - BT::Scripting::ScriptParser::leftBP
  - BT::Scripting::ScriptParser::isComparison
  - BT::Scripting::ScriptParser::isAssignment
  - BT::Scripting::ScriptParser::parsePrefix
  - BT::Scripting::ScriptParser::parseExpr
  - BT::Scripting::ScriptParser::parseAssignment
  - BT::Scripting::ScriptParser::parseTernary
  - BT::Scripting::ScriptParser::parseChainedComparison
  - BT::Scripting::ScriptParser::mapComparisonOp
  - BT::Scripting::ScriptParser::makeBinary
  - BT::Scripting::parseStatements
  - BT::Scripting::ScriptParser::ScriptParser
  - BT::Scripting::ScriptParser::parseAll
  - '& peek() const'
  - '& advance()'
  - BT::Scripting::ScriptParser::atEnd
  - BT::Scripting::ScriptParser::check
  - '& expect(TokenType type, const char* msg)'
  - BT::Scripting::ScriptParser::leftBP
  - BT::Scripting::ScriptParser::isComparison
  - BT::Scripting::ScriptParser::isAssignment
  - BT::Scripting::ScriptParser::parsePrefix
  - BT::Scripting::ScriptParser::parseExpr
  - BT::Scripting::ScriptParser::parseAssignment
  - BT::Scripting::ScriptParser::parseTernary
  - BT::Scripting::ScriptParser::parseChainedComparison
  - BT::Scripting::ScriptParser::mapComparisonOp
  - BT::Scripting::ScriptParser::makeBinary
  - BT::Scripting::parseStatements
  - BT::ParseScript
  - BT::ParseScriptAndExecute
  - BT::ValidateScript
  source_file: /src/behaviortreecpp/src/script_parser.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::DecoratorNode::DecoratorNode
  - BT::DecoratorNode::setChild
  - BT::DecoratorNode::halt
  - BT::DecoratorNode::child
  - BT::DecoratorNode::child
  - BT::DecoratorNode::haltChild
  - BT::DecoratorNode::resetChild
  - BT::SimpleDecoratorNode::SimpleDecoratorNode
  - BT::SimpleDecoratorNode::tick
  - BT::DecoratorNode::executeTick
  - BT::DecoratorNode::DecoratorNode
  - BT::DecoratorNode::setChild
  - BT::DecoratorNode::halt
  - BT::DecoratorNode::child
  - BT::DecoratorNode::child
  - BT::DecoratorNode::haltChild
  - BT::DecoratorNode::resetChild
  - BT::SimpleDecoratorNode::SimpleDecoratorNode
  - BT::SimpleDecoratorNode::tick
  - BT::DecoratorNode::executeTick
  source_file: /src/behaviortreecpp/src/decorator_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - '& JsonExporter::get()'
  - BT::JsonExporter::toJson
  - BT::JsonExporter::fromJson
  - BT::JsonExporter::fromJson
  - '& JsonExporter::get()'
  - BT::JsonExporter::toJson
  - BT::JsonExporter::fromJson
  - BT::JsonExporter::fromJson
  source_file: /src/behaviortreecpp/src/json_export.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::IsPrivateKey
  - BT::IsPrivateKey
  - BT::Blackboard::enableAutoRemapping
  - BT::Blackboard::getAnyLocked
  - BT::Blackboard::getAnyLocked
  - BT::Blackboard::getAny
  - BT::Blackboard::getAny
  - BT::Blackboard::getEntry
  - BT::Blackboard::getEntry
  - BT::Blackboard::entryInfo
  - BT::Blackboard::addSubtreeRemapping
  - BT::Blackboard::debugMessage
  - BT::Blackboard::getKeys
  - BT::Blackboard::clear
  - BT::Blackboard::createEntry
  - BT::Blackboard::cloneInto
  - BT::Blackboard::parent
  - BT::Blackboard::createEntryImpl
  - BT::ExportBlackboardToJSON
  - BT::ImportBlackboardFromJSON
  - '* BT::Blackboard::rootBlackboard()'
  - '* BT::Blackboard::rootBlackboard() const'
  - BT::IsPrivateKey
  - BT::IsPrivateKey
  - BT::Blackboard::enableAutoRemapping
  - BT::Blackboard::getAnyLocked
  - BT::Blackboard::getAnyLocked
  - BT::Blackboard::getAny
  - BT::Blackboard::getAny
  - BT::Blackboard::getEntry
  - BT::Blackboard::getEntry
  - BT::Blackboard::entryInfo
  - BT::Blackboard::addSubtreeRemapping
  - BT::Blackboard::debugMessage
  - BT::Blackboard::getKeys
  - BT::Blackboard::clear
  - BT::Blackboard::createEntry
  - BT::Blackboard::cloneInto
  - BT::Blackboard::parent
  - BT::Blackboard::createEntryImpl
  - BT::ExportBlackboardToJSON
  - BT::ImportBlackboardFromJSON
  - '* BT::Blackboard::rootBlackboard()'
  - '* BT::Blackboard::rootBlackboard() const'
  source_file: /src/behaviortreecpp/src/blackboard.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: key
        type: std::string
      - name: src
        type: std::shared_ptr<Entry>
      - name: dst
        type: std::shared_ptr<Entry>
      item_type: struct
      name: CopyTask
      pos:
        line_end: 193
        line_start: 188
        source_file: /src/behaviortreecpp/src/blackboard.cpp
    - fields:
      - name: key
        type: std::string
      - name: src
        type: std::shared_ptr<Entry>
      - name: dst
        type: std::shared_ptr<Entry>
      item_type: struct
      name: CopyTask
      pos:
        line_end: 193
        line_start: 188
        source_file: /src/behaviortreecpp/src/blackboard.cpp
    typedefs: []
    union: []
- function_names:
  - BT::detectMainTreeId
  - BT::loadXmlAndResolveTreeId
  - BT::detectMainTreeId
  - BT::loadXmlAndResolveTreeId
  - BT::WildcardMatch
  - BT::BehaviorTreeFactory::BehaviorTreeFactory
  - BehaviorTreeFactory::~BehaviorTreeFactory()
  - BT::BehaviorTreeFactory::BehaviorTreeFactory
  - BT::BehaviorTreeFactory::unregisterBuilder
  - BT::BehaviorTreeFactory::registerBuilder
  - BT::BehaviorTreeFactory::registerSimpleCondition
  - BT::BehaviorTreeFactory::registerSimpleAction
  - BT::BehaviorTreeFactory::registerSimpleDecorator
  - BT::BehaviorTreeFactory::registerFromPlugin
  - BT::BehaviorTreeFactory::registerFromROSPlugins
  - BT::BehaviorTreeFactory::registerBehaviorTreeFromFile
  - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
  - BT::BehaviorTreeFactory::registeredBehaviorTrees
  - BT::BehaviorTreeFactory::clearRegisteredBehaviorTrees
  - BT::BehaviorTreeFactory::instantiateTreeNode
  - '& BehaviorTreeFactory::builders() const'
  - '&

    BehaviorTreeFactory::manifests() const'
  - '& BehaviorTreeFactory::builtinNodes() const'
  - BT::BehaviorTreeFactory::createTreeFromText
  - BT::BehaviorTreeFactory::createTreeFromFile
  - BT::BehaviorTreeFactory::createTree
  - BT::BehaviorTreeFactory::addMetadataToManifest
  - BT::BehaviorTreeFactory::registerScriptingEnum
  - BT::BehaviorTreeFactory::clearSubstitutionRules
  - BT::BehaviorTreeFactory::addSubstitutionRule
  - BT::BehaviorTreeFactory::loadSubstitutionRuleFromJSON
  - '&

    BehaviorTreeFactory::substitutionRules() const'
  - '& BehaviorTreeFactory::polymorphicCastRegistry()'
  - '& BehaviorTreeFactory::polymorphicCastRegistry() const'
  - BT::BehaviorTreeFactory::polymorphicCastRegistryPtr
  - BT::Tree::Tree
  - BT::Tree::remapManifestPointers
  - BT::Tree::initialize
  - BT::Tree::haltTree
  - BT::Tree::rootNode
  - BT::Tree::sleep
  - BT::Tree::emitWakeUpSignal
  - BT::Tree::wakeUpSignal
  - Tree::~Tree()
  - BT::Tree::tickExactlyOnce
  - BT::Tree::tickOnce
  - BT::Tree::tickWhileRunning
  - BT::Tree::rootBlackboard
  - BT::Tree::applyVisitor
  - BT::Tree::applyVisitor
  - BT::Tree::getUID
  - BT::Tree::tickRoot
  - BT::BlackboardRestore
  - BT::BlackboardBackup
  - BT::ExportTreeToJSON
  - BT::ImportTreeFromJSON
  - BT::detectMainTreeId
  - BT::loadXmlAndResolveTreeId
  - BT::detectMainTreeId
  - BT::loadXmlAndResolveTreeId
  - BT::WildcardMatch
  - BT::BehaviorTreeFactory::BehaviorTreeFactory
  - BehaviorTreeFactory::~BehaviorTreeFactory()
  - BT::BehaviorTreeFactory::BehaviorTreeFactory
  - BT::BehaviorTreeFactory::unregisterBuilder
  - BT::BehaviorTreeFactory::registerBuilder
  - BT::BehaviorTreeFactory::registerSimpleCondition
  - BT::BehaviorTreeFactory::registerSimpleAction
  - BT::BehaviorTreeFactory::registerSimpleDecorator
  - BT::BehaviorTreeFactory::registerFromPlugin
  - BT::BehaviorTreeFactory::registerFromROSPlugins
  - BT::BehaviorTreeFactory::registerBehaviorTreeFromFile
  - BT::BehaviorTreeFactory::registerBehaviorTreeFromText
  - BT::BehaviorTreeFactory::registeredBehaviorTrees
  - BT::BehaviorTreeFactory::clearRegisteredBehaviorTrees
  - BT::BehaviorTreeFactory::instantiateTreeNode
  - '& BehaviorTreeFactory::builders() const'
  - '&

    BehaviorTreeFactory::manifests() const'
  - '& BehaviorTreeFactory::builtinNodes() const'
  - BT::BehaviorTreeFactory::createTreeFromText
  - BT::BehaviorTreeFactory::createTreeFromFile
  - BT::BehaviorTreeFactory::createTree
  - BT::BehaviorTreeFactory::addMetadataToManifest
  - BT::BehaviorTreeFactory::registerScriptingEnum
  - BT::BehaviorTreeFactory::clearSubstitutionRules
  - BT::BehaviorTreeFactory::addSubstitutionRule
  - BT::BehaviorTreeFactory::loadSubstitutionRuleFromJSON
  - '&

    BehaviorTreeFactory::substitutionRules() const'
  - '& BehaviorTreeFactory::polymorphicCastRegistry()'
  - '& BehaviorTreeFactory::polymorphicCastRegistry() const'
  - BT::BehaviorTreeFactory::polymorphicCastRegistryPtr
  - BT::Tree::Tree
  - BT::Tree::remapManifestPointers
  - BT::Tree::initialize
  - BT::Tree::haltTree
  - BT::Tree::rootNode
  - BT::Tree::sleep
  - BT::Tree::emitWakeUpSignal
  - BT::Tree::wakeUpSignal
  - Tree::~Tree()
  - BT::Tree::tickExactlyOnce
  - BT::Tree::tickOnce
  - BT::Tree::tickWhileRunning
  - BT::Tree::rootBlackboard
  - BT::Tree::applyVisitor
  - BT::Tree::applyVisitor
  - BT::Tree::getUID
  - BT::Tree::tickRoot
  - BT::BlackboardRestore
  - BT::BlackboardBackup
  - BT::ExportTreeToJSON
  - BT::ImportTreeFromJSON
  source_file: /src/behaviortreecpp/src/bt_factory.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: builders
        type: std::unordered_map<std::string, NodeBuilder>
      - name: manifests
        type: std::unordered_map<std::string, TreeNodeManifest>
      - name: builtin_IDs
        type: std::set<std::string>
      - name: behavior_tree_definitions
        type: std::unordered_map<std::string, Any>
      - name: scripting_enums
        type: std::shared_ptr<std::unordered_map<std::string, int>>
      - name: parser
        type: std::shared_ptr<BT::Parser>
      - name: substitution_rules
        type: std::unordered_map<std::string, SubstitutionRule>
      - name: polymorphic_registry
        type: std::shared_ptr<PolymorphicCastRegistry>
      item_type: struct
      name: BehaviorTreeFactory::PImpl
      pos:
        line_end: 111
        line_start: 101
        source_file: /src/behaviortreecpp/src/bt_factory.cpp
    - fields:
      - name: builders
        type: std::unordered_map<std::string, NodeBuilder>
      - name: manifests
        type: std::unordered_map<std::string, TreeNodeManifest>
      - name: builtin_IDs
        type: std::set<std::string>
      - name: behavior_tree_definitions
        type: std::unordered_map<std::string, Any>
      - name: scripting_enums
        type: std::shared_ptr<std::unordered_map<std::string, int>>
      - name: parser
        type: std::shared_ptr<BT::Parser>
      - name: substitution_rules
        type: std::unordered_map<std::string, SubstitutionRule>
      - name: polymorphic_registry
        type: std::shared_ptr<PolymorphicCastRegistry>
      item_type: struct
      name: BehaviorTreeFactory::PImpl
      pos:
        line_end: 111
        line_start: 101
        source_file: /src/behaviortreecpp/src/bt_factory.cpp
    typedefs: []
    union: []
- function_names:
  - xsdAttributeType
  - xsdAttributeType
  - BT::formatForbiddenChar
  - BT::validateModelName
  - BT::validatePortName
  - BT::validateInstanceName
  - BT::parseSubtreeModelPorts
  - BT::formatForbiddenChar
  - BT::validateModelName
  - BT::validatePortName
  - BT::validateInstanceName
  - BT::parseSubtreeModelPorts
  - BT::PImpl
  - BT::clear
  - BT::XMLParser::XMLParser
  - BT::XMLParser::XMLParser
  - '& XMLParser::operator=(XMLParser&& other) noexcept'
  - XMLParser::~XMLParser()
  - BT::XMLParser::loadFromFile
  - BT::XMLParser::loadFromText
  - BT::XMLParser::registeredBehaviorTrees
  - BT::XMLParser::PImpl::loadSubtreeModel(const XMLElement* xml_root)
  - XMLParser::PImpl::loadDocImpl(XMLDocument* doc, bool add_includes)
  - BT::VerifyXML
  - BT::XMLParser::instantiateTree
  - BT::XMLParser::clearInternalState
  - "XMLParser::PImpl::createNodeFromXML(const XMLElement* element,\n                                                  const
    Blackboard::Ptr& blackboard,\n                                                  const
    TreeNode::Ptr& node_parent,\n                                                  const
    std::string& prefix_path,\n                                                  Tree&
    output_tree)"
  - "BT::XMLParser::PImpl::recursivelyCreateSubtree(\n    const std::string& tree_ID,
    const std::string& tree_path,\n    const std::string& prefix_path, Tree& output_tree,
    Blackboard::Ptr blackboard,\n    const TreeNode::Ptr& root_node, std::unordered_set<std::string>&
    ancestors)"
  - "XMLParser::PImpl::getPortsRecursively(const XMLElement* element,\n                                           std::vector<std::string>&
    output_ports)"
  - BT::addNodeModelToXML
  - BT::addTreeToXML
  - BT::addNodeModelToXML
  - BT::addTreeToXML
  - BT::writeTreeNodesModelXML
  - BT::writeTreeXSD
  - BT::WriteTreeToXML
  - BT::formatForbiddenChar
  - BT::validateModelName
  - BT::validatePortName
  - BT::validateInstanceName
  - BT::parseSubtreeModelPorts
  - BT::formatForbiddenChar
  - BT::validateModelName
  - BT::validatePortName
  - BT::validateInstanceName
  - BT::parseSubtreeModelPorts
  - BT::PImpl
  - BT::clear
  - BT::XMLParser::XMLParser
  - BT::XMLParser::XMLParser
  - '& XMLParser::operator=(XMLParser&& other) noexcept'
  - XMLParser::~XMLParser()
  - BT::XMLParser::loadFromFile
  - BT::XMLParser::loadFromText
  - BT::XMLParser::registeredBehaviorTrees
  - BT::XMLParser::PImpl::loadSubtreeModel(const XMLElement* xml_root)
  - XMLParser::PImpl::loadDocImpl(XMLDocument* doc, bool add_includes)
  - BT::VerifyXML
  - BT::XMLParser::instantiateTree
  - BT::XMLParser::clearInternalState
  - "XMLParser::PImpl::createNodeFromXML(const XMLElement* element,\n                                                  const
    Blackboard::Ptr& blackboard,\n                                                  const
    TreeNode::Ptr& node_parent,\n                                                  const
    std::string& prefix_path,\n                                                  Tree&
    output_tree)"
  - "BT::XMLParser::PImpl::recursivelyCreateSubtree(\n    const std::string& tree_ID,
    const std::string& tree_path,\n    const std::string& prefix_path, Tree& output_tree,
    Blackboard::Ptr blackboard,\n    const TreeNode::Ptr& root_node, std::unordered_set<std::string>&
    ancestors)"
  - "XMLParser::PImpl::getPortsRecursively(const XMLElement* element,\n                                           std::vector<std::string>&
    output_ports)"
  - BT::addNodeModelToXML
  - BT::addTreeToXML
  - BT::addNodeModelToXML
  - BT::addTreeToXML
  - BT::writeTreeNodesModelXML
  - BT::writeTreeXSD
  - BT::WriteTreeToXML
  source_file: /src/behaviortreecpp/src/xml_parsing.cpp
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: __bt_cplusplus
      pos:
        line_end: 29
        line_start: 28
        source_file: /src/behaviortreecpp/src/xml_parsing.cpp
      type_or_value: '(_MSC_VER == 1900 ? 201103L : _MSVC_LANG)'
    - item_type: preproc_def
      name: __bt_cplusplus
      pos:
        line_end: 31
        line_start: 30
        source_file: /src/behaviortreecpp/src/xml_parsing.cpp
      type_or_value: __cplusplus
    structs:
    - fields:
      - name: ports
        type: std::unordered_map<std::string, BT::PortInfo>
      item_type: struct
      name: SubtreeModel
      pos:
        line_end: 193
        line_start: 190
        source_file: /src/behaviortreecpp/src/xml_parsing.cpp
    - fields:
      - name: ports
        type: std::unordered_map<std::string, BT::PortInfo>
      item_type: struct
      name: SubtreeModel
      pos:
        line_end: 193
        line_start: 190
        source_file: /src/behaviortreecpp/src/xml_parsing.cpp
    - fields:
      - name: "createNodeFromXML(const XMLElement* element,\n                                  const
          Blackboard::Ptr& blackboard,\n                                  const TreeNode::Ptr&
          node_parent,\n                                  const std::string& prefix_path,
          Tree& output_tree)"
        type: TreeNode::Ptr
      - name: "recursivelyCreateSubtree(const std::string& tree_ID, const std::string&
          tree_path,\n                                const std::string& prefix_path,
          Tree& output_tree,\n                                Blackboard::Ptr blackboard,\n
          \                               const TreeNode::Ptr& root_node,\n                                std::unordered_set<std::string>&
          ancestors)"
        type: void
      - name: "getPortsRecursively(const XMLElement* element,\n                           std::vector<std::string>&
          output_ports)"
        type: void
      - name: loadDocImpl(XMLDocument* doc, bool add_includes)
        type: void
      - name: opened_documents
        type: std::list<std::unique_ptr<XMLDocument> >
      - name: tree_roots
        type: std::map<std::string, const XMLElement*>
      - name: '* factory'
        type: BehaviorTreeFactory
      - name: current_path
        type: std::filesystem::path
      - name: subtree_models
        type: std::map<std::string, SubtreeModel>
      - name: suffix_count
        type: int
      - name: loadSubtreeModel(const XMLElement* xml_root)
        type: void
      item_type: struct
      name: XMLParser::PImpl
      pos:
        line_end: 272
        line_start: 230
        source_file: /src/behaviortreecpp/src/xml_parsing.cpp
    - fields:
      - name: ports
        type: std::unordered_map<std::string, BT::PortInfo>
      item_type: struct
      name: SubtreeModel
      pos:
        line_end: 193
        line_start: 190
        source_file: /src/behaviortreecpp/src/xml_parsing.cpp
    - fields:
      - name: ports
        type: std::unordered_map<std::string, BT::PortInfo>
      item_type: struct
      name: SubtreeModel
      pos:
        line_end: 193
        line_start: 190
        source_file: /src/behaviortreecpp/src/xml_parsing.cpp
    - fields:
      - name: "createNodeFromXML(const XMLElement* element,\n                                  const
          Blackboard::Ptr& blackboard,\n                                  const TreeNode::Ptr&
          node_parent,\n                                  const std::string& prefix_path,
          Tree& output_tree)"
        type: TreeNode::Ptr
      - name: "recursivelyCreateSubtree(const std::string& tree_ID, const std::string&
          tree_path,\n                                const std::string& prefix_path,
          Tree& output_tree,\n                                Blackboard::Ptr blackboard,\n
          \                               const TreeNode::Ptr& root_node,\n                                std::unordered_set<std::string>&
          ancestors)"
        type: void
      - name: "getPortsRecursively(const XMLElement* element,\n                           std::vector<std::string>&
          output_ports)"
        type: void
      - name: loadDocImpl(XMLDocument* doc, bool add_includes)
        type: void
      - name: opened_documents
        type: std::list<std::unique_ptr<XMLDocument> >
      - name: tree_roots
        type: std::map<std::string, const XMLElement*>
      - name: '* factory'
        type: BehaviorTreeFactory
      - name: current_path
        type: std::filesystem::path
      - name: subtree_models
        type: std::map<std::string, SubtreeModel>
      - name: suffix_count
        type: int
      - name: loadSubtreeModel(const XMLElement* xml_root)
        type: void
      item_type: struct
      name: XMLParser::PImpl
      pos:
        line_end: 272
        line_start: 230
        source_file: /src/behaviortreecpp/src/xml_parsing.cpp
    typedefs: []
    union: []
- function_names:
  - BT::EntryUpdatedAction::EntryUpdatedAction
  - BT::EntryUpdatedAction::tick
  - BT::EntryUpdatedAction::EntryUpdatedAction
  - BT::EntryUpdatedAction::tick
  source_file: /src/behaviortreecpp/src/actions/updated_action.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::SleepNode::SleepNode
  - BT::SleepNode::onStart
  - BT::SleepNode::onRunning
  - BT::SleepNode::onHalted
  - BT::SleepNode::SleepNode
  - BT::SleepNode::onStart
  - BT::SleepNode::onRunning
  - BT::SleepNode::onHalted
  source_file: /src/behaviortreecpp/src/actions/sleep_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::isAllowedTestNodeStatus
  - BT::validateTestNodeStatus
  - BT::createTestNodeEnums
  - BT::convertScriptResultToStatus
  - BT::isAllowedTestNodeStatus
  - BT::validateTestNodeStatus
  - BT::createTestNodeEnums
  - BT::convertScriptResultToStatus
  - BT::TestNode::TestNode
  - BT::TestNode::TestNode
  - TestNode::~TestNode()
  - BT::TestNode::onStart
  - BT::TestNode::onRunning
  - BT::TestNode::onHalted
  - BT::TestNode::onCompleted
  - BT::isAllowedTestNodeStatus
  - BT::validateTestNodeStatus
  - BT::createTestNodeEnums
  - BT::convertScriptResultToStatus
  - BT::isAllowedTestNodeStatus
  - BT::validateTestNodeStatus
  - BT::createTestNodeEnums
  - BT::convertScriptResultToStatus
  - BT::TestNode::TestNode
  - BT::TestNode::TestNode
  - TestNode::~TestNode()
  - BT::TestNode::onStart
  - BT::TestNode::onRunning
  - BT::TestNode::onHalted
  - BT::TestNode::onCompleted
  source_file: /src/behaviortreecpp/src/actions/test_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: config
        type: std::shared_ptr<TestNodeConfig>
      - name: return_status_executor
        type: ScriptFunction
      - name: success_executor
        type: ScriptFunction
      - name: failure_executor
        type: ScriptFunction
      - name: post_executor
        type: ScriptFunction
      - name: timer
        type: TimerQueue<>
      - name: completed
        type: std::atomic_bool
      item_type: struct
      name: TestNode::PImpl
      pos:
        line_end: 88
        line_start: 79
        source_file: /src/behaviortreecpp/src/actions/test_node.cpp
    - fields:
      - name: config
        type: std::shared_ptr<TestNodeConfig>
      - name: return_status_executor
        type: ScriptFunction
      - name: success_executor
        type: ScriptFunction
      - name: failure_executor
        type: ScriptFunction
      - name: post_executor
        type: ScriptFunction
      - name: timer
        type: TimerQueue<>
      - name: completed
        type: std::atomic_bool
      item_type: struct
      name: TestNode::PImpl
      pos:
        line_end: 88
        line_start: 79
        source_file: /src/behaviortreecpp/src/actions/test_node.cpp
    typedefs: []
    union: []
- function_names:
  - BT::DelayNode::DelayNode
  - BT::DelayNode::DelayNode
  - BT::DelayNode::halt
  - BT::DelayNode::tick
  - BT::DelayNode::DelayNode
  - BT::DelayNode::DelayNode
  - BT::DelayNode::halt
  - BT::DelayNode::tick
  source_file: /src/behaviortreecpp/src/decorators/delay_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::InverterNode::InverterNode
  - BT::InverterNode::tick
  - BT::InverterNode::InverterNode
  - BT::InverterNode::tick
  source_file: /src/behaviortreecpp/src/decorators/inverter_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::SubTreeNode::SubTreeNode(const std::string& name, const NodeConfig& config)
  - BT::SubTreeNode::providedPorts()
  - BT::SubTreeNode::tick()
  source_file: /src/behaviortreecpp/src/decorators/subtree_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::TimeoutNode::tick
  - BT::TimeoutNode::halt
  - BT::TimeoutNode::tick
  - BT::TimeoutNode::halt
  source_file: /src/behaviortreecpp/src/decorators/timeout_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::RetryNode::RetryNode
  - BT::RetryNode::RetryNode
  - BT::RetryNode::halt
  - BT::RetryNode::tick
  - BT::RetryNode::RetryNode
  - BT::RetryNode::RetryNode
  - BT::RetryNode::halt
  - BT::RetryNode::tick
  source_file: /src/behaviortreecpp/src/decorators/retry_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::EntryUpdatedDecorator::EntryUpdatedDecorator
  - BT::EntryUpdatedDecorator::tick
  - BT::EntryUpdatedDecorator::halt
  - BT::EntryUpdatedDecorator::EntryUpdatedDecorator
  - BT::EntryUpdatedDecorator::tick
  - BT::EntryUpdatedDecorator::halt
  source_file: /src/behaviortreecpp/src/decorators/updated_decorator.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::RepeatNode::RepeatNode
  - BT::RepeatNode::RepeatNode
  - BT::RepeatNode::tick
  - BT::RepeatNode::halt
  - BT::RepeatNode::RepeatNode
  - BT::RepeatNode::RepeatNode
  - BT::RepeatNode::tick
  - BT::RepeatNode::halt
  source_file: /src/behaviortreecpp/src/decorators/repeat_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::WhileDoElseNode::WhileDoElseNode
  - BT::WhileDoElseNode::halt
  - BT::WhileDoElseNode::tick
  - BT::WhileDoElseNode::WhileDoElseNode
  - BT::WhileDoElseNode::halt
  - BT::WhileDoElseNode::tick
  source_file: /src/behaviortreecpp/src/controls/while_do_else_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::details::CheckStringEquality
  - BT::details::CheckStringEquality
  source_file: /src/behaviortreecpp/src/controls/switch_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::ManualSelectorNode::ManualSelectorNode
  - BT::ManualSelectorNode::halt
  - BT::ManualSelectorNode::tick
  - BT::ManualSelectorNode::selectStatus
  - BT::ManualSelectorNode::selectChild
  - BT::ManualSelectorNode::ManualSelectorNode
  - BT::ManualSelectorNode::halt
  - BT::ManualSelectorNode::tick
  - BT::ManualSelectorNode::selectStatus
  - BT::ManualSelectorNode::selectChild
  source_file: /src/behaviortreecpp/src/controls/manual_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::SequenceNode::SequenceNode
  - BT::SequenceNode::halt
  - BT::SequenceNode::tick
  - BT::SequenceNode::SequenceNode
  - BT::SequenceNode::halt
  - BT::SequenceNode::tick
  source_file: /src/behaviortreecpp/src/controls/sequence_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::ReactiveSequence::EnableException
  - BT::ReactiveSequence::tick
  - BT::ReactiveSequence::halt
  - BT::ReactiveSequence::EnableException
  - BT::ReactiveSequence::tick
  - BT::ReactiveSequence::halt
  source_file: /src/behaviortreecpp/src/controls/reactive_sequence.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::FallbackNode::FallbackNode
  - BT::FallbackNode::tick
  - BT::FallbackNode::halt
  - BT::FallbackNode::FallbackNode
  - BT::FallbackNode::tick
  - BT::FallbackNode::halt
  source_file: /src/behaviortreecpp/src/controls/fallback_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::TryCatchNode::TryCatchNode
  - BT::TryCatchNode::halt
  - BT::TryCatchNode::tick
  - BT::TryCatchNode::TryCatchNode
  - BT::TryCatchNode::halt
  - BT::TryCatchNode::tick
  source_file: /src/behaviortreecpp/src/controls/try_catch_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::ParallelNode::ParallelNode
  - BT::ParallelNode::ParallelNode
  - BT::ParallelNode::tick
  - BT::ParallelNode::clear
  - BT::ParallelNode::halt
  - BT::ParallelNode::successThreshold
  - BT::ParallelNode::failureThreshold
  - BT::ParallelNode::setSuccessThreshold
  - BT::ParallelNode::setFailureThreshold
  - BT::ParallelNode::ParallelNode
  - BT::ParallelNode::ParallelNode
  - BT::ParallelNode::tick
  - BT::ParallelNode::clear
  - BT::ParallelNode::halt
  - BT::ParallelNode::successThreshold
  - BT::ParallelNode::failureThreshold
  - BT::ParallelNode::setSuccessThreshold
  - BT::ParallelNode::setFailureThreshold
  source_file: /src/behaviortreecpp/src/controls/parallel_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::IfThenElseNode::IfThenElseNode
  - BT::IfThenElseNode::halt
  - BT::IfThenElseNode::tick
  - BT::IfThenElseNode::IfThenElseNode
  - BT::IfThenElseNode::halt
  - BT::IfThenElseNode::tick
  source_file: /src/behaviortreecpp/src/controls/if_then_else_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::ReactiveFallback::EnableException
  - BT::ReactiveFallback::tick
  - BT::ReactiveFallback::halt
  - BT::ReactiveFallback::EnableException
  - BT::ReactiveFallback::tick
  - BT::ReactiveFallback::halt
  source_file: /src/behaviortreecpp/src/controls/reactive_fallback.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::SequenceWithMemory::SequenceWithMemory
  - BT::SequenceWithMemory::tick
  - BT::SequenceWithMemory::halt
  - BT::SequenceWithMemory::SequenceWithMemory
  - BT::SequenceWithMemory::tick
  - BT::SequenceWithMemory::halt
  source_file: /src/behaviortreecpp/src/controls/sequence_with_memory_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::ParallelAllNode::ParallelAllNode
  - BT::ParallelAllNode::tick
  - BT::ParallelAllNode::halt
  - BT::ParallelAllNode::failureThreshold
  - BT::ParallelAllNode::setFailureThreshold
  - BT::ParallelAllNode::ParallelAllNode
  - BT::ParallelAllNode::tick
  - BT::ParallelAllNode::halt
  - BT::ParallelAllNode::failureThreshold
  - BT::ParallelAllNode::setFailureThreshold
  source_file: /src/behaviortreecpp/src/controls/parallel_all_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::execSQL
  - BT::prepareStatement
  - BT::execStatement
  - BT::execSQL
  - BT::prepareStatement
  - BT::execStatement
  - BT::SqliteLogger::SqliteLogger
  - SqliteLogger::~SqliteLogger()
  - BT::SqliteLogger::setAdditionalCallback
  - BT::SqliteLogger::callback
  - BT::SqliteLogger::execSqlStatement
  - BT::SqliteLogger::writerLoop
  - BT::SqliteLogger::flush()
  - BT::execSQL
  - BT::prepareStatement
  - BT::execStatement
  - BT::execSQL
  - BT::prepareStatement
  - BT::execStatement
  - BT::SqliteLogger::SqliteLogger
  - SqliteLogger::~SqliteLogger()
  - BT::SqliteLogger::setAdditionalCallback
  - BT::SqliteLogger::callback
  - BT::SqliteLogger::execSqlStatement
  - BT::SqliteLogger::writerLoop
  - BT::SqliteLogger::flush()
  source_file: /src/behaviortreecpp/src/loggers/bt_sqlite_logger.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::StatusChangeLogger::StatusChangeLogger
  - BT::StatusChangeLogger::StatusChangeLogger
  - StatusChangeLogger::~StatusChangeLogger()
  - BT::StatusChangeLogger::setEnabled
  - BT::StatusChangeLogger::setTimestampType
  - BT::StatusChangeLogger::enabled
  - BT::StatusChangeLogger::showsTransitionToIdle
  - BT::StatusChangeLogger::enableTransitionToIdle
  - BT::StatusChangeLogger::subscribeToTreeChanges
  - BT::StatusChangeLogger::handleStatusChange
  - BT::StatusChangeLogger::unsubscribeFromTreeChanges
  - BT::StatusChangeLogger::StatusChangeLogger
  - BT::StatusChangeLogger::StatusChangeLogger
  - StatusChangeLogger::~StatusChangeLogger()
  - BT::StatusChangeLogger::setEnabled
  - BT::StatusChangeLogger::setTimestampType
  - BT::StatusChangeLogger::enabled
  - BT::StatusChangeLogger::showsTransitionToIdle
  - BT::StatusChangeLogger::enableTransitionToIdle
  - BT::StatusChangeLogger::subscribeToTreeChanges
  - BT::StatusChangeLogger::handleStatusChange
  - BT::StatusChangeLogger::unsubscribeFromTreeChanges
  source_file: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: enabled
        type: bool
      - name: show_transition_to_idle
        type: bool
      - name: subscribers
        type: std::vector<TreeNode::StatusChangeSubscriber>
      - name: type
        type: TimestampType
      - name: first_timestamp
        type: BT::TimePoint
      - name: callback_mutex
        type: std::mutex
      - name: callback_gate
        type: details::CallbackGate::Ptr
      item_type: struct
      name: StatusChangeLogger::PImpl
      pos:
        line_end: 18
        line_start: 9
        source_file: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    - fields:
      - name: enabled
        type: bool
      - name: show_transition_to_idle
        type: bool
      - name: subscribers
        type: std::vector<TreeNode::StatusChangeSubscriber>
      - name: type
        type: TimestampType
      - name: first_timestamp
        type: BT::TimePoint
      - name: callback_mutex
        type: std::mutex
      - name: callback_gate
        type: details::CallbackGate::Ptr
      item_type: struct
      name: StatusChangeLogger::PImpl
      pos:
        line_end: 18
        line_start: 9
        source_file: /src/behaviortreecpp/src/loggers/abstract_logger.cpp
    typedefs: []
    union: []
- function_names:
  - BT::MinitraceLogger::MinitraceLogger
  - MinitraceLogger::~MinitraceLogger()
  - BT::toConstStr
  - BT::toConstStr
  - BT::MinitraceLogger::callback
  - BT::MinitraceLogger::flush
  - BT::MinitraceLogger::MinitraceLogger
  - MinitraceLogger::~MinitraceLogger()
  - BT::toConstStr
  - BT::toConstStr
  - BT::MinitraceLogger::callback
  - BT::MinitraceLogger::flush
  source_file: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: MTR_ENABLED
      pos:
        line_end: 4
        line_start: 3
        source_file: /src/behaviortreecpp/src/loggers/bt_minitrace_logger.cpp
      type_or_value: 'true'
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::TreeObserver::TreeObserver
  - TreeObserver::~TreeObserver()
  - BT::TreeObserver::callback
  - '&

    TreeObserver::getStatistics(const std::string& path) const'
  - '& TreeObserver::getStatistics(uint16_t uid) const'
  - '&

    TreeObserver::statistics() const'
  - '& TreeObserver::pathToUID() const'
  - '& TreeObserver::uidToPath() const'
  - BT::TreeObserver::TreeObserver
  - TreeObserver::~TreeObserver()
  - BT::TreeObserver::callback
  - '&

    TreeObserver::getStatistics(const std::string& path) const'
  - '& TreeObserver::getStatistics(uint16_t uid) const'
  - '&

    TreeObserver::statistics() const'
  - '& TreeObserver::pathToUID() const'
  - '& TreeObserver::uidToPath() const'
  source_file: /src/behaviortreecpp/src/loggers/bt_observer.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::CreateRandomUUID
  - BT::CreateRandomUUID
  - BT::PImpl
  - BT::Groot2Publisher::Groot2Publisher
  - BT::Groot2Publisher::setMaxHeartbeatDelay
  - BT::Groot2Publisher::maxHeartbeatDelay
  - Groot2Publisher::~Groot2Publisher()
  - BT::Groot2Publisher::callback
  - BT::Groot2Publisher::flush
  - BT::Groot2Publisher::serverLoop
  - BT::Groot2Publisher::enableAllHooks(bool enable)
  - BT::Groot2Publisher::heartbeatLoop
  - BT::Groot2Publisher::generateBlackboardsDump
  - BT::Groot2Publisher::insertHook
  - Groot2Publisher::PImpl::runHook(const Monitor::Hook::Ptr& hook, TreeNode& node)
  - BT::Groot2Publisher::unlockBreakpoint
  - BT::Groot2Publisher::removeHook
  - BT::Groot2Publisher::removeAllHooks
  - BT::Groot2Publisher::getHook
  - BT::CreateRandomUUID
  - BT::CreateRandomUUID
  - BT::PImpl
  - BT::Groot2Publisher::Groot2Publisher
  - BT::Groot2Publisher::setMaxHeartbeatDelay
  - BT::Groot2Publisher::maxHeartbeatDelay
  - Groot2Publisher::~Groot2Publisher()
  - BT::Groot2Publisher::callback
  - BT::Groot2Publisher::flush
  - BT::Groot2Publisher::serverLoop
  - BT::Groot2Publisher::enableAllHooks(bool enable)
  - BT::Groot2Publisher::heartbeatLoop
  - BT::Groot2Publisher::generateBlackboardsDump
  - BT::Groot2Publisher::insertHook
  - Groot2Publisher::PImpl::runHook(const Monitor::Hook::Ptr& hook, TreeNode& node)
  - BT::Groot2Publisher::unlockBreakpoint
  - BT::Groot2Publisher::removeHook
  - BT::Groot2Publisher::removeAllHooks
  - BT::Groot2Publisher::getHook
  source_file: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: timestamp_usec
        type: uint64_t
      - name: node_uid
        type: uint16_t
      - name: status
        type: uint8_t
      - name: padding[5]
        type: uint8_t
      item_type: struct
      name: Transition
      pos:
        line_end: 32
        line_start: 21
        source_file: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    - fields:
      - name: runHook(const Monitor::Hook::Ptr& hook, TreeNode& node)
        type: NodeStatus
      - name: server_port
        type: unsigned
      - name: server_address
        type: std::string
      - name: publisher_address
        type: std::string
      - name: tree_xml
        type: std::string
      - name: active_server
        type: std::atomic_bool
      - name: server_thread
        type: std::thread
      - name: status_mutex
        type: std::mutex
      - name: status_buffer
        type: std::string
      - name: status_buffermap
        type: std::unordered_map<uint16_t, char*>
      - name: subtrees
        type: std::unordered_map<std::string, std::weak_ptr<BT::Tree::Subtree>>
      - name: nodes_by_uid
        type: std::unordered_map<uint16_t, std::weak_ptr<BT::TreeNode>>
      - name: hooks_map_mutex
        type: std::mutex
      - name: pre_hooks
        type: std::unordered_map<uint16_t, Monitor::Hook::Ptr>
      - name: post_hooks
        type: std::unordered_map<uint16_t, Monitor::Hook::Ptr>
      - name: last_heartbeat_mutex
        type: std::mutex
      - name: last_heartbeat
        type: std::chrono::steady_clock::time_point
      - name: max_heartbeat_delay
        type: std::chrono::milliseconds
      - name: recording
        type: bool
      - name: transitions_buffer
        type: std::deque<Transition>
      - name: recording_fist_time
        type: std::chrono::microseconds
      - name: hook_gate
        type: details::CallbackGate::Ptr
      - name: publisher_mutex
        type: std::mutex
      - name: heartbeat_thread
        type: std::thread
      - name: context
        type: zmq::context_t
      - name: server
        type: zmq::socket_t
      - name: publisher
        type: zmq::socket_t
      item_type: struct
      name: Groot2Publisher::PImpl
      pos:
        line_end: 120
        line_start: 62
        source_file: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    - fields:
      - name: timestamp_usec
        type: uint64_t
      - name: node_uid
        type: uint16_t
      - name: status
        type: uint8_t
      - name: padding[5]
        type: uint8_t
      item_type: struct
      name: Transition
      pos:
        line_end: 32
        line_start: 21
        source_file: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    - fields:
      - name: runHook(const Monitor::Hook::Ptr& hook, TreeNode& node)
        type: NodeStatus
      - name: server_port
        type: unsigned
      - name: server_address
        type: std::string
      - name: publisher_address
        type: std::string
      - name: tree_xml
        type: std::string
      - name: active_server
        type: std::atomic_bool
      - name: server_thread
        type: std::thread
      - name: status_mutex
        type: std::mutex
      - name: status_buffer
        type: std::string
      - name: status_buffermap
        type: std::unordered_map<uint16_t, char*>
      - name: subtrees
        type: std::unordered_map<std::string, std::weak_ptr<BT::Tree::Subtree>>
      - name: nodes_by_uid
        type: std::unordered_map<uint16_t, std::weak_ptr<BT::TreeNode>>
      - name: hooks_map_mutex
        type: std::mutex
      - name: pre_hooks
        type: std::unordered_map<uint16_t, Monitor::Hook::Ptr>
      - name: post_hooks
        type: std::unordered_map<uint16_t, Monitor::Hook::Ptr>
      - name: last_heartbeat_mutex
        type: std::mutex
      - name: last_heartbeat
        type: std::chrono::steady_clock::time_point
      - name: max_heartbeat_delay
        type: std::chrono::milliseconds
      - name: recording
        type: bool
      - name: transitions_buffer
        type: std::deque<Transition>
      - name: recording_fist_time
        type: std::chrono::microseconds
      - name: hook_gate
        type: details::CallbackGate::Ptr
      - name: publisher_mutex
        type: std::mutex
      - name: heartbeat_thread
        type: std::thread
      - name: context
        type: zmq::context_t
      - name: server
        type: zmq::socket_t
      - name: publisher
        type: zmq::socket_t
      item_type: struct
      name: Groot2Publisher::PImpl
      pos:
        line_end: 120
        line_start: 62
        source_file: /src/behaviortreecpp/src/loggers/groot2_publisher.cpp
    typedefs: []
    union: []
- function_names:
  - BT::ToUsec
  - BT::ToUsec
  - BT::FileLogger2::FileLogger2
  - FileLogger2::~FileLogger2()
  - BT::FileLogger2::callback
  - BT::FileLogger2::flush
  - BT::FileLogger2::writerLoop
  - BT::ToUsec
  - BT::ToUsec
  - BT::FileLogger2::FileLogger2
  - FileLogger2::~FileLogger2()
  - BT::FileLogger2::callback
  - BT::FileLogger2::flush
  - BT::FileLogger2::writerLoop
  source_file: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: file_stream
        type: std::ofstream
      - name: file_mutex
        type: std::mutex
      - name: first_timestamp
        type: Duration
      - name: transitions_queue
        type: std::deque<FileLogger2::Transition>
      - name: queue_cv
        type: std::condition_variable
      - name: queue_mutex
        type: std::mutex
      - name: writer_thread
        type: std::thread
      - name: loop
        type: std::atomic_bool
      - name: writer_ready
        type: std::atomic_bool
      item_type: struct
      name: FileLogger2::Pimpl
      pos:
        line_end: 40
        line_start: 26
        source_file: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
    - fields:
      - name: file_stream
        type: std::ofstream
      - name: file_mutex
        type: std::mutex
      - name: first_timestamp
        type: Duration
      - name: transitions_queue
        type: std::deque<FileLogger2::Transition>
      - name: queue_cv
        type: std::condition_variable
      - name: queue_mutex
        type: std::mutex
      - name: writer_thread
        type: std::thread
      - name: loop
        type: std::atomic_bool
      - name: writer_ready
        type: std::atomic_bool
      item_type: struct
      name: FileLogger2::Pimpl
      pos:
        line_end: 40
        line_start: 26
        source_file: /src/behaviortreecpp/src/loggers/bt_file_logger_v2.cpp
    typedefs: []
    union: []
- function_names:
  - BT::StdCoutLogger::StdCoutLogger
  - StdCoutLogger::~StdCoutLogger()
  - BT::StdCoutLogger::callback
  - BT::StdCoutLogger::flush
  - BT::StdCoutLogger::StdCoutLogger
  - StdCoutLogger::~StdCoutLogger()
  - BT::StdCoutLogger::callback
  - BT::StdCoutLogger::flush
  source_file: /src/behaviortreecpp/src/loggers/bt_cout_logger.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - DummyNodes::GripperInterface::GripperInterface
  - DummyNodes::ApproachObject::ApproachObject
  - DummyNodes::SaySomething::SaySomething
  - DummyNodes::SaySomething::providedPorts
  - DummyNodes::SleepNode::SleepNode
  - DummyNodes::SleepNode::providedPorts
  - DummyNodes::SleepNode::onStart
  - DummyNodes::SleepNode::onRunning
  - DummyNodes::SleepNode::onHalted
  - DummyNodes::RegisterNodes
  - DummyNodes::GripperInterface::GripperInterface
  - DummyNodes::ApproachObject::ApproachObject
  - DummyNodes::SaySomething::SaySomething
  - DummyNodes::SaySomething::providedPorts
  - DummyNodes::SleepNode::SleepNode
  - DummyNodes::SleepNode::providedPorts
  - DummyNodes::SleepNode::onStart
  - DummyNodes::SleepNode::onRunning
  - DummyNodes::SleepNode::onHalted
  - DummyNodes::RegisterNodes
  source_file: /src/behaviortreecpp/sample_nodes/dummy_nodes.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT_REGISTER_NODES
  - DummyNodes::CheckBattery
  - DummyNodes::CheckTemperature
  - DummyNodes::SayHello
  - DummyNodes::GripperInterface::open
  - DummyNodes::GripperInterface::close
  - DummyNodes::ApproachObject::tick
  - DummyNodes::SaySomething::tick
  - DummyNodes::SaySomethingSimple
  - DummyNodes::CheckBattery
  - DummyNodes::CheckTemperature
  - DummyNodes::SayHello
  - DummyNodes::GripperInterface::open
  - DummyNodes::GripperInterface::close
  - DummyNodes::ApproachObject::tick
  - DummyNodes::SaySomething::tick
  - DummyNodes::SaySomethingSimple
  source_file: /src/behaviortreecpp/sample_nodes/dummy_nodes.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT_REGISTER_NODES
  - MoveBaseAction::onStart
  - MoveBaseAction::onRunning
  - MoveBaseAction::onHalted
  source_file: /src/behaviortreecpp/sample_nodes/movebase_node.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - SleepMS
  - SleepMS
  - CrossDoor::isDoorClosed
  - CrossDoor::passThroughDoor
  - CrossDoor::openDoor
  - CrossDoor::pickLock
  - CrossDoor::smashDoor
  - CrossDoor::registerNodes
  - CrossDoor::reset
  - BT_REGISTER_NODES
  source_file: /src/behaviortreecpp/sample_nodes/crossdoor_nodes.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT_JSON_CONVERTER
  - BT::convertFromString
  - BT::convertFromString
  - MoveBaseAction::MoveBaseAction
  - MoveBaseAction::providedPorts
  source_file: /src/behaviortreecpp/sample_nodes/movebase_node.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: x
        type: double
      - name: y
        type: double
      - name: theta
        type: double
      item_type: struct
      name: Pose2D
      pos:
        line_end: 11
        line_start: 6
        source_file: /src/behaviortreecpp/sample_nodes/movebase_node.h
    typedefs: []
    union: []
- function_names:
  - BT::Parser::Parser
  - ~Parser()
  - BT::Parser::Parser
  - '& operator=(const Parser& other)'
  - BT::Parser::Parser
  - '& operator=(Parser&& other)'
  - BT::Parser::Parser
  - ~Parser()
  - BT::Parser::Parser
  - '& operator=(const Parser& other)'
  - BT::Parser::Parser
  - '& operator=(Parser&& other)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/bt_parser.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::CreateBuilder
  - BT::CreateManifest
  - BT_REGISTER_NODES
  - BT::Tree::Tree
  - '& operator=(const Tree&)'
  - BT::Tree::Tree
  - '& operator=(Tree&& other)'
  - BT::Tree::getNodesByPath
  - BT::BehaviorTreeFactory::BehaviorTreeFactory
  - '& operator=(const BehaviorTreeFactory& other)'
  - BT::BehaviorTreeFactory::registerBuilder
  - BT::BehaviorTreeFactory::registerNodeType
  - BT::BehaviorTreeFactory::registerNodeType
  - BT::BehaviorTreeFactory::registerScriptingEnums
  - BT::BehaviorTreeFactory::registerPolymorphicCast
  - BT::CreateBuilder
  - BT::CreateManifest
  - BT_REGISTER_NODES
  - BT::Tree::Tree
  - '& operator=(const Tree&)'
  - BT::Tree::Tree
  - '& operator=(Tree&& other)'
  - BT::Tree::getNodesByPath
  - BT::BehaviorTreeFactory::BehaviorTreeFactory
  - '& operator=(const BehaviorTreeFactory& other)'
  - BT::BehaviorTreeFactory::registerBuilder
  - BT::BehaviorTreeFactory::registerNodeType
  - BT::BehaviorTreeFactory::registerNodeType
  - BT::BehaviorTreeFactory::registerScriptingEnums
  - BT::BehaviorTreeFactory::registerPolymorphicCast
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
  types:
    enum:
    - enumerators:
      - name: EXACTLY_ONCE
      - name: ONCE_UNLESS_WOKEN_UP
      - name: WHILE_RUNNING
      item_type: enum
      name: TickOption
      pos:
        line_end: 212
        line_start: 207
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    - enumerators:
      - name: EXACTLY_ONCE
      - name: ONCE_UNLESS_WOKEN_UP
      - name: WHILE_RUNNING
      item_type: enum
      name: TickOption
      pos:
        line_end: 212
        line_start: 207
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    preproc_defs:
    - item_type: preproc_def
      name: BTCPP_EXPORT
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
      type_or_value: extern "C" __declspec(dllexport)
    - item_type: preproc_def
      name: BTCPP_EXPORT
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
      type_or_value: extern "C" __attribute__((visibility("default")))
    - item_type: preproc_def
      name: BTCPP_EXPORT
      pos:
        line_end: 64
        line_start: 63
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
      type_or_value: static
    - item_type: preproc_def
      name: BTCPP_EXPORT
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
      type_or_value: extern "C" __declspec(dllexport)
    - item_type: preproc_def
      name: BTCPP_EXPORT
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
      type_or_value: extern "C" __attribute__((visibility("default")))
    - item_type: preproc_def
      name: BTCPP_EXPORT
      pos:
        line_end: 64
        line_start: 63
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
      type_or_value: static
    structs:
    - fields:
      - name: nodes
        type: std::vector<TreeNode::Ptr>
      - name: blackboard
        type: Blackboard::Ptr
      - name: instance_name
        type: std::string
      - name: tree_ID
        type: std::string
      item_type: struct
      name: Subtree
      pos:
        line_end: 105
        line_start: 98
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    - fields:
      - name: nodes
        type: std::vector<TreeNode::Ptr>
      - name: blackboard
        type: Blackboard::Ptr
      - name: instance_name
        type: std::string
      - name: tree_ID
        type: std::string
      item_type: struct
      name: Subtree
      pos:
        line_end: 105
        line_start: 98
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/bt_factory.h
    typedefs: []
    union: []
- function_names:
  - ~ConditionNode() override
  - BT::ConditionNode::ConditionNode
  - '& operator=(const ConditionNode&)'
  - BT::ConditionNode::ConditionNode
  - '& operator=(ConditionNode&&)'
  - BT::ConditionNode::halt
  - BT::ConditionNode::type
  - ~SimpleConditionNode() override
  - BT::SimpleConditionNode::SimpleConditionNode
  - '& operator=(const SimpleConditionNode&)'
  - BT::SimpleConditionNode::SimpleConditionNode
  - '& operator=(SimpleConditionNode&&)'
  - ~ConditionNode() override
  - BT::ConditionNode::ConditionNode
  - '& operator=(const ConditionNode&)'
  - BT::ConditionNode::ConditionNode
  - '& operator=(ConditionNode&&)'
  - BT::ConditionNode::halt
  - BT::ConditionNode::type
  - ~SimpleConditionNode() override
  - BT::SimpleConditionNode::SimpleConditionNode
  - '& operator=(const SimpleConditionNode&)'
  - BT::SimpleConditionNode::SimpleConditionNode
  - '& operator=(SimpleConditionNode&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/condition_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~DecoratorNode() override
  - BT::DecoratorNode::DecoratorNode
  - '& operator=(const DecoratorNode&)'
  - BT::DecoratorNode::DecoratorNode
  - '& operator=(DecoratorNode&&)'
  - BT::DecoratorNode::type
  - ~SimpleDecoratorNode() override
  - BT::SimpleDecoratorNode::SimpleDecoratorNode
  - '& operator=(const SimpleDecoratorNode&)'
  - BT::SimpleDecoratorNode::SimpleDecoratorNode
  - '& operator=(SimpleDecoratorNode&&)'
  - ~DecoratorNode() override
  - BT::DecoratorNode::DecoratorNode
  - '& operator=(const DecoratorNode&)'
  - BT::DecoratorNode::DecoratorNode
  - '& operator=(DecoratorNode&&)'
  - BT::DecoratorNode::type
  - ~SimpleDecoratorNode() override
  - BT::SimpleDecoratorNode::SimpleDecoratorNode
  - '& operator=(const SimpleDecoratorNode&)'
  - BT::SimpleDecoratorNode::SimpleDecoratorNode
  - '& operator=(SimpleDecoratorNode&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/decorator_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::getType
  - BT::getType
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/behavior_tree.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~JsonExporter()
  - BT::JsonExporter::JsonExporter
  - '& operator=(const JsonExporter&)'
  - BT::JsonExporter::JsonExporter
  - '& operator=(JsonExporter&&)'
  - BT::JsonExporter::JsonExporter
  - BT::JsonExporter::fromJson
  - BT::JsonExporter::addConverter
  - BT::JsonExporter::addConverter
  - BT::JsonExporter::addConverter
  - BT::RegisterJsonDefinition
  - ~JsonExporter()
  - BT::JsonExporter::JsonExporter
  - '& operator=(const JsonExporter&)'
  - BT::JsonExporter::JsonExporter
  - '& operator=(JsonExporter&&)'
  - BT::JsonExporter::JsonExporter
  - BT::JsonExporter::fromJson
  - BT::JsonExporter::addConverter
  - BT::JsonExporter::addConverter
  - BT::JsonExporter::addConverter
  - BT::RegisterJsonDefinition
  - BT_JSON_CONVERTER
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/json_export.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~ControlNode() override
  - BT::ControlNode::ControlNode
  - '& operator=(const ControlNode&)'
  - BT::ControlNode::ControlNode
  - '& operator=(ControlNode&&)'
  - BT::ControlNode::child
  - BT::ControlNode::type
  - ~ControlNode() override
  - BT::ControlNode::ControlNode
  - '& operator=(const ControlNode&)'
  - BT::ControlNode::ControlNode
  - '& operator=(ControlNode&&)'
  - BT::ControlNode::child
  - BT::ControlNode::type
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/control_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::XMLParser::XMLParser
  - '& operator=(const XMLParser& other)'
  - BT::XMLParser::XMLParser
  - '& operator=(const XMLParser& other)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/xml_parsing.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::LeafNode::LeafNode
  - ~LeafNode() override
  - BT::LeafNode::LeafNode
  - '& operator=(const LeafNode&)'
  - BT::LeafNode::LeafNode
  - '& operator=(LeafNode&&)'
  - BT::LeafNode::LeafNode
  - ~LeafNode() override
  - BT::LeafNode::LeafNode
  - '& operator=(const LeafNode&)'
  - BT::LeafNode::LeafNode
  - '& operator=(LeafNode&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/leaf_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::Blackboard::Blackboard
  - BT::Blackboard::Blackboard
  - '& operator=(const Blackboard&)'
  - BT::Blackboard::Blackboard
  - '& operator=(Blackboard&&)'
  - BT::Blackboard::Entry
  - ~Entry()
  - BT::Blackboard::Entry
  - '& operator=(const Entry&)'
  - BT::Blackboard::Entry
  - '& operator=(Entry&&)'
  - BT::Blackboard::create
  - ~Blackboard()
  - BT::Blackboard::setPolymorphicCastRegistry
  - BT::Blackboard::polymorphicCastRegistry
  - BT::Blackboard::tryCastWithPolymorphicFallback
  - BT::Blackboard::get
  - BT::Blackboard::unset
  - BT::Blackboard::set
  - BT::Blackboard::get
  - BT::Blackboard::getStamped
  - BT::Blackboard::getStamped
  - BT::Blackboard::Blackboard
  - BT::Blackboard::Blackboard
  - '& operator=(const Blackboard&)'
  - BT::Blackboard::Blackboard
  - '& operator=(Blackboard&&)'
  - BT::Blackboard::Entry
  - ~Entry()
  - BT::Blackboard::Entry
  - '& operator=(const Entry&)'
  - BT::Blackboard::Entry
  - '& operator=(Entry&&)'
  - BT::Blackboard::create
  - ~Blackboard()
  - BT::Blackboard::setPolymorphicCastRegistry
  - BT::Blackboard::polymorphicCastRegistry
  - BT::Blackboard::tryCastWithPolymorphicFallback
  - BT::Blackboard::get
  - BT::Blackboard::unset
  - BT::Blackboard::set
  - BT::Blackboard::get
  - BT::Blackboard::getStamped
  - BT::Blackboard::getStamped
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: value
        type: T
      - name: stamp
        type: Timestamp
      item_type: struct
      name: StampedValue
      pos:
        line_end: 27
        line_start: 23
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    - fields:
      - name: value
        type: Any
      - name: info
        type: TypeInfo
      - name: string_converter
        type: StringConverter
      - name: entry_mutex
        type: std::mutex
      - name: sequence_id
        type: uint64_t
      - name: stamp
        type: std::chrono::nanoseconds
      item_type: struct
      name: Entry
      pos:
        line_end: 68
        line_start: 49
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    - fields:
      - name: value
        type: T
      - name: stamp
        type: Timestamp
      item_type: struct
      name: StampedValue
      pos:
        line_end: 27
        line_start: 23
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    - fields:
      - name: value
        type: Any
      - name: info
        type: TypeInfo
      - name: string_converter
        type: StringConverter
      - name: entry_mutex
        type: std::mutex
      - name: sequence_id
        type: uint64_t
      - name: stamp
        type: std::chrono::nanoseconds
      item_type: struct
      name: Entry
      pos:
        line_end: 68
        line_start: 49
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/blackboard.h
    typedefs: []
    union: []
- function_names:
  - BT::NodeConfig
  - BT::hasNodeNameCtor
  - BT::hasNodeFullCtor
  - BT::TreeNode::TreeNode
  - '& operator=(const TreeNode& other)'
  - BT::TreeNode::getInput
  - BT::TreeNode::getInputStamped
  - BT::TreeNode::Instantiate
  - BT::TreeNode::parseString
  - BT::TreeNode::getInputStamped
  - BT::TreeNode::getInput
  - BT::TreeNode::setOutput
  - BT::assignDefaultRemapping
  - BT::NodeConfig
  - BT::hasNodeNameCtor
  - BT::hasNodeFullCtor
  - BT::TreeNode::TreeNode
  - '& operator=(const TreeNode& other)'
  - BT::TreeNode::getInput
  - BT::TreeNode::getInputStamped
  - BT::TreeNode::Instantiate
  - BT::TreeNode::parseString
  - BT::TreeNode::getInputStamped
  - BT::TreeNode::getInput
  - BT::TreeNode::setOutput
  - BT::assignDefaultRemapping
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
  types:
    enum:
    - enumerators:
      - name: FAILURE_IF
        value: '0'
      - name: WHILE_TRUE
      - name: SUCCESS_IF
      - name: SKIP_IF
      - name: COUNT_
      item_type: enum
      name: PreCond
      pos:
        line_end: 75
        line_start: 68
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    - enumerators:
      - name: ON_HALTED
        value: '0'
      - name: ON_SUCCESS
      - name: ALWAYS
      - name: ON_FAILURE
      - name: COUNT_
      item_type: enum
      name: PostCond
      pos:
        line_end: 89
        line_start: 81
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    - enumerators:
      - name: FAILURE_IF
        value: '0'
      - name: WHILE_TRUE
      - name: SUCCESS_IF
      - name: SKIP_IF
      - name: COUNT_
      item_type: enum
      name: PreCond
      pos:
        line_end: 75
        line_start: 68
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    - enumerators:
      - name: ON_HALTED
        value: '0'
      - name: ON_SUCCESS
      - name: ALWAYS
      - name: ON_FAILURE
      - name: COUNT_
      item_type: enum
      name: PostCond
      pos:
        line_end: 89
        line_start: 81
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    preproc_defs: []
    structs:
    - fields:
      - name: type
        type: NodeType
      - name: registration_ID
        type: std::string
      - name: ports
        type: PortsList
      - name: metadata
        type: KeyValueVector
      item_type: struct
      name: TreeNodeManifest
      pos:
        line_end: 41
        line_start: 35
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    - fields:
      - name: blackboard
        type: Blackboard::Ptr
      - name: enums
        type: std::shared_ptr<ScriptingEnumsRegistry>
      - name: input_ports
        type: PortsRemapping
      - name: output_ports
        type: PortsRemapping
      - name: other_attributes
        type: NonPortAttributes
      - name: '* manifest'
        type: TreeNodeManifest
      - name: uid
        type: uint16_t
      - name: path
        type: std::string
      - name: pre_conditions
        type: std::map<PreCond, std::string>
      - name: post_conditions
        type: std::map<PostCond, std::string>
      item_type: struct
      name: NodeConfig
      pos:
        line_end: 133
        line_start: 103
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    - fields:
      - name: type
        type: NodeType
      - name: registration_ID
        type: std::string
      - name: ports
        type: PortsList
      - name: metadata
        type: KeyValueVector
      item_type: struct
      name: TreeNodeManifest
      pos:
        line_end: 41
        line_start: 35
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    - fields:
      - name: blackboard
        type: Blackboard::Ptr
      - name: enums
        type: std::shared_ptr<ScriptingEnumsRegistry>
      - name: input_ports
        type: PortsRemapping
      - name: output_ports
        type: PortsRemapping
      - name: other_attributes
        type: NonPortAttributes
      - name: '* manifest'
        type: TreeNodeManifest
      - name: uid
        type: uint16_t
      - name: path
        type: std::string
      - name: pre_conditions
        type: std::map<PreCond, std::string>
      - name: post_conditions
        type: std::map<PostCond, std::string>
      item_type: struct
      name: NodeConfig
      pos:
        line_end: 133
        line_start: 103
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
    typedefs:
    - item_type: typedef
      name: Ptr
      pos:
        line_end: 155
        line_start: 155
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
      type: shared_ptr<TreeNode>
    - item_type: typedef
      name: Ptr
      pos:
        line_end: 155
        line_start: 155
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/tree_node.h
      type: shared_ptr<TreeNode>
    union: []
- function_names:
  - ~ActionNodeBase() override
  - BT::ActionNodeBase::ActionNodeBase
  - '& operator=(const ActionNodeBase&)'
  - BT::ActionNodeBase::ActionNodeBase
  - '& operator=(ActionNodeBase&&)'
  - BT::ActionNodeBase::type
  - ~SyncActionNode() override
  - BT::SyncActionNode::SyncActionNode
  - '& operator=(const SyncActionNode&)'
  - BT::SyncActionNode::SyncActionNode
  - '& operator=(SyncActionNode&&)'
  - BT::SyncActionNode::halt
  - ~SimpleActionNode() override
  - BT::SimpleActionNode::SimpleActionNode
  - '& operator=(const SimpleActionNode&)'
  - BT::SimpleActionNode::SimpleActionNode
  - '& operator=(SimpleActionNode&&)'
  - BT::ThreadedAction::ThreadedAction
  - BT::ThreadedAction::isHaltRequested
  - BT::StatefulActionNode::StatefulActionNode
  - BT::CoroActionNode::CoroActionNode
  - '& operator=(const CoroActionNode&)'
  - BT::CoroActionNode::CoroActionNode
  - '& operator=(CoroActionNode&&)'
  - ~ActionNodeBase() override
  - BT::ActionNodeBase::ActionNodeBase
  - '& operator=(const ActionNodeBase&)'
  - BT::ActionNodeBase::ActionNodeBase
  - '& operator=(ActionNodeBase&&)'
  - BT::ActionNodeBase::type
  - ~SyncActionNode() override
  - BT::SyncActionNode::SyncActionNode
  - '& operator=(const SyncActionNode&)'
  - BT::SyncActionNode::SyncActionNode
  - '& operator=(SyncActionNode&&)'
  - BT::SyncActionNode::halt
  - ~SimpleActionNode() override
  - BT::SimpleActionNode::SimpleActionNode
  - '& operator=(const SimpleActionNode&)'
  - BT::SimpleActionNode::SimpleActionNode
  - '& operator=(SimpleActionNode&&)'
  - BT::ThreadedAction::ThreadedAction
  - BT::ThreadedAction::isHaltRequested
  - BT::StatefulActionNode::StatefulActionNode
  - BT::CoroActionNode::CoroActionNode
  - '& operator=(const CoroActionNode&)'
  - BT::CoroActionNode::CoroActionNode
  - '& operator=(CoroActionNode&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/action_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::isStatusActive
  - BT::isStatusCompleted
  - BT::convertFromJSON
  - BT::convertFromString
  - BT::GetAnyFromStringFunctor
  - BT::GetAnyFromStringFunctor
  - BT::IsConvertibleToString
  - BT::toStr
  - BT::TypeInfo::Create
  - BT::TypeInfo::TypeInfo
  - BT::TypeInfo::TypeInfo
  - BT::TypeInfo::parseString
  - BT::TypeInfo::isStronglyTyped
  - '& converter() const'
  - BT::PortInfo::PortInfo
  - BT::PortInfo::PortInfo
  - BT::PortInfo::setDefaultValue
  - BT::CreatePort
  - BT::InputPort
  - BT::OutputPort
  - BT::BidirectionalPort
  - BT::details::PortWithDefault
  - BT::details::PortWithDefault
  - BT::InputPort
  - BT::BidirectionalPort
  - BT::OutputPort
  - BT::getProvidedPorts
  - BT::getProvidedPorts
  - BT::isStatusActive
  - BT::isStatusCompleted
  - BT::convertFromJSON
  - BT::convertFromString
  - BT::GetAnyFromStringFunctor
  - BT::GetAnyFromStringFunctor
  - BT::IsConvertibleToString
  - BT::toStr
  - BT::TypeInfo::Create
  - BT::TypeInfo::TypeInfo
  - BT::TypeInfo::TypeInfo
  - BT::TypeInfo::parseString
  - BT::TypeInfo::isStronglyTyped
  - '& converter() const'
  - BT::PortInfo::PortInfo
  - BT::PortInfo::PortInfo
  - BT::PortInfo::setDefaultValue
  - BT::CreatePort
  - BT::InputPort
  - BT::OutputPort
  - BT::BidirectionalPort
  - BT::details::PortWithDefault
  - BT::details::PortWithDefault
  - BT::InputPort
  - BT::BidirectionalPort
  - BT::OutputPort
  - BT::getProvidedPorts
  - BT::getProvidedPorts
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
  types:
    enum:
    - enumerators:
      - name: UNDEFINED
        value: '0'
      - name: DECORATOR
      - name: CONTROL
      - name: CONDITION
      - name: ACTION
      - name: SUBTREE
      item_type: enum
      name: NodeType
      pos:
        line_end: 27
        line_start: 19
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    - enumerators:
      - name: IDLE
        value: '0'
      - name: SKIPPED
        value: '4'
      - name: FAILURE
        value: '3'
      - name: SUCCESS
        value: '2'
      - name: RUNNING
        value: '1'
      item_type: enum
      name: NodeStatus
      pos:
        line_end: 39
        line_start: 32
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    - enumerators:
      - name: INPUT
      - name: INOUT
      - name: OUTPUT
      item_type: enum
      name: PortDirection
      pos:
        line_end: 56
        line_start: 51
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    - enumerators:
      - name: UNDEFINED
        value: '0'
      - name: DECORATOR
      - name: CONTROL
      - name: CONDITION
      - name: ACTION
      - name: SUBTREE
      item_type: enum
      name: NodeType
      pos:
        line_end: 27
        line_start: 19
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    - enumerators:
      - name: IDLE
        value: '0'
      - name: SKIPPED
        value: '4'
      - name: FAILURE
        value: '3'
      - name: SUCCESS
        value: '2'
      - name: RUNNING
        value: '1'
      item_type: enum
      name: NodeStatus
      pos:
        line_end: 39
        line_start: 32
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    - enumerators:
      - name: INPUT
      - name: INOUT
      - name: OUTPUT
      item_type: enum
      name: PortDirection
      pos:
        line_end: 56
        line_start: 51
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    preproc_defs: []
    structs:
    - fields: []
      item_type: struct
      name: AnyTypeAllowed
      pos:
        line_end: 88
        line_start: 86
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    - fields:
      - name: seq
        type: uint64_t
      - name: time
        type: std::chrono::nanoseconds
      item_type: struct
      name: Timestamp
      pos:
        line_end: 361
        line_start: 355
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    - fields: []
      item_type: struct
      name: has_static_method_providedPorts
      pos:
        line_end: 620
        line_start: 618
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    - fields: []
      item_type: struct
      name: "has_static_method_providedPorts<\n    T, typename std::enable_if<\n           std::is_same<decltype(T::providedPorts()),
        PortsList>::value>::type>"
      pos:
        line_end: 628
        line_start: 623
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    - fields: []
      item_type: struct
      name: has_static_method_metadata
      pos:
        line_end: 633
        line_start: 631
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    - fields: []
      item_type: struct
      name: "has_static_method_metadata<\n    T, typename std::enable_if<\n           std::is_same<decltype(T::metadata()),
        KeyValueVector>::value>::type>"
      pos:
        line_end: 641
        line_start: 636
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    - fields: []
      item_type: struct
      name: AnyTypeAllowed
      pos:
        line_end: 88
        line_start: 86
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    - fields:
      - name: seq
        type: uint64_t
      - name: time
        type: std::chrono::nanoseconds
      item_type: struct
      name: Timestamp
      pos:
        line_end: 361
        line_start: 355
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    - fields: []
      item_type: struct
      name: has_static_method_providedPorts
      pos:
        line_end: 620
        line_start: 618
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    - fields: []
      item_type: struct
      name: "has_static_method_providedPorts<\n    T, typename std::enable_if<\n           std::is_same<decltype(T::providedPorts()),
        PortsList>::value>::type>"
      pos:
        line_end: 628
        line_start: 623
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    - fields: []
      item_type: struct
      name: has_static_method_metadata
      pos:
        line_end: 633
        line_start: 631
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    - fields: []
      item_type: struct
      name: "has_static_method_metadata<\n    T, typename std::enable_if<\n           std::is_same<decltype(T::metadata()),
        KeyValueVector>::value>::type>"
      pos:
        line_end: 641
        line_start: 636
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/basic_types.h
    typedefs: []
    union: []
- function_names:
  - BT::BehaviorTreeException::BehaviorTreeException
  - BT::BehaviorTreeException::BehaviorTreeException
  - BT::BehaviorTreeException::what
  - BT::LogicError::LogicError
  - BT::LogicError::LogicError
  - BT::RuntimeError::RuntimeError
  - BT::RuntimeError::RuntimeError
  - BT::NodeExecutionError::NodeExecutionError
  - '& failedNode() const'
  - '& originalMessage() const'
  - BT::NodeExecutionError::formatMessage
  - BT::BehaviorTreeException::BehaviorTreeException
  - BT::BehaviorTreeException::BehaviorTreeException
  - BT::BehaviorTreeException::what
  - BT::LogicError::LogicError
  - BT::LogicError::LogicError
  - BT::RuntimeError::RuntimeError
  - BT::RuntimeError::RuntimeError
  - BT::NodeExecutionError::NodeExecutionError
  - '& failedNode() const'
  - '& originalMessage() const'
  - BT::NodeExecutionError::formatMessage
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: node_name
        type: std::string
      - name: node_path
        type: std::string
      - name: registration_name
        type: std::string
      item_type: struct
      name: TickBacktraceEntry
      pos:
        line_end: 76
        line_start: 71
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    - fields:
      - name: node_name
        type: std::string
      - name: node_path
        type: std::string
      - name: registration_name
        type: std::string
      item_type: struct
      name: TickBacktraceEntry
      pos:
        line_end: 76
        line_start: 71
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/exceptions.h
    typedefs: []
    union: []
- function_names:
  - ~EntryUpdatedAction() override
  - BT::EntryUpdatedAction::EntryUpdatedAction
  - '& operator=(const EntryUpdatedAction&)'
  - BT::EntryUpdatedAction::EntryUpdatedAction
  - '& operator=(EntryUpdatedAction&&)'
  - BT::EntryUpdatedAction::providedPorts
  - ~EntryUpdatedAction() override
  - BT::EntryUpdatedAction::EntryUpdatedAction
  - '& operator=(const EntryUpdatedAction&)'
  - BT::EntryUpdatedAction::EntryUpdatedAction
  - '& operator=(EntryUpdatedAction&&)'
  - BT::EntryUpdatedAction::providedPorts
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/actions/updated_action.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::ScriptNode::ScriptNode
  - BT::ScriptNode::providedPorts
  - BT::ScriptNode::tick
  - BT::ScriptNode::loadExecutor
  - BT::ScriptNode::ScriptNode
  - BT::ScriptNode::providedPorts
  - BT::ScriptNode::tick
  - BT::ScriptNode::loadExecutor
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::ScriptCondition::ScriptCondition
  - BT::ScriptCondition::providedPorts
  - BT::ScriptCondition::tick
  - BT::ScriptCondition::loadExecutor
  - BT::ScriptCondition::ScriptCondition
  - BT::ScriptCondition::providedPorts
  - BT::ScriptCondition::tick
  - BT::ScriptCondition::loadExecutor
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/actions/script_condition.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::SetBlackboardNode::SetBlackboardNode
  - BT::SetBlackboardNode::providedPorts
  - BT::SetBlackboardNode::tick
  - BT::SetBlackboardNode::SetBlackboardNode
  - BT::SetBlackboardNode::providedPorts
  - BT::SetBlackboardNode::tick
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/actions/set_blackboard_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::AlwaysSuccessNode::AlwaysSuccessNode
  - BT::AlwaysSuccessNode::tick
  - BT::AlwaysSuccessNode::AlwaysSuccessNode
  - BT::AlwaysSuccessNode::tick
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/actions/always_success_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::PopFromQueue::PopFromQueue
  - BT::PopFromQueue::tick
  - BT::PopFromQueue::providedPorts
  - BT::QueueSize::QueueSize
  - BT::QueueSize::tick
  - BT::QueueSize::providedPorts
  - BT::PopFromQueue::PopFromQueue
  - BT::PopFromQueue::tick
  - BT::PopFromQueue::providedPorts
  - BT::QueueSize::QueueSize
  - BT::QueueSize::tick
  - BT::QueueSize::providedPorts
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: items
        type: std::list<T>
      - name: mtx
        type: std::mutex
      item_type: struct
      name: ProtectedQueue
      pos:
        line_end: 39
        line_start: 35
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp
    - fields:
      - name: items
        type: std::list<T>
      - name: mtx
        type: std::mutex
      item_type: struct
      name: ProtectedQueue
      pos:
        line_end: 39
        line_start: 35
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/actions/pop_from_queue.hpp
    typedefs: []
    union: []
- function_names:
  - BT::AlwaysFailureNode::AlwaysFailureNode
  - BT::AlwaysFailureNode::tick
  - BT::AlwaysFailureNode::AlwaysFailureNode
  - BT::AlwaysFailureNode::tick
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/actions/always_failure_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::UnsetBlackboardNode::UnsetBlackboardNode
  - BT::UnsetBlackboardNode::providedPorts
  - BT::UnsetBlackboardNode::tick
  - BT::UnsetBlackboardNode::UnsetBlackboardNode
  - BT::UnsetBlackboardNode::providedPorts
  - BT::UnsetBlackboardNode::tick
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/actions/unset_blackboard_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::TestNode::TestNode
  - '& operator=(const TestNode& other)'
  - BT::TestNode::TestNode
  - '& operator=(TestNode&& other)'
  - BT::TestNode::providedPorts
  - BT::TestNode::TestNode
  - '& operator=(const TestNode& other)'
  - BT::TestNode::TestNode
  - '& operator=(TestNode&& other)'
  - BT::TestNode::providedPorts
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/actions/test_node.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: return_status
        type: NodeStatus
      - name: success_script
        type: std::string
      - name: failure_script
        type: std::string
      - name: post_script
        type: std::string
      - name: async_delay
        type: std::chrono::milliseconds
      - name: complete_func
        type: std::function<NodeStatus(void)>
      - name: return_status_script
        type: std::string
      item_type: struct
      name: TestNodeConfig
      pos:
        line_end: 58
        line_start: 25
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/actions/test_node.h
    - fields:
      - name: return_status
        type: NodeStatus
      - name: success_script
        type: std::string
      - name: failure_script
        type: std::string
      - name: post_script
        type: std::string
      - name: async_delay
        type: std::chrono::milliseconds
      - name: complete_func
        type: std::function<NodeStatus(void)>
      - name: return_status_script
        type: std::string
      item_type: struct
      name: TestNodeConfig
      pos:
        line_end: 58
        line_start: 25
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/actions/test_node.h
    typedefs: []
    union: []
- function_names:
  - ~SleepNode() override
  - BT::SleepNode::SleepNode
  - '& operator=(const SleepNode&)'
  - BT::SleepNode::SleepNode
  - '& operator=(SleepNode&&)'
  - BT::SleepNode::providedPorts
  - ~SleepNode() override
  - BT::SleepNode::SleepNode
  - '& operator=(const SleepNode&)'
  - BT::SleepNode::SleepNode
  - '& operator=(SleepNode&&)'
  - BT::SleepNode::providedPorts
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/actions/sleep_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::convertToFlatbuffers
  - BT::convertToFlatbuffers
  - BT::convertToFlatbuffers
  - BT::CreateFlatbuffersBehaviorTree
  - BT::SerializeTransition
  - BT::convertToFlatbuffers
  - BT::convertToFlatbuffers
  - BT::convertToFlatbuffers
  - BT::CreateFlatbuffersBehaviorTree
  - BT::SerializeTransition
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/flatbuffers/bt_flatbuffer_helper.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::KeepRunningUntilFailureNode::KeepRunningUntilFailureNode
  - BT::KeepRunningUntilFailureNode::tick
  - BT::KeepRunningUntilFailureNode::KeepRunningUntilFailureNode
  - BT::KeepRunningUntilFailureNode::tick
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/decorators/keep_running_until_failure_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::ForceFailureNode::ForceFailureNode
  - BT::ForceFailureNode::tick
  - BT::ForceFailureNode::ForceFailureNode
  - BT::ForceFailureNode::tick
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_failure_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::ConsumeQueue::ConsumeQueue
  - BT::ConsumeQueue::tick
  - BT::ConsumeQueue::providedPorts
  - BT::ConsumeQueue::ConsumeQueue
  - BT::ConsumeQueue::tick
  - BT::ConsumeQueue::providedPorts
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/decorators/consume_queue.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::PreconditionNode::PreconditionNode
  - ~PreconditionNode() override
  - BT::PreconditionNode::PreconditionNode
  - '& operator=(const PreconditionNode&)'
  - BT::PreconditionNode::PreconditionNode
  - '& operator=(PreconditionNode&&)'
  - BT::PreconditionNode::providedPorts
  - BT::PreconditionNode::tick
  - BT::PreconditionNode::loadExecutor
  - BT::PreconditionNode::PreconditionNode
  - ~PreconditionNode() override
  - BT::PreconditionNode::PreconditionNode
  - '& operator=(const PreconditionNode&)'
  - BT::PreconditionNode::PreconditionNode
  - '& operator=(PreconditionNode&&)'
  - BT::PreconditionNode::providedPorts
  - BT::PreconditionNode::tick
  - BT::PreconditionNode::loadExecutor
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/decorators/script_precondition.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::TimeoutNode::TimeoutNode
  - BT::TimeoutNode::TimeoutNode
  - ~TimeoutNode() override
  - BT::TimeoutNode::TimeoutNode
  - '& operator=(const TimeoutNode&)'
  - BT::TimeoutNode::TimeoutNode
  - '& operator=(TimeoutNode&&)'
  - BT::TimeoutNode::providedPorts
  - BT::TimeoutNode::TimeoutNode
  - BT::TimeoutNode::TimeoutNode
  - ~TimeoutNode() override
  - BT::TimeoutNode::TimeoutNode
  - '& operator=(const TimeoutNode&)'
  - BT::TimeoutNode::TimeoutNode
  - '& operator=(TimeoutNode&&)'
  - BT::TimeoutNode::providedPorts
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/decorators/timeout_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::ForceSuccessNode::ForceSuccessNode
  - BT::ForceSuccessNode::tick
  - BT::ForceSuccessNode::ForceSuccessNode
  - BT::ForceSuccessNode::tick
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/decorators/force_success_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~SubTreeNode() override
  - BT::SubTreeNode::SubTreeNode
  - '& operator=(const SubTreeNode&)'
  - BT::SubTreeNode::SubTreeNode
  - '& operator=(SubTreeNode&&)'
  - BT::SubTreeNode::setSubtreeID
  - '& subtreeID() const'
  - BT::SubTreeNode::type
  - ~SubTreeNode() override
  - BT::SubTreeNode::SubTreeNode
  - '& operator=(const SubTreeNode&)'
  - BT::SubTreeNode::SubTreeNode
  - '& operator=(SubTreeNode&&)'
  - BT::SubTreeNode::setSubtreeID
  - '& subtreeID() const'
  - BT::SubTreeNode::type
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/decorators/subtree_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::RunOnceNode::RunOnceNode
  - BT::RunOnceNode::providedPorts
  - BT::RunOnceNode::tick
  - BT::RunOnceNode::RunOnceNode
  - BT::RunOnceNode::providedPorts
  - BT::RunOnceNode::tick
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/decorators/run_once_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~RepeatNode() override
  - BT::RepeatNode::RepeatNode
  - '& operator=(const RepeatNode&)'
  - BT::RepeatNode::RepeatNode
  - '& operator=(RepeatNode&&)'
  - BT::RepeatNode::providedPorts
  - ~RepeatNode() override
  - BT::RepeatNode::RepeatNode
  - '& operator=(const RepeatNode&)'
  - BT::RepeatNode::RepeatNode
  - '& operator=(RepeatNode&&)'
  - BT::RepeatNode::providedPorts
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/decorators/repeat_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~DelayNode() override
  - BT::DelayNode::DelayNode
  - '& operator=(const DelayNode&)'
  - BT::DelayNode::DelayNode
  - '& operator=(DelayNode&&)'
  - BT::DelayNode::providedPorts
  - ~DelayNode() override
  - BT::DelayNode::DelayNode
  - '& operator=(const DelayNode&)'
  - BT::DelayNode::DelayNode
  - '& operator=(DelayNode&&)'
  - BT::DelayNode::providedPorts
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/decorators/delay_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~InverterNode() override
  - BT::InverterNode::InverterNode
  - '& operator=(const InverterNode&)'
  - BT::InverterNode::InverterNode
  - '& operator=(InverterNode&&)'
  - ~InverterNode() override
  - BT::InverterNode::InverterNode
  - '& operator=(const InverterNode&)'
  - BT::InverterNode::InverterNode
  - '& operator=(InverterNode&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/decorators/inverter_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~EntryUpdatedDecorator() override
  - BT::EntryUpdatedDecorator::EntryUpdatedDecorator
  - '& operator=(const EntryUpdatedDecorator&)'
  - BT::EntryUpdatedDecorator::EntryUpdatedDecorator
  - '& operator=(EntryUpdatedDecorator&&)'
  - BT::EntryUpdatedDecorator::providedPorts
  - ~EntryUpdatedDecorator() override
  - BT::EntryUpdatedDecorator::EntryUpdatedDecorator
  - '& operator=(const EntryUpdatedDecorator&)'
  - BT::EntryUpdatedDecorator::EntryUpdatedDecorator
  - '& operator=(EntryUpdatedDecorator&&)'
  - BT::EntryUpdatedDecorator::providedPorts
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/decorators/updated_decorator.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::LoopNode::LoopNode
  - BT::LoopNode::tick
  - BT::LoopNode::providedPorts
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::LoopNode::LoopNode
  - BT::LoopNode::tick
  - BT::LoopNode::providedPorts
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  - BT::convertFromString
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/decorators/loop_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~RetryNode() override
  - BT::RetryNode::RetryNode
  - '& operator=(const RetryNode&)'
  - BT::RetryNode::RetryNode
  - '& operator=(RetryNode&&)'
  - BT::RetryNode::providedPorts
  - BT::RetryNodeTypo::RetryNodeTypo
  - BT::RetryNodeTypo::RetryNodeTypo
  - ~RetryNodeTypo() override
  - BT::RetryNodeTypo::RetryNodeTypo
  - '& operator=(const RetryNodeTypo&)'
  - BT::RetryNodeTypo::RetryNodeTypo
  - '& operator=(RetryNodeTypo&&)'
  - ~RetryNode() override
  - BT::RetryNode::RetryNode
  - '& operator=(const RetryNode&)'
  - BT::RetryNode::RetryNode
  - '& operator=(RetryNode&&)'
  - BT::RetryNode::providedPorts
  - BT::RetryNodeTypo::RetryNodeTypo
  - BT::RetryNodeTypo::RetryNodeTypo
  - ~RetryNodeTypo() override
  - BT::RetryNodeTypo::RetryNodeTypo
  - '& operator=(const RetryNodeTypo&)'
  - BT::RetryNodeTypo::RetryNodeTypo
  - '& operator=(RetryNodeTypo&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/decorators/retry_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/any_types.hpp
  types:
    enum:
    - enumerators:
      - name: Integer
      - name: Boolean
      - name: AmpAmp
      - name: EqualEqual
      - name: Greater
      - name: StarEqual
      - name: Colon
      - name: Semicolon
      - name: Identifier
      - name: Minus
      - name: Slash
      - name: Pipe
      - name: LessEqual
      - name: Equal
      - name: SlashEqual
      - name: LeftParen
      - name: EndOfInput
      - name: Real
      - name: Star
      - name: DotDot
      - name: PipePipe
      - name: BangEqual
      - name: Caret
      - name: GreaterEqual
      - name: PlusEqual
      - name: Question
      - name: Error
      - name: String
      - name: Plus
      - name: Bang
      - name: Ampersand
      - name: Tilde
      - name: Less
      - name: ColonEqual
      - name: MinusEqual
      - name: RightParen
      item_type: enum
      name: TokenType
      pos:
        line_end: 72
        line_start: 24
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/any_types.hpp
    - enumerators:
      - name: Integer
      - name: Boolean
      - name: AmpAmp
      - name: EqualEqual
      - name: Greater
      - name: StarEqual
      - name: Colon
      - name: Semicolon
      - name: Identifier
      - name: Minus
      - name: Slash
      - name: Pipe
      - name: LessEqual
      - name: Equal
      - name: SlashEqual
      - name: LeftParen
      - name: EndOfInput
      - name: Real
      - name: Star
      - name: DotDot
      - name: PipePipe
      - name: BangEqual
      - name: Caret
      - name: GreaterEqual
      - name: PlusEqual
      - name: Question
      - name: Error
      - name: String
      - name: Plus
      - name: Bang
      - name: Ampersand
      - name: Tilde
      - name: Less
      - name: ColonEqual
      - name: MinusEqual
      - name: RightParen
      item_type: enum
      name: TokenType
      pos:
        line_end: 72
        line_start: 24
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/any_types.hpp
    preproc_defs: []
    structs:
    - fields:
      - name: type
        type: TokenType
      - name: text
        type: std::string_view
      - name: pos
        type: size_t
      item_type: struct
      name: Token
      pos:
        line_end: 81
        line_start: 76
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/any_types.hpp
    - fields:
      - name: type
        type: TokenType
      - name: text
        type: std::string_view
      - name: pos
        type: size_t
      item_type: struct
      name: Token
      pos:
        line_end: 81
        line_start: 76
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/any_types.hpp
    typedefs: []
    union: []
- function_names: []
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/script_parser.hpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: vars
        type: BT::Blackboard::Ptr
      - name: enums
        type: EnumsTablePtr
      item_type: struct
      name: Environment
      pos:
        line_end: 34
        line_start: 30
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/script_parser.hpp
    - fields:
      - name: vars
        type: BT::Blackboard::Ptr
      - name: enums
        type: EnumsTablePtr
      item_type: struct
      name: Environment
      pos:
        line_end: 34
        line_start: 30
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/script_parser.hpp
    - fields:
      - name: vars
        type: BT::Blackboard::Ptr
      - name: enums
        type: EnumsTablePtr
      item_type: struct
      name: Environment
      pos:
        line_end: 34
        line_start: 30
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/script_parser.hpp
    - fields:
      - name: vars
        type: BT::Blackboard::Ptr
      - name: enums
        type: EnumsTablePtr
      item_type: struct
      name: Environment
      pos:
        line_end: 34
        line_start: 30
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/script_parser.hpp
    typedefs: []
    union: []
- function_names:
  - BT::Ast::StringToDouble
  - ~ExprBase()
  - BT::Ast::ErrorNotInit
  - BT::Ast::ExprLiteral
  - BT::Ast::evaluate
  - BT::Ast::ExprName
  - BT::Ast::evaluate
  - BT::Ast::ExprUnaryArithmetic
  - BT::Ast::evaluate
  - BT::Ast::opStr
  - BT::Ast::ExprBinaryArithmetic
  - BT::Ast::evaluate
  - BT::Ast::IsSame
  - BT::Ast::opStr
  - BT::Ast::evaluate
  - BT::Ast::ExprIf
  - BT::Ast::evaluate
  - BT::Ast::opStr
  - BT::Ast::ExprAssignment
  - BT::Ast::evaluate
  - BT::Ast::StringToDouble
  - ~ExprBase()
  - BT::Ast::ErrorNotInit
  - BT::Ast::ExprLiteral
  - BT::Ast::evaluate
  - BT::Ast::ExprName
  - BT::Ast::evaluate
  - BT::Ast::ExprUnaryArithmetic
  - BT::Ast::evaluate
  - BT::Ast::opStr
  - BT::Ast::ExprBinaryArithmetic
  - BT::Ast::evaluate
  - BT::Ast::IsSame
  - BT::Ast::opStr
  - BT::Ast::evaluate
  - BT::Ast::ExprIf
  - BT::Ast::evaluate
  - BT::Ast::opStr
  - BT::Ast::ExprAssignment
  - BT::Ast::evaluate
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
  types:
    enum:
    - enumerators:
      - name: negate
      - name: complement
      - name: logical_not
      item_type: enum
      name: op_t
      pos:
        line_end: 114
        line_start: 109
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - enumerators:
      - name: plus
      - name: minus
      - name: times
      - name: concat
      - name: div
      - name: bit_and
      - name: bit_or
      - name: bit_xor
      - name: logic_and
      - name: logic_or
      item_type: enum
      name: op_t
      pos:
        line_end: 165
        line_start: 151
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - enumerators:
      - name: equal
      - name: less
      - name: greater
      - name: not_equal
      - name: less_equal
      - name: greater_equal
      item_type: enum
      name: op_t
      pos:
        line_end: 325
        line_start: 317
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - enumerators:
      - name: assign_create
      - name: assign_existing
      - name: assign_plus
      - name: assign_times
      - name: assign_minus
      - name: assign_div
      item_type: enum
      name: op_t
      pos:
        line_end: 481
        line_start: 473
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - enumerators:
      - name: negate
      - name: complement
      - name: logical_not
      item_type: enum
      name: op_t
      pos:
        line_end: 114
        line_start: 109
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - enumerators:
      - name: plus
      - name: minus
      - name: times
      - name: concat
      - name: div
      - name: bit_and
      - name: bit_or
      - name: bit_xor
      - name: logic_and
      - name: logic_or
      item_type: enum
      name: op_t
      pos:
        line_end: 165
        line_start: 151
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - enumerators:
      - name: equal
      - name: less
      - name: greater
      - name: not_equal
      - name: less_equal
      - name: greater_equal
      item_type: enum
      name: op_t
      pos:
        line_end: 325
        line_start: 317
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - enumerators:
      - name: assign_create
      - name: assign_existing
      - name: assign_plus
      - name: assign_times
      - name: assign_minus
      - name: assign_div
      item_type: enum
      name: op_t
      pos:
        line_end: 481
        line_start: 473
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    preproc_defs: []
    structs:
    - fields:
      - name: evaluate(Environment& env) const
        type: Any
      item_type: struct
      name: ExprBase
      pos:
        line_end: 58
        line_start: 52
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - fields:
      - name: value
        type: Any
      item_type: struct
      name: ExprLiteral
      pos:
        line_end: 77
        line_start: 66
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - fields:
      - name: name
        type: std::string
      item_type: struct
      name: ExprName
      pos:
        line_end: 105
        line_start: 79
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - fields:
      - name: op
        type: "enum op_t\n  {\n    negate,\n    complement,\n    logical_not\n  }"
      - name: rhs
        type: expr_ptr
      item_type: struct
      name: ExprUnaryArithmetic
      pos:
        line_end: 147
        line_start: 107
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - fields:
      - name: op
        type: "enum op_t\n  {\n    plus,\n    minus,\n    times,\n    div,\n    concat,\n\n
          \   bit_and,\n    bit_or,\n    bit_xor,\n\n    logic_and,\n    logic_or\n
          \ }"
      - name: lhs
        type: expr_ptr
      item_type: struct
      name: ExprBinaryArithmetic
      pos:
        line_end: 299
        line_start: 149
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - fields:
      - name: ops
        type: std::vector<op_t>
      - name: operands
        type: std::vector<expr_ptr>
      item_type: struct
      name: ExprComparison
      pos:
        line_end: 445
        line_start: 315
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - fields:
      - name: condition
        type: expr_ptr
      item_type: struct
      name: ExprIf
      pos:
        line_end: 469
        line_start: 447
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - fields:
      - name: op
        type: "enum op_t\n  {\n    assign_create,\n    assign_existing,\n    assign_plus,\n
          \   assign_minus,\n    assign_times,\n    assign_div\n  }"
      - name: lhs
        type: expr_ptr
      item_type: struct
      name: ExprAssignment
      pos:
        line_end: 664
        line_start: 471
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - fields:
      - name: evaluate(Environment& env) const
        type: Any
      item_type: struct
      name: ExprBase
      pos:
        line_end: 58
        line_start: 52
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - fields:
      - name: value
        type: Any
      item_type: struct
      name: ExprLiteral
      pos:
        line_end: 77
        line_start: 66
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - fields:
      - name: name
        type: std::string
      item_type: struct
      name: ExprName
      pos:
        line_end: 105
        line_start: 79
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - fields:
      - name: op
        type: "enum op_t\n  {\n    negate,\n    complement,\n    logical_not\n  }"
      - name: rhs
        type: expr_ptr
      item_type: struct
      name: ExprUnaryArithmetic
      pos:
        line_end: 147
        line_start: 107
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - fields:
      - name: op
        type: "enum op_t\n  {\n    plus,\n    minus,\n    times,\n    div,\n    concat,\n\n
          \   bit_and,\n    bit_or,\n    bit_xor,\n\n    logic_and,\n    logic_or\n
          \ }"
      - name: lhs
        type: expr_ptr
      item_type: struct
      name: ExprBinaryArithmetic
      pos:
        line_end: 299
        line_start: 149
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - fields:
      - name: ops
        type: std::vector<op_t>
      - name: operands
        type: std::vector<expr_ptr>
      item_type: struct
      name: ExprComparison
      pos:
        line_end: 445
        line_start: 315
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - fields:
      - name: condition
        type: expr_ptr
      item_type: struct
      name: ExprIf
      pos:
        line_end: 469
        line_start: 447
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    - fields:
      - name: op
        type: "enum op_t\n  {\n    assign_create,\n    assign_existing,\n    assign_plus,\n
          \   assign_minus,\n    assign_times,\n    assign_div\n  }"
      - name: lhs
        type: expr_ptr
      item_type: struct
      name: ExprAssignment
      pos:
        line_end: 664
        line_start: 471
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/scripting/operators.hpp
    typedefs: []
    union: []
- function_names:
  - BT::ReactiveSequence::ReactiveSequence
  - BT::ReactiveSequence::ReactiveSequence
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/controls/reactive_sequence.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~FallbackNode() override
  - BT::FallbackNode::FallbackNode
  - '& operator=(const FallbackNode&)'
  - BT::FallbackNode::FallbackNode
  - '& operator=(FallbackNode&&)'
  - ~FallbackNode() override
  - BT::FallbackNode::FallbackNode
  - '& operator=(const FallbackNode&)'
  - BT::FallbackNode::FallbackNode
  - '& operator=(FallbackNode&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/controls/fallback_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~WhileDoElseNode() override
  - BT::WhileDoElseNode::WhileDoElseNode
  - '& operator=(const WhileDoElseNode&)'
  - BT::WhileDoElseNode::WhileDoElseNode
  - '& operator=(WhileDoElseNode&&)'
  - ~WhileDoElseNode() override
  - BT::WhileDoElseNode::WhileDoElseNode
  - '& operator=(const WhileDoElseNode&)'
  - BT::WhileDoElseNode::WhileDoElseNode
  - '& operator=(WhileDoElseNode&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/controls/while_do_else_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::ParallelAllNode::providedPorts
  - ~ParallelAllNode() override
  - BT::ParallelAllNode::ParallelAllNode
  - '& operator=(const ParallelAllNode&)'
  - BT::ParallelAllNode::ParallelAllNode
  - '& operator=(ParallelAllNode&&)'
  - BT::ParallelAllNode::providedPorts
  - ~ParallelAllNode() override
  - BT::ParallelAllNode::ParallelAllNode
  - '& operator=(const ParallelAllNode&)'
  - BT::ParallelAllNode::ParallelAllNode
  - '& operator=(ParallelAllNode&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_all_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~SequenceNode() override
  - BT::SequenceNode::SequenceNode
  - '& operator=(const SequenceNode&)'
  - BT::SequenceNode::SequenceNode
  - '& operator=(SequenceNode&&)'
  - ~SequenceNode() override
  - BT::SequenceNode::SequenceNode
  - '& operator=(const SequenceNode&)'
  - BT::SequenceNode::SequenceNode
  - '& operator=(SequenceNode&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~TryCatchNode() override
  - BT::TryCatchNode::TryCatchNode
  - '& operator=(const TryCatchNode&)'
  - BT::TryCatchNode::TryCatchNode
  - '& operator=(TryCatchNode&&)'
  - BT::TryCatchNode::providedPorts
  - ~TryCatchNode() override
  - BT::TryCatchNode::TryCatchNode
  - '& operator=(const TryCatchNode&)'
  - BT::TryCatchNode::TryCatchNode
  - '& operator=(TryCatchNode&&)'
  - BT::TryCatchNode::providedPorts
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/controls/try_catch_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~ManualSelectorNode() override
  - BT::ManualSelectorNode::ManualSelectorNode
  - '& operator=(const ManualSelectorNode&)'
  - BT::ManualSelectorNode::ManualSelectorNode
  - '& operator=(ManualSelectorNode&&)'
  - BT::ManualSelectorNode::providedPorts
  - ~ManualSelectorNode() override
  - BT::ManualSelectorNode::ManualSelectorNode
  - '& operator=(const ManualSelectorNode&)'
  - BT::ManualSelectorNode::ManualSelectorNode
  - '& operator=(ManualSelectorNode&&)'
  - BT::ManualSelectorNode::providedPorts
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h
  types:
    enum:
    - enumerators:
      - name: NUM_SUCCESS
        value: '253'
      - name: NUM_FAILURE
        value: '254'
      - name: NUM_RUNNING
        value: '255'
      item_type: enum
      name: NumericalStatus
      pos:
        line_end: 56
        line_start: 51
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h
    - enumerators:
      - name: NUM_SUCCESS
        value: '253'
      - name: NUM_FAILURE
        value: '254'
      - name: NUM_RUNNING
        value: '255'
      item_type: enum
      name: NumericalStatus
      pos:
        line_end: 56
        line_start: 51
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/controls/manual_node.h
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::ReactiveFallback::ReactiveFallback
  - BT::ReactiveFallback::ReactiveFallback
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/controls/reactive_fallback.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~SequenceWithMemory() override
  - BT::SequenceWithMemory::SequenceWithMemory
  - '& operator=(const SequenceWithMemory&)'
  - BT::SequenceWithMemory::SequenceWithMemory
  - '& operator=(SequenceWithMemory&&)'
  - ~SequenceWithMemory() override
  - BT::SequenceWithMemory::SequenceWithMemory
  - '& operator=(const SequenceWithMemory&)'
  - BT::SequenceWithMemory::SequenceWithMemory
  - '& operator=(SequenceWithMemory&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/controls/sequence_with_memory_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~SwitchNode() override
  - BT::SwitchNode::SwitchNode
  - '& operator=(const SwitchNode&)'
  - BT::SwitchNode::SwitchNode
  - '& operator=(SwitchNode&&)'
  - BT::SwitchNode<NUM_CASES>::SwitchNode
  - BT::SwitchNode<NUM_CASES>::halt
  - BT::SwitchNode<NUM_CASES>::providedPorts
  - BT::SwitchNode<NUM_CASES>::tick
  - ~SwitchNode() override
  - BT::SwitchNode::SwitchNode
  - '& operator=(const SwitchNode&)'
  - BT::SwitchNode::SwitchNode
  - '& operator=(SwitchNode&&)'
  - BT::SwitchNode<NUM_CASES>::SwitchNode
  - BT::SwitchNode<NUM_CASES>::halt
  - BT::SwitchNode<NUM_CASES>::providedPorts
  - BT::SwitchNode<NUM_CASES>::tick
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/controls/switch_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::ParallelNode::providedPorts
  - ~ParallelNode() override
  - BT::ParallelNode::ParallelNode
  - '& operator=(const ParallelNode&)'
  - BT::ParallelNode::ParallelNode
  - '& operator=(ParallelNode&&)'
  - BT::ParallelNode::providedPorts
  - ~ParallelNode() override
  - BT::ParallelNode::ParallelNode
  - '& operator=(const ParallelNode&)'
  - BT::ParallelNode::ParallelNode
  - '& operator=(ParallelNode&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/controls/parallel_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ~IfThenElseNode() override
  - BT::IfThenElseNode::IfThenElseNode
  - '& operator=(const IfThenElseNode&)'
  - BT::IfThenElseNode::IfThenElseNode
  - '& operator=(IfThenElseNode&&)'
  - ~IfThenElseNode() override
  - BT::IfThenElseNode::IfThenElseNode
  - '& operator=(const IfThenElseNode&)'
  - BT::IfThenElseNode::IfThenElseNode
  - '& operator=(IfThenElseNode&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/controls/if_then_else_node.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::SqliteLogger::SqliteLogger
  - '& operator=(const SqliteLogger&)'
  - BT::SqliteLogger::SqliteLogger
  - '& operator=(SqliteLogger&&)'
  - BT::SqliteLogger::SqliteLogger
  - '& operator=(const SqliteLogger&)'
  - BT::SqliteLogger::SqliteLogger
  - '& operator=(SqliteLogger&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_sqlite_logger.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: node_uid
        type: uint16_t
      - name: timestamp
        type: int64_t
      - name: duration
        type: int64_t
      - name: status
        type: NodeStatus
      - name: extra_data
        type: std::string
      item_type: struct
      name: Transition
      pos:
        line_end: 94
        line_start: 87
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_sqlite_logger.h
    - fields:
      - name: node_uid
        type: uint16_t
      - name: timestamp
        type: int64_t
      - name: duration
        type: int64_t
      - name: status
        type: NodeStatus
      - name: extra_data
        type: std::string
      item_type: struct
      name: Transition
      pos:
        line_end: 94
        line_start: 87
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_sqlite_logger.h
    typedefs: []
    union: []
- function_names:
  - BT::Groot2Publisher::Groot2Publisher
  - '& operator=(const Groot2Publisher& other)'
  - BT::Groot2Publisher::Groot2Publisher
  - '& operator=(Groot2Publisher&& other)'
  - BT::Groot2Publisher::Groot2Publisher
  - '& operator=(const Groot2Publisher& other)'
  - BT::Groot2Publisher::Groot2Publisher
  - '& operator=(Groot2Publisher&& other)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_publisher.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::StatusChangeLogger::StatusChangeLogger
  - '& operator=(const StatusChangeLogger& other)'
  - BT::StatusChangeLogger::StatusChangeLogger
  - '& operator=(StatusChangeLogger&& other)'
  - BT::StatusChangeLogger::StatusChangeLogger
  - '& operator=(const StatusChangeLogger& other)'
  - BT::StatusChangeLogger::StatusChangeLogger
  - '& operator=(StatusChangeLogger&& other)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/abstract_logger.h
  types:
    enum:
    - enumerators:
      - name: absolute
      - name: relative
      item_type: enum
      name: TimestampType
      pos:
        line_end: 14
        line_start: 10
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/abstract_logger.h
    - enumerators:
      - name: absolute
      - name: relative
      item_type: enum
      name: TimestampType
      pos:
        line_end: 14
        line_start: 10
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/abstract_logger.h
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::TreeObserver::TreeObserver
  - '& operator=(const TreeObserver&)'
  - BT::TreeObserver::TreeObserver
  - '& operator=(TreeObserver&&)'
  - BT::TreeObserver::flush
  - BT::TreeObserver::TreeObserver
  - '& operator=(const TreeObserver&)'
  - BT::TreeObserver::TreeObserver
  - '& operator=(TreeObserver&&)'
  - BT::TreeObserver::flush
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_observer.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: last_result
        type: NodeStatus
      - name: current_status
        type: NodeStatus
      - name: transitions_count
        type: unsigned
      - name: success_count
        type: unsigned
      - name: failure_count
        type: unsigned
      - name: skip_count
        type: unsigned
      - name: last_timestamp
        type: Duration
      item_type: struct
      name: NodeStatistics
      pos:
        line_end: 50
        line_start: 33
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_observer.h
    - fields:
      - name: last_result
        type: NodeStatus
      - name: current_status
        type: NodeStatus
      - name: transitions_count
        type: unsigned
      - name: success_count
        type: unsigned
      - name: failure_count
        type: unsigned
      - name: skip_count
        type: unsigned
      - name: last_timestamp
        type: Duration
      item_type: struct
      name: NodeStatistics
      pos:
        line_end: 50
        line_start: 33
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_observer.h
    typedefs: []
    union: []
- function_names:
  - BT::Monitor::ToString
  - BT::Monitor::size
  - BT::Monitor::RequestHeader
  - BT::Monitor::RequestHeader
  - operator==(const RequestHeader& other) const
  - operator!=(const RequestHeader& other) const
  - BT::Monitor::size
  - BT::Monitor::Serialize
  - BT::Monitor::Deserialize
  - BT::Monitor::SerializeHeader
  - BT::Monitor::SerializeHeader
  - BT::Monitor::DeserializeRequestHeader
  - BT::Monitor::DeserializeReplyHeader
  - BT::Monitor::to_json
  - BT::Monitor::from_json
  - BT::Monitor::ToString
  - BT::Monitor::size
  - BT::Monitor::RequestHeader
  - BT::Monitor::RequestHeader
  - operator==(const RequestHeader& other) const
  - operator!=(const RequestHeader& other) const
  - BT::Monitor::size
  - BT::Monitor::Serialize
  - BT::Monitor::Deserialize
  - BT::Monitor::SerializeHeader
  - BT::Monitor::SerializeHeader
  - BT::Monitor::DeserializeRequestHeader
  - BT::Monitor::DeserializeReplyHeader
  - BT::Monitor::to_json
  - BT::Monitor::from_json
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
  types:
    enum:
    - enumerators:
      - name: FULLTREE
        value: '''T'''
      - name: HOOK_REMOVE
        value: '''R'''
      - name: STATUS
        value: '''S'''
      - name: BLACKBOARD
        value: '''B'''
      - name: HOOK_INSERT
        value: '''I'''
      - name: BREAKPOINT_REACHED
        value: '''N'''
      - name: BREAKPOINT_UNLOCK
        value: '''U'''
      - name: HOOKS_DUMP
        value: '''D'''
      - name: REMOVE_ALL_HOOKS
        value: '''A'''
      - name: DISABLE_ALL_HOOKS
        value: '''X'''
      - name: UNDEFINED
        value: '0'
      - name: GET_TRANSITIONS
        value: '''t'''
      - name: TOGGLE_RECORDING
        value: '''r'''
      item_type: enum
      name: RequestType
      pos:
        line_end: 59
        line_start: 28
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    - enumerators:
      - name: PRE
        value: '0'
      - name: POST
        value: '1'
      item_type: enum
      name: Position
      pos:
        line_end: 211
        line_start: 207
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    - enumerators:
      - name: BREAKPOINT
        value: '0'
      - name: REPLACE
        value: '1'
      item_type: enum
      name: Mode
      pos:
        line_end: 221
        line_start: 217
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    - enumerators:
      - name: FULLTREE
        value: '''T'''
      - name: HOOK_REMOVE
        value: '''R'''
      - name: STATUS
        value: '''S'''
      - name: BLACKBOARD
        value: '''B'''
      - name: HOOK_INSERT
        value: '''I'''
      - name: BREAKPOINT_REACHED
        value: '''N'''
      - name: BREAKPOINT_UNLOCK
        value: '''U'''
      - name: HOOKS_DUMP
        value: '''D'''
      - name: REMOVE_ALL_HOOKS
        value: '''A'''
      - name: DISABLE_ALL_HOOKS
        value: '''X'''
      - name: UNDEFINED
        value: '0'
      - name: GET_TRANSITIONS
        value: '''t'''
      - name: TOGGLE_RECORDING
        value: '''r'''
      item_type: enum
      name: RequestType
      pos:
        line_end: 59
        line_start: 28
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    - enumerators:
      - name: PRE
        value: '0'
      - name: POST
        value: '1'
      item_type: enum
      name: Position
      pos:
        line_end: 211
        line_start: 207
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    - enumerators:
      - name: BREAKPOINT
        value: '0'
      - name: REPLACE
        value: '1'
      item_type: enum
      name: Mode
      pos:
        line_end: 221
        line_start: 217
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    preproc_defs: []
    structs:
    - fields:
      - name: unique_id
        type: uint32_t
      - name: protocol
        type: uint8_t
      - name: type
        type: RequestType
      item_type: struct
      name: RequestHeader
      pos:
        line_end: 130
        line_start: 100
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    - fields:
      - name: request
        type: RequestHeader
      - name: tree_id
        type: TreeUniqueUUID
      item_type: struct
      name: ReplyHeader
      pos:
        line_end: 141
        line_start: 132
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    - fields:
      - name: enabled
        type: bool
      - name: position
        type: Position
      - name: node_uid
        type: uint16_t
      - name: mode
        type: Mode
      - name: wakeup
        type: std::condition_variable
      - name: mutex
        type: std::mutex
      - name: ready
        type: bool
      - name: remove_when_done
        type: bool
      - name: desired_status
        type: NodeStatus
      item_type: struct
      name: Hook
      pos:
        line_end: 239
        line_start: 200
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    - fields:
      - name: unique_id
        type: uint32_t
      - name: protocol
        type: uint8_t
      - name: type
        type: RequestType
      item_type: struct
      name: RequestHeader
      pos:
        line_end: 130
        line_start: 100
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    - fields:
      - name: request
        type: RequestHeader
      - name: tree_id
        type: TreeUniqueUUID
      item_type: struct
      name: ReplyHeader
      pos:
        line_end: 141
        line_start: 132
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    - fields:
      - name: enabled
        type: bool
      - name: position
        type: Position
      - name: node_uid
        type: uint16_t
      - name: mode
        type: Mode
      - name: wakeup
        type: std::condition_variable
      - name: mutex
        type: std::mutex
      - name: ready
        type: bool
      - name: remove_when_done
        type: bool
      - name: desired_status
        type: NodeStatus
      item_type: struct
      name: Hook
      pos:
        line_end: 239
        line_start: 200
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/groot2_protocol.h
    typedefs: []
    union: []
- function_names:
  - BT::MinitraceLogger::MinitraceLogger
  - '& operator=(const MinitraceLogger&)'
  - BT::MinitraceLogger::MinitraceLogger
  - '& operator=(MinitraceLogger&&)'
  - BT::MinitraceLogger::MinitraceLogger
  - '& operator=(const MinitraceLogger&)'
  - BT::MinitraceLogger::MinitraceLogger
  - '& operator=(MinitraceLogger&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_minitrace_logger.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::StdCoutLogger::StdCoutLogger
  - '& operator=(const StdCoutLogger&)'
  - BT::StdCoutLogger::StdCoutLogger
  - '& operator=(StdCoutLogger&&)'
  - BT::StdCoutLogger::StdCoutLogger
  - '& operator=(const StdCoutLogger&)'
  - BT::StdCoutLogger::StdCoutLogger
  - '& operator=(StdCoutLogger&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_cout_logger.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::FileLogger2::FileLogger2
  - '& operator=(const FileLogger2& other)'
  - BT::FileLogger2::FileLogger2
  - '& operator=(FileLogger2&& other)'
  - BT::FileLogger2::FileLogger2
  - '& operator=(const FileLogger2& other)'
  - BT::FileLogger2::FileLogger2
  - '& operator=(FileLogger2&& other)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_file_logger_v2.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: timestamp_usec
        type: uint64_t
      - name: node_uid
        type: uint16_t
      - name: status
        type: uint8_t
      item_type: struct
      name: Transition
      pos:
        line_end: 54
        line_start: 45
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_file_logger_v2.h
    - fields:
      - name: timestamp_usec
        type: uint64_t
      - name: node_uid
        type: uint16_t
      - name: status
        type: uint8_t
      item_type: struct
      name: Transition
      pos:
        line_end: 54
        line_start: 45
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/loggers/bt_file_logger_v2.h
    typedefs: []
    union: []
- function_names:
  - SafeAny::details::is_integer
  - SafeAny::details::is_convertible_type
  - SafeAny::details::is_convertible_to_bool
  - SafeAny::details::is_signed
  - SafeAny::details::is_same
  - SafeAny::details::checkUpperLimit
  - SafeAny::details::checkLowerLimit
  - SafeAny::details::checkTruncation
  - SafeAny::details::convertNumber
  - SafeAny::details::is_integer
  - SafeAny::details::is_convertible_type
  - SafeAny::details::is_convertible_to_bool
  - SafeAny::details::is_signed
  - SafeAny::details::is_same
  - SafeAny::details::checkUpperLimit
  - SafeAny::details::checkLowerLimit
  - SafeAny::details::checkTruncation
  - SafeAny::details::convertNumber
  - SafeAny::details::is_integer
  - SafeAny::details::is_convertible_type
  - SafeAny::details::is_convertible_to_bool
  - SafeAny::details::is_signed
  - SafeAny::details::is_same
  - SafeAny::details::checkUpperLimit
  - SafeAny::details::checkLowerLimit
  - SafeAny::details::checkTruncation
  - SafeAny::details::convertNumber
  - SafeAny::details::is_integer
  - SafeAny::details::is_convertible_type
  - SafeAny::details::is_convertible_to_bool
  - SafeAny::details::is_signed
  - SafeAny::details::is_same
  - SafeAny::details::checkUpperLimit
  - SafeAny::details::checkLowerLimit
  - SafeAny::details::checkTruncation
  - SafeAny::details::convertNumber
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/convert_impl.hpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names: []
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: BT_OS_FREE_BSD
      pos:
        line_end: 47
        line_start: 46
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x0001'
    - item_type: preproc_def
      name: BT_OS_AIX
      pos:
        line_end: 48
        line_start: 47
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x0002'
    - item_type: preproc_def
      name: BT_OS_HPUX
      pos:
        line_end: 49
        line_start: 48
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x0003'
    - item_type: preproc_def
      name: BT_OS_TRU64
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x0004'
    - item_type: preproc_def
      name: BT_OS_LINUX
      pos:
        line_end: 51
        line_start: 50
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x0005'
    - item_type: preproc_def
      name: BT_OS_MAC_OS_X
      pos:
        line_end: 52
        line_start: 51
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x0006'
    - item_type: preproc_def
      name: BT_OS_NET_BSD
      pos:
        line_end: 53
        line_start: 52
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x0007'
    - item_type: preproc_def
      name: BT_OS_OPEN_BSD
      pos:
        line_end: 54
        line_start: 53
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x0008'
    - item_type: preproc_def
      name: BT_OS_IRIX
      pos:
        line_end: 55
        line_start: 54
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x0009'
    - item_type: preproc_def
      name: BT_OS_SOLARIS
      pos:
        line_end: 56
        line_start: 55
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x000a'
    - item_type: preproc_def
      name: BT_OS_QNX
      pos:
        line_end: 57
        line_start: 56
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x000b'
    - item_type: preproc_def
      name: BT_OS_VXWORKS
      pos:
        line_end: 58
        line_start: 57
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x000c'
    - item_type: preproc_def
      name: BT_OS_CYGWIN
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x000d'
    - item_type: preproc_def
      name: BT_OS_UNKNOWN_UNIX
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x00ff'
    - item_type: preproc_def
      name: BT_OS_WINDOWS_NT
      pos:
        line_end: 61
        line_start: 60
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x1001'
    - item_type: preproc_def
      name: BT_OS_WINDOWS_CE
      pos:
        line_end: 62
        line_start: 61
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x1011'
    - item_type: preproc_def
      name: BT_OS_VMS
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '0x2001'
    - item_type: preproc_def
      name: BT_OS_FAMILY_UNIX
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS_FAMILY_BSD
      pos:
        line_end: 67
        line_start: 66
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: BT_OS_FREE_BSD
    - item_type: preproc_def
      name: BT_OS_FAMILY_UNIX
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS
      pos:
        line_end: 71
        line_start: 70
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: BT_OS_AIX
    - item_type: preproc_def
      name: BT_OS_FAMILY_UNIX
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS
      pos:
        line_end: 74
        line_start: 73
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: BT_OS_HPUX
    - item_type: preproc_def
      name: BT_OS_FAMILY_UNIX
      pos:
        line_end: 76
        line_start: 75
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: BT_OS_TRU64
    - item_type: preproc_def
      name: BT_OS_FAMILY_UNIX
      pos:
        line_end: 79
        line_start: 78
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: BT_OS_LINUX
    - item_type: preproc_def
      name: BT_OS_FAMILY_UNIX
      pos:
        line_end: 82
        line_start: 81
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS_FAMILY_BSD
      pos:
        line_end: 83
        line_start: 82
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: BT_OS_MAC_OS_X
    - item_type: preproc_def
      name: BT_OS_FAMILY_UNIX
      pos:
        line_end: 86
        line_start: 85
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS_FAMILY_BSD
      pos:
        line_end: 87
        line_start: 86
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS
      pos:
        line_end: 88
        line_start: 87
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: BT_OS_NET_BSD
    - item_type: preproc_def
      name: BT_OS_FAMILY_UNIX
      pos:
        line_end: 90
        line_start: 89
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS_FAMILY_BSD
      pos:
        line_end: 91
        line_start: 90
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS
      pos:
        line_end: 92
        line_start: 91
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: BT_OS_OPEN_BSD
    - item_type: preproc_def
      name: BT_OS_FAMILY_UNIX
      pos:
        line_end: 94
        line_start: 93
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS
      pos:
        line_end: 95
        line_start: 94
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: BT_OS_IRIX
    - item_type: preproc_def
      name: BT_OS_FAMILY_UNIX
      pos:
        line_end: 97
        line_start: 96
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS
      pos:
        line_end: 98
        line_start: 97
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: BT_OS_SOLARIS
    - item_type: preproc_def
      name: BT_OS_FAMILY_UNIX
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS
      pos:
        line_end: 101
        line_start: 100
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: BT_OS_QNX
    - item_type: preproc_def
      name: BT_OS_FAMILY_UNIX
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS
      pos:
        line_end: 104
        line_start: 103
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: BT_OS_UNKNOWN_UNIX
    - item_type: preproc_def
      name: BT_OS_FAMILY_WINDOWS
      pos:
        line_end: 106
        line_start: 105
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: BT_OS_WINDOWS_CE
    - item_type: preproc_def
      name: BT_OS_FAMILY_WINDOWS
      pos:
        line_end: 109
        line_start: 108
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS
      pos:
        line_end: 110
        line_start: 109
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: BT_OS_WINDOWS_NT
    - item_type: preproc_def
      name: BT_OS_FAMILY_UNIX
      pos:
        line_end: 112
        line_start: 111
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS
      pos:
        line_end: 113
        line_start: 112
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: BT_OS_CYGWIN
    - item_type: preproc_def
      name: BT_OS_FAMILY_VMS
      pos:
        line_end: 115
        line_start: 114
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: BT_OS
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/platform.hpp
      type_or_value: BT_OS_VMS
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::details::CallbackGate::Guard::Guard
  - BT::details::CallbackGate::Guard::Guard
  - '& operator=(const Guard&)'
  - BT::details::CallbackGate::Guard::Guard
  - '& operator=(Guard&&)'
  - ~Guard()
  - BT::details::CallbackGate::tryStart
  - BT::details::CallbackGate::close
  - BT::details::CallbackGate::closeAndDrain
  - BT::details::CallbackGate::completed
  - BT::details::CallbackGate::Guard::Guard
  - BT::details::CallbackGate::Guard::Guard
  - '& operator=(const Guard&)'
  - BT::details::CallbackGate::Guard::Guard
  - '& operator=(Guard&&)'
  - ~Guard()
  - BT::details::CallbackGate::tryStart
  - BT::details::CallbackGate::close
  - BT::details::CallbackGate::closeAndDrain
  - BT::details::CallbackGate::completed
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/callback_gate.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::details::Semaphore::Semaphore
  - BT::details::Semaphore::notify
  - BT::details::Semaphore::waitUntil
  - BT::details::Semaphore::manualUnlock
  - BT::details::Semaphore::Semaphore
  - BT::details::Semaphore::notify
  - BT::details::Semaphore::waitUntil
  - BT::details::Semaphore::manualUnlock
  - BT::TimerQueue::TimerQueue
  - ~TimerQueue()
  - BT::TimerQueue::add
  - BT::TimerQueue::cancel
  - BT::TimerQueue::cancelAll
  - BT::TimerQueue::TimerQueue
  - '& operator=(const TimerQueue&)'
  - BT::TimerQueue::TimerQueue
  - '& operator=(TimerQueue&&)'
  - BT::TimerQueue::run
  - BT::TimerQueue::calcWaitTime
  - BT::TimerQueue::checkWork
  - operator>(const WorkItem& other) const
  - '& getContainer()'
  - BT::details::Semaphore::Semaphore
  - BT::details::Semaphore::notify
  - BT::details::Semaphore::waitUntil
  - BT::details::Semaphore::manualUnlock
  - BT::details::Semaphore::Semaphore
  - BT::details::Semaphore::notify
  - BT::details::Semaphore::waitUntil
  - BT::details::Semaphore::manualUnlock
  - BT::TimerQueue::TimerQueue
  - ~TimerQueue()
  - BT::TimerQueue::add
  - BT::TimerQueue::cancel
  - BT::TimerQueue::cancelAll
  - BT::TimerQueue::TimerQueue
  - '& operator=(const TimerQueue&)'
  - BT::TimerQueue::TimerQueue
  - '& operator=(TimerQueue&&)'
  - BT::TimerQueue::run
  - BT::TimerQueue::calcWaitTime
  - BT::TimerQueue::checkWork
  - operator>(const WorkItem& other) const
  - '& getContainer()'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: end
        type: std::chrono::time_point<ClockT, DurationT>
      - name: id
        type: uint64_t
      - name: handler
        type: std::function<void(bool)>
      item_type: struct
      name: WorkItem
      pos:
        line_end: 264
        line_start: 255
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    - fields:
      - name: end
        type: std::chrono::time_point<ClockT, DurationT>
      - name: id
        type: uint64_t
      - name: handler
        type: std::function<void(bool)>
      item_type: struct
      name: WorkItem
      pos:
        line_end: 264
        line_start: 255
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/timer_queue.h
    typedefs: []
    union: []
- function_names:
  - ~SharedLibrary()
  - BT::SharedLibrary::SharedLibrary
  - '& operator=(const SharedLibrary&)'
  - BT::SharedLibrary::SharedLibrary
  - '& operator=(SharedLibrary&&)'
  - ~SharedLibrary()
  - BT::SharedLibrary::SharedLibrary
  - '& operator=(const SharedLibrary&)'
  - BT::SharedLibrary::SharedLibrary
  - '& operator=(SharedLibrary&&)'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/shared_library.h
  types:
    enum:
    - enumerators:
      - name: SHLIB_GLOBAL
        value: '1'
      - name: SHLIB_LOCAL
        value: '2'
      item_type: enum
      name: Flags
      pos:
        line_end: 68
        line_start: 52
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/shared_library.h
    - enumerators:
      - name: SHLIB_GLOBAL
        value: '1'
      - name: SHLIB_LOCAL
        value: '2'
      item_type: enum
      name: Flags
      pos:
        line_end: 68
        line_start: 52
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/shared_library.h
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::strings_internal::AppendPieces
  - BT::strings_internal::CatPieces
  - BT::strings_internal::AppendPieces
  - BT::strings_internal::CatPieces
  - BT::StrCat
  - BT::StrCat
  - BT::StrCat
  - BT::StrCat
  - BT::StrCat
  - BT::StrAppend
  - BT::StrAppend
  - BT::StrAppend
  - BT::StrAppend
  - BT::strings_internal::AppendPieces
  - BT::strings_internal::CatPieces
  - BT::strings_internal::AppendPieces
  - BT::strings_internal::CatPieces
  - BT::StrCat
  - BT::StrCat
  - BT::StrCat
  - BT::StrCat
  - BT::StrCat
  - BT::StrAppend
  - BT::StrAppend
  - BT::StrAppend
  - BT::StrAppend
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/strcat.hpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - wildcards_match
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/wildcards.hpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::LockedPtr::LockedPtr
  - BT::LockedPtr::LockedPtr
  - ~LockedPtr()
  - BT::LockedPtr::LockedPtr
  - '& operator=(LockedPtr const&)'
  - BT::LockedPtr::LockedPtr
  - '& operator=(LockedPtr&& other) noexcept'
  - operator bool() const
  - BT::LockedPtr::lock
  - BT::LockedPtr::unlock
  - BT::LockedPtr::get
  - '* operator->() const'
  - '* operator->()'
  - BT::LockedPtr::assign
  - BT::LockedPtr::LockedPtr
  - BT::LockedPtr::LockedPtr
  - ~LockedPtr()
  - BT::LockedPtr::LockedPtr
  - '& operator=(LockedPtr const&)'
  - BT::LockedPtr::LockedPtr
  - '& operator=(LockedPtr&& other) noexcept'
  - operator bool() const
  - BT::LockedPtr::lock
  - BT::LockedPtr::unlock
  - BT::LockedPtr::get
  - '* operator->() const'
  - '* operator->()'
  - BT::LockedPtr::assign
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/locked_reference.hpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::PolymorphicCastRegistry::PolymorphicCastRegistry
  - ~PolymorphicCastRegistry()
  - BT::PolymorphicCastRegistry::PolymorphicCastRegistry
  - '& operator=(const PolymorphicCastRegistry&)'
  - BT::PolymorphicCastRegistry::PolymorphicCastRegistry
  - '& operator=(PolymorphicCastRegistry&&)'
  - BT::PolymorphicCastRegistry::registerCast
  - BT::PolymorphicCastRegistry::isConvertible
  - BT::PolymorphicCastRegistry::canUpcast
  - BT::PolymorphicCastRegistry::tryCast
  - BT::PolymorphicCastRegistry::getBaseTypes
  - BT::PolymorphicCastRegistry::clear
  - BT::PolymorphicCastRegistry::canUpcastTransitive
  - BT::PolymorphicCastRegistry::applyTransitiveCasts
  - BT::PolymorphicCastRegistry::PolymorphicCastRegistry
  - ~PolymorphicCastRegistry()
  - BT::PolymorphicCastRegistry::PolymorphicCastRegistry
  - '& operator=(const PolymorphicCastRegistry&)'
  - BT::PolymorphicCastRegistry::PolymorphicCastRegistry
  - '& operator=(PolymorphicCastRegistry&&)'
  - BT::PolymorphicCastRegistry::registerCast
  - BT::PolymorphicCastRegistry::isConvertible
  - BT::PolymorphicCastRegistry::canUpcast
  - BT::PolymorphicCastRegistry::tryCast
  - BT::PolymorphicCastRegistry::getBaseTypes
  - BT::PolymorphicCastRegistry::clear
  - BT::PolymorphicCastRegistry::canUpcastTransitive
  - BT::PolymorphicCastRegistry::applyTransitiveCasts
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/polymorphic_cast_registry.hpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::scoped_demangled_name::scoped_demangled_name
  - ~scoped_demangled_name() noexcept
  - BT::scoped_demangled_name::get
  - BT::scoped_demangled_name::scoped_demangled_name
  - '& operator=(scoped_demangled_name const&)'
  - BT::scoped_demangled_name::scoped_demangled_name
  - '& operator=(scoped_demangled_name&&)'
  - BT::demangle_alloc
  - BT::demangle_free
  - BT::demangle_alloc
  - BT::demangle_free
  - BT::demangle
  - BT::demangle
  - BT::demangle
  - BT::scoped_demangled_name::scoped_demangled_name
  - ~scoped_demangled_name() noexcept
  - BT::scoped_demangled_name::get
  - BT::scoped_demangled_name::scoped_demangled_name
  - '& operator=(scoped_demangled_name const&)'
  - BT::scoped_demangled_name::scoped_demangled_name
  - '& operator=(scoped_demangled_name&&)'
  - BT::demangle_alloc
  - BT::demangle_free
  - BT::demangle_alloc
  - BT::demangle_free
  - BT::demangle
  - BT::demangle
  - BT::demangle
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/demangle_util.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::Signal::notify
  - BT::Signal::subscribe
  - BT::Signal::notify
  - BT::Signal::subscribe
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/signal.h
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - SafeAny::SimpleString::SimpleString
  - SafeAny::SimpleString::SimpleString
  - SafeAny::SimpleString::SimpleString
  - SafeAny::SimpleString::SimpleString
  - '& operator=(const SimpleString& other)'
  - SafeAny::SimpleString::SimpleString
  - '& operator=(SimpleString&& other) noexcept'
  - SafeAny::SimpleString::SimpleString
  - SafeAny::SimpleString::SimpleString
  - ~SimpleString()
  - SafeAny::SimpleString::toStdString
  - SafeAny::SimpleString::toStdStringView
  - SafeAny::SimpleString::data
  - SafeAny::SimpleString::size
  - operator==(const SimpleString& other) const
  - operator!=(const SimpleString& other) const
  - operator<=(const SimpleString& other) const
  - operator>=(const SimpleString& other) const
  - operator<(const SimpleString& other) const
  - operator>(const SimpleString& other) const
  - SafeAny::SimpleString::isSOO
  - SafeAny::SimpleString::createImpl
  - SafeAny::SimpleString::SimpleString
  - SafeAny::SimpleString::SimpleString
  - SafeAny::SimpleString::SimpleString
  - SafeAny::SimpleString::SimpleString
  - '& operator=(const SimpleString& other)'
  - SafeAny::SimpleString::SimpleString
  - '& operator=(SimpleString&& other) noexcept'
  - SafeAny::SimpleString::SimpleString
  - SafeAny::SimpleString::SimpleString
  - ~SimpleString()
  - SafeAny::SimpleString::toStdString
  - SafeAny::SimpleString::toStdStringView
  - SafeAny::SimpleString::data
  - SafeAny::SimpleString::size
  - operator==(const SimpleString& other) const
  - operator!=(const SimpleString& other) const
  - operator<=(const SimpleString& other) const
  - operator>=(const SimpleString& other) const
  - operator<(const SimpleString& other) const
  - operator>(const SimpleString& other) const
  - SafeAny::SimpleString::isSOO
  - SafeAny::SimpleString::createImpl
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: '* data'
        type: char
      - name: size
        type: std::size_t
      item_type: struct
      name: String
      pos:
        line_end: 163
        line_start: 159
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    - fields:
      - name: data[CAPACITY]
        type: char
      - name: capacity_left
        type: uint8_t
      item_type: struct
      name: SOO
      pos:
        line_end: 178
        line_start: 174
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    - fields:
      - name: '* data'
        type: char
      - name: size
        type: std::size_t
      item_type: struct
      name: String
      pos:
        line_end: 163
        line_start: 159
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    - fields:
      - name: data[CAPACITY]
        type: char
      - name: capacity_left
        type: uint8_t
      item_type: struct
      name: SOO
      pos:
        line_end: 178
        line_start: 174
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/simple_string.hpp
    typedefs: []
    union: []
- function_names:
  - BT::Any::Any
  - ~Any()
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::isString
  - BT::Any::isType
  - BT::Any::cast
  - BT::Any::castPtr
  - '& type() const noexcept'
  - '& castedType() const noexcept'
  - BT::Any::empty
  - BT::Any::convert
  - BT::Any::errorMsg
  - BT::ValidCast
  - BT::isCastingSafe
  - '& Any::operator=(const Any& other)'
  - '& Any::operator=(Any&& other) noexcept'
  - BT::Any::isNumber
  - BT::Any::isIntegral
  - BT::Any::copyInto
  - BT::Any::convert
  - BT::Any::stringToNumber
  - BT::Any::convert
  - BT::Any::convert
  - BT::Any::tryCast
  - BT::Any::tryCastWithRegistry
  - BT::Any::Any
  - ~Any()
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::Any
  - BT::Any::isString
  - BT::Any::isType
  - BT::Any::cast
  - BT::Any::castPtr
  - '& type() const noexcept'
  - '& castedType() const noexcept'
  - BT::Any::empty
  - BT::Any::convert
  - BT::Any::errorMsg
  - BT::ValidCast
  - BT::isCastingSafe
  - '& Any::operator=(const Any& other)'
  - '& Any::operator=(Any&& other) noexcept'
  - BT::Any::isNumber
  - BT::Any::isIntegral
  - BT::Any::copyInto
  - BT::Any::convert
  - BT::Any::stringToNumber
  - BT::Any::convert
  - BT::Any::convert
  - BT::Any::tryCast
  - BT::Any::tryCastWithRegistry
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields: []
      item_type: struct
      name: is_shared_ptr
      pos:
        line_end: 39
        line_start: 37
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    - fields: []
      item_type: struct
      name: is_shared_ptr<std::shared_ptr<U>>
      pos:
        line_end: 44
        line_start: 42
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    - fields: []
      item_type: struct
      name: is_shared_ptr
      pos:
        line_end: 39
        line_start: 37
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    - fields: []
      item_type: struct
      name: is_shared_ptr<std::shared_ptr<U>>
      pos:
        line_end: 44
        line_start: 42
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/safe_any.hpp
    typedefs: []
    union: []
- function_names:
  - BT::WakeUpSignal::waitFor
  - BT::WakeUpSignal::emitSignal
  - BT::WakeUpSignal::waitFor
  - BT::WakeUpSignal::emitSignal
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/utils/wakeup_signal.hpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - NLOHMANN_JSON_ABI_TAGS_CONCAT_EX
  - NLOHMANN_JSON_ABI_TAGS_CONCAT
  - NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT_EX
  - NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT
  - NLOHMANN_JSON_NAMESPACE_CONCAT_EX
  - NLOHMANN_JSON_NAMESPACE_CONCAT
  - namespace
  - NLOHMANN_JSON_NAMESPACE_BEGIN
  - nonesuch
  - ~nonesuch()
  - nonesuch
  - nonesuch
  - operator=(nonesuch const&)
  - operator=(nonesuch&&)
  - JSON_HEDLEY_STRINGIFY_EX
  - JSON_HEDLEY_STRINGIFY
  - JSON_HEDLEY_CONCAT_EX
  - JSON_HEDLEY_CONCAT
  - JSON_HEDLEY_CONCAT3_EX
  - JSON_HEDLEY_CONCAT3
  - JSON_HEDLEY_VERSION_ENCODE
  - JSON_HEDLEY_VERSION_DECODE_MAJOR
  - JSON_HEDLEY_VERSION_DECODE_MINOR
  - JSON_HEDLEY_VERSION_DECODE_REVISION
  - JSON_HEDLEY_GNUC_VERSION_CHECK
  - JSON_HEDLEY_GNUC_VERSION_CHECK
  - JSON_HEDLEY_MSVC_VERSION_CHECK
  - JSON_HEDLEY_MSVC_VERSION_CHECK
  - JSON_HEDLEY_MSVC_VERSION_CHECK
  - JSON_HEDLEY_MSVC_VERSION_CHECK
  - JSON_HEDLEY_INTEL_VERSION_CHECK
  - JSON_HEDLEY_INTEL_VERSION_CHECK
  - JSON_HEDLEY_INTEL_CL_VERSION_CHECK
  - JSON_HEDLEY_INTEL_CL_VERSION_CHECK
  - JSON_HEDLEY_PGI_VERSION_CHECK
  - JSON_HEDLEY_PGI_VERSION_CHECK
  - JSON_HEDLEY_SUNPRO_VERSION_CHECK
  - JSON_HEDLEY_SUNPRO_VERSION_CHECK
  - JSON_HEDLEY_EMSCRIPTEN_VERSION_CHECK
  - JSON_HEDLEY_EMSCRIPTEN_VERSION_CHECK
  - JSON_HEDLEY_ARM_VERSION_CHECK
  - JSON_HEDLEY_ARM_VERSION_CHECK
  - JSON_HEDLEY_IBM_VERSION_CHECK
  - JSON_HEDLEY_IBM_VERSION_CHECK
  - JSON_HEDLEY_TI_VERSION_CHECK
  - JSON_HEDLEY_TI_VERSION_CHECK
  - JSON_HEDLEY_TI_CL2000_VERSION_CHECK
  - JSON_HEDLEY_TI_CL2000_VERSION_CHECK
  - JSON_HEDLEY_TI_CL430_VERSION_CHECK
  - JSON_HEDLEY_TI_CL430_VERSION_CHECK
  - JSON_HEDLEY_TI_ARMCL_VERSION_CHECK
  - JSON_HEDLEY_TI_ARMCL_VERSION_CHECK
  - JSON_HEDLEY_TI_CL6X_VERSION_CHECK
  - JSON_HEDLEY_TI_CL6X_VERSION_CHECK
  - JSON_HEDLEY_TI_CL7X_VERSION_CHECK
  - JSON_HEDLEY_TI_CL7X_VERSION_CHECK
  - JSON_HEDLEY_TI_CLPRU_VERSION_CHECK
  - JSON_HEDLEY_TI_CLPRU_VERSION_CHECK
  - JSON_HEDLEY_CRAY_VERSION_CHECK
  - JSON_HEDLEY_CRAY_VERSION_CHECK
  - JSON_HEDLEY_IAR_VERSION_CHECK
  - JSON_HEDLEY_IAR_VERSION_CHECK
  - JSON_HEDLEY_TINYC_VERSION_CHECK
  - JSON_HEDLEY_TINYC_VERSION_CHECK
  - JSON_HEDLEY_DMC_VERSION_CHECK
  - JSON_HEDLEY_DMC_VERSION_CHECK
  - JSON_HEDLEY_COMPCERT_VERSION_CHECK
  - JSON_HEDLEY_COMPCERT_VERSION_CHECK
  - JSON_HEDLEY_PELLES_VERSION_CHECK
  - JSON_HEDLEY_PELLES_VERSION_CHECK
  - JSON_HEDLEY_MCST_LCC_VERSION_CHECK
  - JSON_HEDLEY_MCST_LCC_VERSION_CHECK
  - JSON_HEDLEY_GCC_VERSION_CHECK
  - JSON_HEDLEY_GCC_VERSION_CHECK
  - JSON_HEDLEY_HAS_ATTRIBUTE
  - JSON_HEDLEY_HAS_ATTRIBUTE
  - JSON_HEDLEY_GNUC_HAS_ATTRIBUTE
  - JSON_HEDLEY_GNUC_HAS_ATTRIBUTE
  - JSON_HEDLEY_GCC_HAS_ATTRIBUTE
  - JSON_HEDLEY_GCC_HAS_ATTRIBUTE
  - JSON_HEDLEY_HAS_CPP_ATTRIBUTE
  - JSON_HEDLEY_HAS_CPP_ATTRIBUTE
  - JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS
  - JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS
  - JSON_HEDLEY_HAS_CPP_ATTRIBUTE_NS
  - JSON_HEDLEY_GNUC_HAS_CPP_ATTRIBUTE
  - JSON_HEDLEY_GNUC_HAS_CPP_ATTRIBUTE
  - JSON_HEDLEY_GCC_HAS_CPP_ATTRIBUTE
  - JSON_HEDLEY_GCC_HAS_CPP_ATTRIBUTE
  - JSON_HEDLEY_HAS_BUILTIN
  - JSON_HEDLEY_HAS_BUILTIN
  - JSON_HEDLEY_GNUC_HAS_BUILTIN
  - JSON_HEDLEY_GNUC_HAS_BUILTIN
  - JSON_HEDLEY_GCC_HAS_BUILTIN
  - JSON_HEDLEY_GCC_HAS_BUILTIN
  - JSON_HEDLEY_HAS_FEATURE
  - JSON_HEDLEY_HAS_FEATURE
  - JSON_HEDLEY_GNUC_HAS_FEATURE
  - JSON_HEDLEY_GNUC_HAS_FEATURE
  - JSON_HEDLEY_GCC_HAS_FEATURE
  - JSON_HEDLEY_GCC_HAS_FEATURE
  - JSON_HEDLEY_HAS_EXTENSION
  - JSON_HEDLEY_HAS_EXTENSION
  - JSON_HEDLEY_GNUC_HAS_EXTENSION
  - JSON_HEDLEY_GNUC_HAS_EXTENSION
  - JSON_HEDLEY_GCC_HAS_EXTENSION
  - JSON_HEDLEY_GCC_HAS_EXTENSION
  - JSON_HEDLEY_HAS_DECLSPEC_ATTRIBUTE
  - JSON_HEDLEY_HAS_DECLSPEC_ATTRIBUTE
  - JSON_HEDLEY_GNUC_HAS_DECLSPEC_ATTRIBUTE
  - JSON_HEDLEY_GNUC_HAS_DECLSPEC_ATTRIBUTE
  - JSON_HEDLEY_GCC_HAS_DECLSPEC_ATTRIBUTE
  - JSON_HEDLEY_GCC_HAS_DECLSPEC_ATTRIBUTE
  - JSON_HEDLEY_HAS_WARNING
  - JSON_HEDLEY_HAS_WARNING
  - JSON_HEDLEY_GNUC_HAS_WARNING
  - JSON_HEDLEY_GNUC_HAS_WARNING
  - JSON_HEDLEY_GCC_HAS_WARNING
  - JSON_HEDLEY_GCC_HAS_WARNING
  - JSON_HEDLEY_PRAGMA
  - JSON_HEDLEY_PRAGMA
  - JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_
  - JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_
  - JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_
  - JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_
  - JSON_HEDLEY_CONST_CAST
  - JSON_HEDLEY_CONST_CAST
  - JSON_HEDLEY_CONST_CAST
  - JSON_HEDLEY_REINTERPRET_CAST
  - JSON_HEDLEY_REINTERPRET_CAST
  - JSON_HEDLEY_STATIC_CAST
  - JSON_HEDLEY_STATIC_CAST
  - JSON_HEDLEY_CPP_CAST
  - JSON_HEDLEY_CPP_CAST
  - JSON_HEDLEY_CPP_CAST
  - JSON_HEDLEY_CPP_CAST
  - JSON_HEDLEY_DEPRECATED
  - JSON_HEDLEY_DEPRECATED_FOR
  - JSON_HEDLEY_DEPRECATED
  - JSON_HEDLEY_DEPRECATED_FOR
  - JSON_HEDLEY_DEPRECATED
  - JSON_HEDLEY_DEPRECATED_FOR
  - JSON_HEDLEY_DEPRECATED
  - JSON_HEDLEY_DEPRECATED_FOR
  - JSON_HEDLEY_DEPRECATED
  - JSON_HEDLEY_DEPRECATED_FOR
  - JSON_HEDLEY_DEPRECATED
  - JSON_HEDLEY_DEPRECATED_FOR
  - JSON_HEDLEY_UNAVAILABLE
  - JSON_HEDLEY_WARN_UNUSED_RESULT_MSG
  - JSON_HEDLEY_WARN_UNUSED_RESULT_MSG
  - JSON_HEDLEY_WARN_UNUSED_RESULT_MSG
  - JSON_HEDLEY_WARN_UNUSED_RESULT_MSG
  - JSON_HEDLEY_SENTINEL
  - JSON_HEDLEY_ASSUME
  - JSON_HEDLEY_ASSUME
  - JSON_HEDLEY_ASSUME
  - JSON_HEDLEY_ASSUME
  - JSON_HEDLEY_UNREACHABLE
  - JSON_HEDLEY_UNREACHABLE
  - JSON_HEDLEY_ASSUME
  - JSON_HEDLEY_ASSUME
  - JSON_HEDLEY_UNREACHABLE_RETURN
  - JSON_HEDLEY_UNREACHABLE_RETURN
  - JSON_HEDLEY_UNREACHABLE_RETURN
  - JSON_HEDLEY_UNREACHABLE
  - JSON_HEDLEY_NON_NULL
  - JSON_HEDLEY_PRINTF_FORMAT
  - JSON_HEDLEY_PRINTF_FORMAT
  - JSON_HEDLEY_PRINTF_FORMAT
  - JSON_HEDLEY_PRINTF_FORMAT
  - JSON_HEDLEY_UNPREDICTABLE
  - JSON_HEDLEY_PREDICT
  - JSON_HEDLEY_PREDICT_TRUE
  - JSON_HEDLEY_PREDICT_FALSE
  - JSON_HEDLEY_LIKELY
  - JSON_HEDLEY_UNLIKELY
  - JSON_HEDLEY_PREDICT
  - JSON_HEDLEY_PREDICT_TRUE
  - JSON_HEDLEY_PREDICT_FALSE
  - JSON_HEDLEY_LIKELY
  - JSON_HEDLEY_UNLIKELY
  - JSON_HEDLEY_PREDICT
  - JSON_HEDLEY_PREDICT_TRUE
  - JSON_HEDLEY_PREDICT_FALSE
  - JSON_HEDLEY_LIKELY
  - JSON_HEDLEY_UNLIKELY
  - JSON_HEDLEY_UNPREDICTABLE
  - JSON_HEDLEY_ARRAY_PARAM
  - JSON_HEDLEY_IS_CONSTANT
  - JSON_HEDLEY_IS_CONSTEXPR_
  - JSON_HEDLEY_IS_CONSTEXPR_
  - JSON_HEDLEY_IS_CONSTEXPR_
  - JSON_HEDLEY_IS_CONSTEXPR_
  - JSON_HEDLEY_IS_CONSTEXPR_
  - JSON_HEDLEY_IS_CONSTANT
  - JSON_HEDLEY_REQUIRE_CONSTEXPR
  - JSON_HEDLEY_IS_CONSTANT
  - JSON_HEDLEY_REQUIRE_CONSTEXPR
  - JSON_HEDLEY_STATIC_ASSERT
  - JSON_HEDLEY_STATIC_ASSERT
  - JSON_HEDLEY_MESSAGE
  - JSON_HEDLEY_MESSAGE
  - JSON_HEDLEY_MESSAGE
  - JSON_HEDLEY_MESSAGE
  - JSON_HEDLEY_MESSAGE
  - JSON_HEDLEY_WARNING
  - JSON_HEDLEY_WARNING
  - JSON_HEDLEY_WARNING
  - JSON_HEDLEY_WARNING
  - JSON_HEDLEY_REQUIRE
  - JSON_HEDLEY_REQUIRE_MSG
  - JSON_HEDLEY_REQUIRE
  - JSON_HEDLEY_REQUIRE_MSG
  - JSON_HEDLEY_FLAGS_CAST
  - JSON_HEDLEY_FLAGS_CAST
  - JSON_HEDLEY_GCC_NOT_CLANG_VERSION_CHECK
  - JSON_HEDLEY_GCC_NOT_CLANG_VERSION_CHECK
  - JSON_HEDLEY_CLANG_HAS_ATTRIBUTE
  - JSON_HEDLEY_CLANG_HAS_CPP_ATTRIBUTE
  - JSON_HEDLEY_CLANG_HAS_BUILTIN
  - JSON_HEDLEY_CLANG_HAS_FEATURE
  - JSON_HEDLEY_CLANG_HAS_EXTENSION
  - JSON_HEDLEY_CLANG_HAS_DECLSPEC_ATTRIBUTE
  - JSON_HEDLEY_CLANG_HAS_WARNING
  - JSON_THROW
  - JSON_CATCH
  - JSON_INTERNAL_CATCH
  - JSON_THROW
  - JSON_CATCH
  - JSON_INTERNAL_CATCH
  - JSON_ASSERT
  - NLOHMANN_JSON_SERIALIZE_ENUM
  - NLOHMANN_JSON_EXPAND
  - NLOHMANN_JSON_GET_MACRO
  - NLOHMANN_JSON_PASTE
  - NLOHMANN_JSON_PASTE2
  - NLOHMANN_JSON_PASTE3
  - NLOHMANN_JSON_PASTE4
  - NLOHMANN_JSON_PASTE5
  - NLOHMANN_JSON_PASTE6
  - NLOHMANN_JSON_PASTE7
  - NLOHMANN_JSON_PASTE8
  - NLOHMANN_JSON_PASTE9
  - NLOHMANN_JSON_PASTE10
  - NLOHMANN_JSON_PASTE11
  - NLOHMANN_JSON_PASTE12
  - NLOHMANN_JSON_PASTE13
  - NLOHMANN_JSON_PASTE14
  - NLOHMANN_JSON_PASTE15
  - NLOHMANN_JSON_PASTE16
  - NLOHMANN_JSON_PASTE17
  - NLOHMANN_JSON_PASTE18
  - NLOHMANN_JSON_PASTE19
  - NLOHMANN_JSON_PASTE20
  - NLOHMANN_JSON_PASTE21
  - NLOHMANN_JSON_PASTE22
  - NLOHMANN_JSON_PASTE23
  - NLOHMANN_JSON_PASTE24
  - NLOHMANN_JSON_PASTE25
  - NLOHMANN_JSON_PASTE26
  - NLOHMANN_JSON_PASTE27
  - NLOHMANN_JSON_PASTE28
  - NLOHMANN_JSON_PASTE29
  - NLOHMANN_JSON_PASTE30
  - NLOHMANN_JSON_PASTE31
  - NLOHMANN_JSON_PASTE32
  - NLOHMANN_JSON_PASTE33
  - NLOHMANN_JSON_PASTE34
  - NLOHMANN_JSON_PASTE35
  - NLOHMANN_JSON_PASTE36
  - NLOHMANN_JSON_PASTE37
  - NLOHMANN_JSON_PASTE38
  - NLOHMANN_JSON_PASTE39
  - NLOHMANN_JSON_PASTE40
  - NLOHMANN_JSON_PASTE41
  - NLOHMANN_JSON_PASTE42
  - NLOHMANN_JSON_PASTE43
  - NLOHMANN_JSON_PASTE44
  - NLOHMANN_JSON_PASTE45
  - NLOHMANN_JSON_PASTE46
  - NLOHMANN_JSON_PASTE47
  - NLOHMANN_JSON_PASTE48
  - NLOHMANN_JSON_PASTE49
  - NLOHMANN_JSON_PASTE50
  - NLOHMANN_JSON_PASTE51
  - NLOHMANN_JSON_PASTE52
  - NLOHMANN_JSON_PASTE53
  - NLOHMANN_JSON_PASTE54
  - NLOHMANN_JSON_PASTE55
  - NLOHMANN_JSON_PASTE56
  - NLOHMANN_JSON_PASTE57
  - NLOHMANN_JSON_PASTE58
  - NLOHMANN_JSON_PASTE59
  - NLOHMANN_JSON_PASTE60
  - NLOHMANN_JSON_PASTE61
  - NLOHMANN_JSON_PASTE62
  - NLOHMANN_JSON_PASTE63
  - NLOHMANN_JSON_PASTE64
  - NLOHMANN_JSON_TO
  - NLOHMANN_JSON_FROM
  - NLOHMANN_JSON_FROM_WITH_DEFAULT
  - NLOHMANN_DEFINE_TYPE_INTRUSIVE
  - NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT
  - NLOHMANN_DEFINE_TYPE_INTRUSIVE_ONLY_SERIALIZE
  - NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE
  - NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_ONLY_SERIALIZE
  - NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT
  - NLOHMANN_CAN_CALL_STD_FUNC_IMPL
  - namespace
  - operator<(const value_t lhs, const value_t rhs) noexcept
  - operator<(const value_t lhs, const value_t rhs) noexcept
  - NLOHMANN_JSON_NAMESPACE_BEGIN
  - replace_substring
  - escape
  - unescape
  - namespace
  - operator size_t() const
  - namespace
  - size
  - make_array
  - detail
  - namespace
  - to_int_type
  - to_char_type
  - eof
  - to_int_type
  - to_char_type
  - eof
  - conditional_static_cast
  - conditional_static_cast
  - test
  - test
  - test
  - test
  - test
  - test
  - value_in_range_of
  - impl::is_c_string
  - impl::is_c_string
  - impl::is_transparent
  - impl::is_transparent
  - namespace
  - concat_length
  - concat_length
  - concat_length
  - concat_length
  - concat_into
  - concat_into
  - concat_into
  - concat_into
  - concat_into
  - concat
  - NLOHMANN_JSON_NAMESPACE_BEGIN
  - exception::what
  - "(3)\n    exception(int id_, const char* what_arg) : id(id_), m(what_arg)"
  - exception::name
  - exception::diagnostics
  - exception::diagnostics
  - parse_error::create
  - parse_error::create
  - parse_error::parse_error
  - parse_error::position_string
  - invalid_iterator::create
  - "(3)\n    invalid_iterator(int id_, const char* what_arg)\n        : exception(id_,
    what_arg)"
  - type_error::create
  - "(3)\n    type_error(int id_, const char* what_arg) : exception(id_, what_arg)"
  - out_of_range::create
  - "(3)\n    out_of_range(int id_, const char* what_arg) : exception(id_, what_arg)"
  - other_error::create
  - "(3)\n    other_error(int id_, const char* what_arg) : exception(id_, what_arg)"
  - NLOHMANN_JSON_NAMESPACE_BEGIN
  - namespace
  - namespace
  - namespace
  - from_json
  - get_arithmetic_value
  - from_json
  - from_json
  - from_json
  - from_json
  - from_json
  - from_json
  - from_json
  - from_json
  - from_json
  - from_json
  - from_json_array_impl
  - from_json_array_impl
  - from_json_array_impl
  - from_json_array_impl
  - from_json
  - from_json_inplace_array_impl
  - from_json
  - from_json
  - from_json
  - from_json
  - from_json_tuple_impl_base
  - from_json_tuple_impl
  - from_json_tuple_impl
  - from_json_tuple_impl
  - from_json_tuple_impl
  - from_json
  - from_json
  - from_json
  - from_json
  - "operator()(const BasicJsonType& j, T&& val) const\n    noexcept(noexcept(from_json(j,
    std::forward<T>(val))))\n    -> decltype(from_json(j, std::forward<T>(val)))"
  - namespace
  - int_to_string
  - iteration_proxy_value::iteration_proxy_value
  - iteration_proxy_value::iteration_proxy_value
  - iteration_proxy_value::iteration_proxy_value
  - '& operator=(iteration_proxy_value const&)'
  - iteration_proxy_value::iteration_proxy_value
  - "& operator=(iteration_proxy_value&&)\n    noexcept(std::is_nothrow_move_assignable<IteratorType>::value\n
    \            && std::is_nothrow_move_assignable<string_type>::value)"
  - ~iteration_proxy_value()
  - '& operator*() const'
  - '& operator++()'
  - operator++(int)&
  - operator==(const iteration_proxy_value& o) const
  - operator!=(const iteration_proxy_value& o) const
  - '& key() const'
  - iteration_proxy_value::value
  - iteration_proxy::iteration_proxy
  - iteration_proxy::iteration_proxy
  - iteration_proxy::iteration_proxy
  - '& operator=(iteration_proxy const&)'
  - iteration_proxy::iteration_proxy
  - '& operator=(iteration_proxy&&) noexcept'
  - ~iteration_proxy()
  - iteration_proxy::begin
  - iteration_proxy::end
  - get
  - get
  - namespace
  - namespace
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json_tuple_impl
  - to_json
  - to_json
  - "operator()(BasicJsonType& j, T&& val) const noexcept(noexcept(to_json(j, std::forward<T>(val))))\n
    \   -> decltype(to_json(j, std::forward<T>(val)), void())"
  - from_json
  - from_json
  - to_json
  - from_json
  - from_json
  - to_json
  - operator!=(const byte_container_with_subtype& rhs) const
  - set_subtype
  - subtype
  - has_subtype
  - clear_subtype
  - namespace
  - combine
  - hash
  - namespace
  - file_input_adapter
  - file_input_adapter
  - file_input_adapter
  - get_character
  - ~input_stream_adapter()
  - input_stream_adapter::input_stream_adapter
  - input_stream_adapter::input_stream_adapter
  - '& operator=(input_stream_adapter&)'
  - '& operator=(input_stream_adapter&&)'
  - input_stream_adapter::input_stream_adapter
  - input_stream_adapter::get_character
  - iterator_input_adapter::iterator_input_adapter
  - iterator_input_adapter::get_character
  - iterator_input_adapter::empty
  - fill_buffer
  - fill_buffer
  - wide_string_input_adapter::wide_string_input_adapter
  - wide_string_input_adapter::get_character
  - wide_string_input_adapter::fill_buffer
  - create
  - create
  - input_adapter
  - container_input_adapter_factory_impl::create
  - container_input_adapter_factory_impl::create
  - input_adapter
  - input_adapter
  - input_adapter
  - input_adapter
  - input_adapter
  - input_adapter
  - span_input_adapter::span_input_adapter
  - span_input_adapter::span_input_adapter
  - '&& get()'
  - json_sax_dom_parser
  - json_sax_dom_parser
  - json_sax_dom_parser
  - ~json_sax_dom_parser()
  - 'null'
  - boolean
  - number_integer
  - number_unsigned
  - number_float
  - string
  - binary
  - start_object
  - key
  - end_object
  - start_array
  - end_array
  - parse_error
  - is_errored
  - namespace
  - int_to_string
  - iteration_proxy_value::iteration_proxy_value
  - iteration_proxy_value::iteration_proxy_value
  - iteration_proxy_value::iteration_proxy_value
  - '& operator=(iteration_proxy_value const&)'
  - iteration_proxy_value::iteration_proxy_value
  - "& operator=(iteration_proxy_value&&)\n    noexcept(std::is_nothrow_move_assignable<IteratorType>::value\n
    \            && std::is_nothrow_move_assignable<string_type>::value)"
  - ~iteration_proxy_value()
  - '& operator*() const'
  - '& operator++()'
  - operator++(int)&
  - operator==(const iteration_proxy_value& o) const
  - operator!=(const iteration_proxy_value& o) const
  - '& key() const'
  - iteration_proxy_value::value
  - iteration_proxy::iteration_proxy
  - iteration_proxy::iteration_proxy
  - iteration_proxy::iteration_proxy
  - '& operator=(iteration_proxy const&)'
  - iteration_proxy::iteration_proxy
  - '& operator=(iteration_proxy&&) noexcept'
  - ~iteration_proxy()
  - iteration_proxy::begin
  - iteration_proxy::end
  - get
  - get
  - namespace
  - namespace
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - construct
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json
  - to_json_tuple_impl
  - to_json
  - to_json
  - "operator()(BasicJsonType& j, T&& val) const noexcept(noexcept(to_json(j, std::forward<T>(val))))\n
    \   -> decltype(to_json(j, std::forward<T>(val)), void())"
  - from_json
  - from_json
  - to_json
  - from_json
  - from_json
  - to_json
  - operator!=(const byte_container_with_subtype& rhs) const
  - set_subtype
  - subtype
  - has_subtype
  - clear_subtype
  - namespace
  - combine
  - hash
  - namespace
  - file_input_adapter
  - file_input_adapter
  - file_input_adapter
  - get_character
  - ~input_stream_adapter()
  - input_stream_adapter::input_stream_adapter
  - input_stream_adapter::input_stream_adapter
  - '& operator=(input_stream_adapter&)'
  - '& operator=(input_stream_adapter&&)'
  - input_stream_adapter::input_stream_adapter
  - input_stream_adapter::get_character
  - iterator_input_adapter::iterator_input_adapter
  - iterator_input_adapter::get_character
  - iterator_input_adapter::empty
  - fill_buffer
  - fill_buffer
  - wide_string_input_adapter::wide_string_input_adapter
  - wide_string_input_adapter::get_character
  - wide_string_input_adapter::fill_buffer
  - create
  - create
  - input_adapter
  - container_input_adapter_factory_impl::create
  - container_input_adapter_factory_impl::create
  - input_adapter
  - input_adapter
  - input_adapter
  - input_adapter
  - input_adapter
  - input_adapter
  - span_input_adapter::span_input_adapter
  - span_input_adapter::span_input_adapter
  - '&& get()'
  - json_sax_dom_parser
  - json_sax_dom_parser
  - json_sax_dom_parser
  - ~json_sax_dom_parser()
  - 'null'
  - boolean
  - number_integer
  - number_unsigned
  - number_float
  - string
  - binary
  - start_object
  - key
  - end_object
  - start_array
  - end_array
  - parse_error
  - is_errored
  - json_sax_dom_callback_parser::json_sax_dom_callback_parser
  - json_sax_dom_callback_parser::json_sax_dom_callback_parser
  - json_sax_dom_callback_parser::json_sax_dom_callback_parser
  - '& operator=(const json_sax_dom_callback_parser&)'
  - '& operator=(json_sax_dom_callback_parser&&)'
  - ~json_sax_dom_callback_parser()
  - json_sax_dom_callback_parser::null
  - json_sax_dom_callback_parser::boolean
  - json_sax_dom_callback_parser::number_integer
  - json_sax_dom_callback_parser::number_unsigned
  - json_sax_dom_callback_parser::number_float
  - json_sax_dom_callback_parser::string
  - json_sax_dom_callback_parser::binary
  - json_sax_dom_callback_parser::start_object
  - json_sax_dom_callback_parser::key
  - json_sax_dom_callback_parser::end_object
  - json_sax_dom_callback_parser::start_array
  - json_sax_dom_callback_parser::end_array
  - json_sax_dom_callback_parser::parse_error
  - json_sax_dom_callback_parser::is_errored
  - json_sax_dom_callback_parser::handle_value
  - json_sax_acceptor::null
  - json_sax_acceptor::boolean
  - json_sax_acceptor::number_integer
  - json_sax_acceptor::number_unsigned
  - json_sax_acceptor::number_float
  - json_sax_acceptor::string
  - json_sax_acceptor::binary
  - json_sax_acceptor::start_object
  - json_sax_acceptor::key
  - json_sax_acceptor::end_object
  - json_sax_acceptor::start_array
  - json_sax_acceptor::end_array
  - json_sax_acceptor::parse_error
  - namespace
  - lexer_base::token_type_name
  - lexer::lexer
  - lexer::lexer
  - lexer::lexer
  - '& operator=(lexer&)'
  - '& operator=(lexer&&)'
  - ~lexer()
  - lexer::get_decimal_point
  - lexer::get_codepoint
  - lexer::next_byte_in_range
  - lexer::scan_string
  - lexer::scan_comment
  - lexer::strtof
  - lexer::strtof
  - lexer::strtof
  - lexer::scan_number
  - reset
  - get
  - unget
  - add
  - get_number_unsigned
  - get_number_float
  - get_string
  - get_position
  - get_token_string
  - get_error_message
  - skip_bom
  - skip_whitespace
  - scan
  - namespace
  - NLOHMANN_JSON_NAMESPACE_BEGIN
  - little_endianness
  - binary_reader::binary_reader
  - binary_reader::binary_reader
  - binary_reader::binary_reader
  - '& operator=(const binary_reader&)'
  - '& operator=(binary_reader&&)'
  - ~binary_reader()
  - "(3)\n    bool sax_parse(const input_format_t format,\n                   json_sax_t*
    sax_,\n                   const bool strict = true,\n                   const
    cbor_tag_handler_t tag_handler = cbor_tag_handler_t::error)"
  - binary_reader::parse_bson_internal
  - binary_reader::get_bson_cstr
  - binary_reader::get_bson_string
  - binary_reader::get_bson_binary
  - binary_reader::parse_bson_element_internal
  - binary_reader::parse_bson_element_list
  - binary_reader::parse_bson_array
  - binary_reader::parse_cbor_internal
  - binary_reader::get_cbor_string
  - binary_reader::get_cbor_binary
  - binary_reader::get_cbor_array
  - binary_reader::get_cbor_object
  - binary_reader::parse_msgpack_internal
  - binary_reader::get_msgpack_string
  - binary_reader::get_msgpack_binary
  - binary_reader::get_msgpack_array
  - binary_reader::get_msgpack_object
  - binary_reader::parse_ubjson_internal
  - binary_reader::get_ubjson_string
  - binary_reader::get_ubjson_ndarray_size
  - binary_reader::get_ubjson_size_value
  - binary_reader::get_ubjson_size_type
  - binary_reader::get_ubjson_value
  - binary_reader::get_ubjson_array
  - binary_reader::get_ubjson_object
  - binary_reader::get_ubjson_high_precision_number
  - binary_reader::get
  - binary_reader::get_ignore_noop
  - binary_reader::get_number
  - binary_reader::get_string
  - binary_reader::get_binary
  - "(3)\n    bool unexpect_eof(const input_format_t format, const char* context)
    const"
  - binary_reader::get_token_string
  - binary_reader::exception_message
  - namespace
  - parser::parser
  - parser::parse
  - parser::accept
  - "(2)\n    bool sax_parse(SAX* sax, const bool strict = true)"
  - parser::sax_parse_internal
  - parser::get_token
  - parser::exception_message
  - namespace
  - primitive_iterator_t::get_value
  - primitive_iterator_t::set_begin
  - primitive_iterator_t::set_end
  - primitive_iterator_t::is_begin
  - primitive_iterator_t::is_end
  - operator==(primitive_iterator_t lhs, primitive_iterator_t rhs) noexcept
  - operator<(primitive_iterator_t lhs, primitive_iterator_t rhs) noexcept
  - operator+(difference_type n) noexcept
  - operator-(primitive_iterator_t lhs, primitive_iterator_t rhs) noexcept
  - '& operator++() noexcept'
  - operator++(int)& noexcept
  - '& operator--() noexcept'
  - operator--(int)& noexcept
  - '& operator+=(difference_type n) noexcept'
  - '& operator-=(difference_type n) noexcept'
  - NLOHMANN_JSON_NAMESPACE_BEGIN
  - namespace
  - set_end
  - iter_impl::iter_impl
  - ~iter_impl()
  - iter_impl::iter_impl
  - '& operator=(iter_impl&&) noexcept'
  - iter_impl::iter_impl
  - iter_impl::iter_impl
  - '& operator=(const iter_impl<const BasicJsonType>& other) noexcept'
  - iter_impl::iter_impl
  - '& operator=(const iter_impl<typename std::remove_const<BasicJsonType>::type>&
    other) noexcept'
  - (m_object->m_data.m_type)
  - operator->() const
  - operator++(int)&
  - '& operator++()'
  - operator--(int)&
  - '& operator--()'
  - operator==(const IterImpl& other) const
  - operator!=(const IterImpl& other) const
  - operator<(const iter_impl& other) const
  - operator<=(const iter_impl& other) const
  - operator>(const iter_impl& other) const
  - operator>=(const iter_impl& other) const
  - '& operator+=(difference_type i)'
  - '& operator-=(difference_type i)'
  - operator+(difference_type i) const
  - operator+(difference_type i, const iter_impl& it)
  - operator-(difference_type i) const
  - operator-(const iter_impl& other) const
  - operator[](difference_type n) const
  - key
  - value
  - namespace
  - json_reverse_iterator::json_reverse_iterator
  - json_reverse_iterator::json_reverse_iterator
  - operator++(int)&
  - '& operator++()'
  - operator--(int)&
  - '& operator--()'
  - '& operator+=(difference_type i)'
  - operator+(difference_type i) const
  - operator-(difference_type i) const
  - operator-(const json_reverse_iterator& other) const
  - operator[](difference_type n) const
  - json_reverse_iterator::key
  - json_reverse_iterator::value
  - namespace
  - string_t_helper
  - string_t_helper
  - json_pointer
  - to_string
  - operator string_t() const
  - '& operator<<(std::ostream& o, const json_pointer& ptr)'
  - '& operator/=(const json_pointer& ptr)'
  - '& operator/=(string_t token)'
  - '& operator/=(std::size_t array_idx)'
  - "json_pointer operator/(const json_pointer& lhs,\n                                  const
    json_pointer& rhs)"
  - json_pointer operator/(const json_pointer& lhs, string_t token)
  - json_pointer operator/(const json_pointer& lhs, std::size_t array_idx)
  - parent_pointer
  - pop_back
  - back
  - push_back
  - push_back
  - empty
  - get_and_create
  - get_unchecked
  - get_checked
  - get_unchecked
  - get_checked
  - contains
  - split
  - convert
  - convert
  - operator==(const json_pointer<RefStringTypeRhs>& rhs) const noexcept
  - operator==(const string_t& rhs) const
  - operator<=>(const json_pointer<RefStringTypeRhs>& rhs) const noexcept
  - "operator==(const json_pointer<RefStringTypeLhs>& lhs,\n                       const
    json_pointer<RefStringTypeRhs>& rhs) noexcept"
  - "operator==(const json_pointer<RefStringTypeLhs>& lhs,\n                       const
    StringType& rhs)"
  - "operator==(const StringType& lhs,\n                       const json_pointer<RefStringTypeRhs>&
    rhs)"
  - "operator!=(const json_pointer<RefStringTypeLhs>& lhs,\n                       const
    json_pointer<RefStringTypeRhs>& rhs) noexcept"
  - "operator!=(const json_pointer<RefStringTypeLhs>& lhs,\n                       const
    StringType& rhs)"
  - "operator!=(const StringType& lhs,\n                       const json_pointer<RefStringTypeRhs>&
    rhs)"
  - "operator<(const json_pointer<RefStringTypeLhs>& lhs,\n                      const
    json_pointer<RefStringTypeRhs>& rhs) noexcept"
  - namespace
  - json_ref::json_ref
  - json_ref::json_ref
  - json_ref::json_ref
  - json_ref::json_ref
  - json_ref::json_ref
  - json_ref::json_ref
  - '& operator=(const json_ref&)'
  - '& operator=(json_ref&&)'
  - ~json_ref()
  - json_ref::moved_or_copied
  - '& operator*() const'
  - '* operator->() const'
  - namespace
  - ~output_adapter_protocol()
  - output_adapter_protocol
  - output_adapter_protocol
  - output_adapter_protocol
  - '& operator=(const output_adapter_protocol&)'
  - '& operator=(output_adapter_protocol&&) noexcept'
  - output_vector_adapter::output_vector_adapter
  - output_vector_adapter::write_character
  - "(2)\n    void write_characters(const CharType* s, std::size_t length) override"
  - output_stream_adapter::output_stream_adapter
  - output_stream_adapter::write_character
  - "(2)\n    void write_characters(const CharType* s, std::size_t length) override"
  - output_string_adapter::output_string_adapter
  - output_string_adapter::write_character
  - "(2)\n    void write_characters(const CharType* s, std::size_t length) override"
  - output_adapter::output_adapter
  - output_adapter::output_adapter
  - output_adapter::output_adapter
  - operator output_adapter_t<CharType>()
  - NLOHMANN_JSON_NAMESPACE_BEGIN
  - binary_writer::binary_writer
  - binary_writer::write_bson
  - binary_writer::write_cbor
  - binary_writer::write_msgpack
  - binary_writer::write_ubjson
  - binary_writer::calc_bson_entry_header_size
  - binary_writer::write_bson_entry_header
  - binary_writer::write_bson_boolean
  - binary_writer::write_bson_double
  - binary_writer::calc_bson_string_size
  - binary_writer::write_bson_string
  - binary_writer::write_bson_null
  - binary_writer::calc_bson_integer_size
  - binary_writer::write_bson_integer
  - binary_writer::calc_bson_unsigned_size
  - binary_writer::write_bson_unsigned
  - binary_writer::write_bson_object_entry
  - binary_writer::calc_bson_array_size
  - binary_writer::calc_bson_binary_size
  - binary_writer::write_bson_array
  - binary_writer::write_bson_binary
  - binary_writer::calc_bson_element_size
  - binary_writer::write_bson_element
  - binary_writer::calc_bson_object_size
  - binary_writer::write_bson_object
  - binary_writer::get_cbor_float_prefix
  - binary_writer::get_cbor_float_prefix
  - binary_writer::get_msgpack_float_prefix
  - binary_writer::get_msgpack_float_prefix
  - binary_writer::write_number_with_ubjson_prefix
  - binary_writer::write_number_with_ubjson_prefix
  - binary_writer::write_number_with_ubjson_prefix
  - binary_writer::ubjson_prefix
  - binary_writer::get_ubjson_float_prefix
  - binary_writer::get_ubjson_float_prefix
  - binary_writer::write_bjdata_ndarray
  - binary_writer::write_number
  - binary_writer::write_compact_float
  - binary_writer::to_char_type
  - binary_writer::to_char_type
  - binary_writer::to_char_type
  - binary_writer::to_char_type
  - namespace
  - dtoa_impl::reinterpret_bits
  - dtoa_impl::diyfp
  - dtoa_impl::sub
  - dtoa_impl::mul
  - dtoa_impl::normalize
  - dtoa_impl::normalize_to
  - dtoa_impl::compute_boundaries
  - dtoa_impl::get_cached_power_for_binary_exponent
  - dtoa_impl::find_largest_pow10
  - dtoa_impl::grisu2_round
  - dtoa_impl::grisu2_digit_gen
  - dtoa_impl::grisu2
  - '(1)

    void grisu2(char* buf, int& len, int& decimal_exponent, FloatType value)'
  - dtoa_impl::append_exponent
  - dtoa_impl::format_buffer
  - dtoa_impl::reinterpret_bits
  - dtoa_impl::diyfp
  - dtoa_impl::sub
  - dtoa_impl::mul
  - dtoa_impl::normalize
  - dtoa_impl::normalize_to
  - dtoa_impl::compute_boundaries
  - dtoa_impl::get_cached_power_for_binary_exponent
  - dtoa_impl::find_largest_pow10
  - dtoa_impl::grisu2_round
  - dtoa_impl::grisu2_digit_gen
  - dtoa_impl::grisu2
  - '(1)

    void grisu2(char* buf, int& len, int& decimal_exponent, FloatType value)'
  - dtoa_impl::append_exponent
  - dtoa_impl::format_buffer
  - NLOHMANN_JSON_NAMESPACE_BEGIN
  - serializer::serializer
  - serializer::serializer
  - '& operator=(const serializer&)'
  - serializer::serializer
  - '& operator=(serializer&&)'
  - ~serializer()
  - serializer::dump
  - serializer::switch
  - hex_bytes
  - is_negative_number
  - is_negative_number
  - dump_integer
  - dump_float
  - dump_float
  - dump_float
  - decode
  - remove_sign
  - remove_sign
  - ordered_map
  - ordered_map
  - ordered_map
  - ordered_map
  - emplace
  - emplace
  - '& operator[](const key_type& key)'
  - '& operator[](KeyType && key)'
  - '& operator[](const key_type& key) const'
  - '& operator[](KeyType && key) const'
  - at
  - at
  - at
  - at
  - erase
  - erase
  - erase
  - erase
  - count
  - count
  - find
  - find
  - find
  - insert
  - insert
  - insert
  - "NLOHMANN_BASIC_JSON_TPL_DECLARATION\nclass basic_json // NOLINT(cppcoreguidelines-special-member-functions,hicpp-special-member-functions)\n
    \   : public ::nlohmann::detail::json_base_class<CustomBaseClass>"
  - parser
  - get_allocator
  - meta
  - create
  - json_value
  - json_value
  - json_value
  - json_value
  - json_value
  - json_value
  - json_value
  - json_value
  - json_value
  - json_value
  - json_value
  - json_value
  - json_value
  - json_value
  - json_value
  - json_value
  - destroy
  - JSON_CATCH
  - set_parents
  - set_parents
  - set_parent
  - basic_json
  - basic_json
  - basic_json
  - basic_json
  - basic_json
  - binary
  - binary
  - binary
  - binary
  - array
  - object
  - basic_json
  - basic_json
  - basic_json
  - basic_json
  - basic_json
  - "& operator=(basic_json other) noexcept (\n        std::is_nothrow_move_constructible<value_t>::value&&\n
    \       std::is_nothrow_move_assignable<value_t>::value&&\n        std::is_nothrow_move_constructible<json_value>::value&&\n
    \       std::is_nothrow_move_assignable<json_value>::value&&\n        std::is_nothrow_move_assignable<json_base_class_t>::value\n
    \   )"
  - ~basic_json() noexcept
  - type
  - is_primitive
  - is_structured
  - is_null
  - is_boolean
  - is_number
  - is_number_integer
  - is_number_unsigned
  - is_number_float
  - is_object
  - is_array
  - is_string
  - is_binary
  - is_discarded
  - operator value_t() const noexcept
  - get_impl_ptr
  - get_impl_ptr
  - get_impl_ptr
  - get_impl_ptr
  - get_impl_ptr
  - get_impl_ptr
  - get_impl_ptr
  - get_impl_ptr
  - get_impl_ptr
  - get_impl_ptr
  - get_impl_ptr
  - get_impl_ptr
  - get_impl_ptr
  - get_impl_ptr
  - get_impl_ptr
  - get_impl_ptr
  - get_ref_impl
  - get_ptr
  - noexcept
  - get_impl
  - get_impl
  - get_impl
  - get_impl
  - get
  - get_to
  - get_to
  - get_to
  - get_ref
  - get_ref
  - get_binary
  - get_binary
  - at
  - JSON_CATCH
  - at
  - JSON_CATCH
  - at
  - at
  - at
  - at
  - operator[](size_type idx)
  - operator[](size_type idx) const
  - operator[](typename object_t::key_type key)
  - operator[](const typename object_t::key_type& key) const
  - operator[](T* key)
  - operator[](T* key) const
  - operator[](KeyType && key)
  - operator[](KeyType && key) const
  - value
  - value
  - value
  - value
  - value
  - JSON_INTERNAL_CATCH
  - value
  - JSON_INTERNAL_CATCH
  - value
  - value
  - front
  - front
  - back
  - back
  - erase
  - erase
  - erase_internal
  - erase_internal
  - erase
  - erase
  - find
  - find
  - find
  - find
  - count
  - count
  - contains
  - contains
  - contains
  - contains
  - begin
  - begin
  - cbegin
  - end
  - end
  - cend
  - rbegin
  - rbegin
  - rend
  - rend
  - crbegin
  - crend
  - iterator_wrapper
  - iterator_wrapper
  - items
  - items
  - empty
  - size
  - max_size
  - clear
  - push_back
  - operator+=(basic_json&& val)
  - push_back
  - operator+=(const basic_json& val)
  - push_back
  - operator+=(const typename object_t::value_type& val)
  - push_back
  - operator+=(initializer_list_t init)
  - emplace_back
  - emplace
  - insert_iterator
  - insert
  - insert
  - insert
  - insert
  - insert
  - insert
  - update
  - update
  - swap
  - swap
  - swap
  - swap
  - swap
  - swap
  - swap
  - JSON_IMPLEMENT_OPERATOR
  - if
  - compares_unordered
  - operator==(const_reference rhs) const noexcept
  - operator==(ScalarType rhs) const noexcept
  - operator!=(const_reference rhs) const noexcept
  - operator<=>(const_reference rhs) const noexcept
  - operator<=>(ScalarType rhs) const noexcept
  - operator<=(const_reference rhs) const noexcept
  - operator<=(ScalarType rhs) const noexcept
  - operator>=(const_reference rhs) const noexcept
  - operator>=(ScalarType rhs) const noexcept
  - operator==(const_reference lhs, const_reference rhs) noexcept
  - operator==(const_reference lhs, ScalarType rhs) noexcept
  - operator==(ScalarType lhs, const_reference rhs) noexcept
  - operator!=(const_reference lhs, const_reference rhs) noexcept
  - operator!=(const_reference lhs, ScalarType rhs) noexcept
  - operator!=(ScalarType lhs, const_reference rhs) noexcept
  - operator<(const_reference lhs, ScalarType rhs) noexcept
  - operator<(ScalarType lhs, const_reference rhs) noexcept
  - operator<=(const_reference lhs, const_reference rhs) noexcept
  - operator<=(const_reference lhs, ScalarType rhs) noexcept
  - operator<=(ScalarType lhs, const_reference rhs) noexcept
  - operator>(const_reference lhs, const_reference rhs) noexcept
  - operator>(const_reference lhs, ScalarType rhs) noexcept
  - operator>(ScalarType lhs, const_reference rhs) noexcept
  - operator>=(const_reference lhs, const_reference rhs) noexcept
  - operator>=(const_reference lhs, ScalarType rhs) noexcept
  - operator>=(ScalarType lhs, const_reference rhs) noexcept
  - '& operator<<(std::ostream& o, const basic_json& j)'
  - parse
  - parse
  - parse
  - accept
  - accept
  - accept
  - sax_parse
  - sax_parse
  - sax_parse
  - type_name
  - data
  - data
  - data
  - data
  - data
  - '& operator=(data&&) noexcept'
  - '& operator=(const data&) noexcept'
  - ~data() noexcept
  - to_cbor
  - to_cbor
  - to_msgpack
  - to_msgpack
  - to_msgpack
  - to_ubjson
  - to_ubjson
  - to_ubjson
  - to_bjdata
  - to_bjdata
  - to_bjdata
  - to_bson
  - to_bson
  - to_bson
  - from_cbor
  - from_cbor
  - from_cbor
  - from_cbor
  - from_msgpack
  - from_msgpack
  - from_msgpack
  - from_msgpack
  - from_ubjson
  - from_ubjson
  - from_ubjson
  - from_ubjson
  - from_bjdata
  - from_bjdata
  - from_bson
  - from_bson
  - from_bson
  - from_bson
  - operator[](const json_pointer& ptr)
  - operator[](const ::nlohmann::json_pointer<BasicJsonType>& ptr)
  - operator[](const json_pointer& ptr) const
  - operator[](const ::nlohmann::json_pointer<BasicJsonType>& ptr) const
  - at
  - at
  - at
  - at
  - flatten
  - unflatten
  - patch_inplace
  - patch
  - diff
  - merge_patch
  - std::string to_string(const NLOHMANN_BASIC_JSON_TPL& j)
  - operator "" _json(const char* s, std::size_t n)
  - operator "" _json_pointer(const char* s, std::size_t n)
  - namespace
  - struct
  - operator()(const nlohmann::NLOHMANN_BASIC_JSON_TPL& j) const
  - "operator()(::nlohmann::detail::value_t lhs,\n                    ::nlohmann::detail::value_t
    rhs) const noexcept"
  - swap
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
  types:
    enum:
    - enumerators:
      - name: 'null'
      - name: object
      - name: string
      - name: boolean
      - name: array
      - name: number_integer
      - name: number_unsigned
      - name: number_float
      - name: binary
      - name: discarded
      item_type: enum
      name: value_t
      pos:
        line_end: 2883
        line_start: 2871
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - enumerators:
      - name: json
      - name: ubjson
      - name: cbor
      - name: bson
      - name: msgpack
      - name: bjdata
      item_type: enum
      name: input_format_t
      pos:
        line_end: 6175
        line_start: 6175
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - enumerators:
      - name: json
      - name: ubjson
      - name: cbor
      - name: bson
      - name: msgpack
      - name: bjdata
      item_type: enum
      name: input_format_t
      pos:
        line_end: 6175
        line_start: 6175
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - enumerators:
      - name: uninitialized
      - name: literal_false
      - name: literal_null
      - name: value_string
      - name: literal_true
      - name: value_unsigned
      - name: value_integer
      - name: value_float
      - name: begin_array
      - name: begin_object
      - name: end_array
      - name: value_separator
      - name: end_of_input
      - name: end_object
      - name: literal_or_value
      - name: parse_error
      - name: name_separator
      item_type: enum
      name: token_type
      pos:
        line_end: 7428
        line_start: 7409
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - enumerators:
      - name: error
      - name: ignore
      - name: store
      item_type: enum
      name: cbor_tag_handler_t
      pos:
        line_end: 9188
        line_start: 9183
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - enumerators:
      - name: object_start
      - name: array_end
      - name: object_end
      - name: key
      - name: array_start
      - name: value
      item_type: enum
      name: parse_event_t
      pos:
        line_end: 12215
        line_start: 12201
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - enumerators:
      - name: strict
      - name: replace
      - name: ignore
      item_type: enum
      name: error_handler_t
      pos:
        line_end: 18055
        line_start: 18050
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - enumerators:
      - name: add
      - name: replace
      - name: remove
      - name: copy
      - name: move
      - name: test
      - name: invalid
      item_type: enum
      name: patch_operations
      pos:
        line_end: 24004
        line_start: 24004
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    preproc_defs:
    - item_type: preproc_def
      name: NLOHMANN_JSON_VERSION_MAJOR
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: 3   // NOLINT(modernize-macro-to-enum)
    - item_type: preproc_def
      name: NLOHMANN_JSON_VERSION_MINOR
      pos:
        line_end: 69
        line_start: 68
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: 11  // NOLINT(modernize-macro-to-enum)
    - item_type: preproc_def
      name: NLOHMANN_JSON_VERSION_PATCH
      pos:
        line_end: 70
        line_start: 69
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: 3   // NOLINT(modernize-macro-to-enum)
    - item_type: preproc_def
      name: JSON_DIAGNOSTICS
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON
      pos:
        line_end: 77
        line_start: 76
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: NLOHMANN_JSON_ABI_TAG_DIAGNOSTICS
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _diag
    - item_type: preproc_def
      name: NLOHMANN_JSON_ABI_TAG_LEGACY_DISCARDED_VALUE_COMPARISON
      pos:
        line_end: 87
        line_start: 86
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _ldvcmp
    - item_type: preproc_def
      name: NLOHMANN_JSON_NAMESPACE_NO_VERSION
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: NLOHMANN_JSON_ABI_TAGS
      pos:
        line_end: 104
        line_start: 100
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: "NLOHMANN_JSON_ABI_TAGS_CONCAT(                                   \\\n
        \           NLOHMANN_JSON_ABI_TAG_DIAGNOSTICS,                       \\\n
        \           NLOHMANN_JSON_ABI_TAG_LEGACY_DISCARDED_VALUE_COMPARISON)"
    - item_type: preproc_def
      name: NLOHMANN_JSON_NAMESPACE_VERSION
      pos:
        line_end: 118
        line_start: 114
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: "NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT(NLOHMANN_JSON_VERSION_MAJOR,
        \\\n                                           NLOHMANN_JSON_VERSION_MINOR,
        \\\n                                           NLOHMANN_JSON_VERSION_PATCH)"
    - item_type: preproc_def
      name: NLOHMANN_JSON_NAMESPACE
      pos:
        line_end: 130
        line_start: 126
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: "nlohmann::NLOHMANN_JSON_NAMESPACE_CONCAT( \\\n            NLOHMANN_JSON_ABI_TAGS,
        \          \\\n            NLOHMANN_JSON_NAMESPACE_VERSION)"
    - item_type: preproc_def
      name: NLOHMANN_JSON_NAMESPACE_BEGIN
      pos:
        line_end: 140
        line_start: 133
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: "namespace nlohmann                               \\\n    {                                                \\\n
        \   inline namespace NLOHMANN_JSON_NAMESPACE_CONCAT( \\\n                NLOHMANN_JSON_ABI_TAGS,
        \             \\\n                NLOHMANN_JSON_NAMESPACE_VERSION)     \\\n
        \   {"
    - item_type: preproc_def
      name: JSON_HEDLEY_VERSION
      pos:
        line_end: 338
        line_start: 337
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '15'
    - item_type: preproc_def
      name: JSON_HEDLEY_GNUC_VERSION
      pos:
        line_end: 394
        line_start: 393
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__GNUC__, __GNUC_MINOR__, __GNUC_PATCHLEVEL__)
    - item_type: preproc_def
      name: JSON_HEDLEY_GNUC_VERSION
      pos:
        line_end: 396
        line_start: 395
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__GNUC__, __GNUC_MINOR__, 0)
    - item_type: preproc_def
      name: JSON_HEDLEY_MSVC_VERSION
      pos:
        line_end: 412
        line_start: 411
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(_MSC_FULL_VER / 10000000, (_MSC_FULL_VER
        % 10000000) / 100000, (_MSC_FULL_VER % 100000) / 100)
    - item_type: preproc_def
      name: JSON_HEDLEY_MSVC_VERSION
      pos:
        line_end: 414
        line_start: 413
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(_MSC_FULL_VER / 1000000, (_MSC_FULL_VER
        % 1000000) / 10000, (_MSC_FULL_VER % 10000) / 10)
    - item_type: preproc_def
      name: JSON_HEDLEY_MSVC_VERSION
      pos:
        line_end: 416
        line_start: 415
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(_MSC_VER / 100, _MSC_VER % 100, 0)
    - item_type: preproc_def
      name: JSON_HEDLEY_INTEL_VERSION
      pos:
        line_end: 436
        line_start: 435
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__INTEL_COMPILER / 100, __INTEL_COMPILER
        % 100, __INTEL_COMPILER_UPDATE)
    - item_type: preproc_def
      name: JSON_HEDLEY_INTEL_VERSION
      pos:
        line_end: 438
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__INTEL_COMPILER / 100, __INTEL_COMPILER
        % 100, 0)
    - item_type: preproc_def
      name: JSON_HEDLEY_INTEL_CL_VERSION
      pos:
        line_end: 454
        line_start: 453
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__INTEL_COMPILER, __INTEL_COMPILER_UPDATE,
        0)
    - item_type: preproc_def
      name: JSON_HEDLEY_PGI_VERSION
      pos:
        line_end: 470
        line_start: 469
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__PGIC__, __PGIC_MINOR__, __PGIC_PATCHLEVEL__)
    - item_type: preproc_def
      name: JSON_HEDLEY_SUNPRO_VERSION
      pos:
        line_end: 486
        line_start: 485
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE((((__SUNPRO_C >> 16) & 0xf) * 10)
        + ((__SUNPRO_C >> 12) & 0xf), (((__SUNPRO_C >> 8) & 0xf) * 10) + ((__SUNPRO_C
        >> 4) & 0xf), (__SUNPRO_C & 0xf) * 10)
    - item_type: preproc_def
      name: JSON_HEDLEY_SUNPRO_VERSION
      pos:
        line_end: 488
        line_start: 487
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE((__SUNPRO_C >> 8) & 0xf, (__SUNPRO_C
        >> 4) & 0xf, (__SUNPRO_C) & 0xf)
    - item_type: preproc_def
      name: JSON_HEDLEY_SUNPRO_VERSION
      pos:
        line_end: 490
        line_start: 489
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE((((__SUNPRO_CC >> 16) & 0xf) * 10)
        + ((__SUNPRO_CC >> 12) & 0xf), (((__SUNPRO_CC >> 8) & 0xf) * 10) + ((__SUNPRO_CC
        >> 4) & 0xf), (__SUNPRO_CC & 0xf) * 10)
    - item_type: preproc_def
      name: JSON_HEDLEY_SUNPRO_VERSION
      pos:
        line_end: 492
        line_start: 491
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE((__SUNPRO_CC >> 8) & 0xf, (__SUNPRO_CC
        >> 4) & 0xf, (__SUNPRO_CC) & 0xf)
    - item_type: preproc_def
      name: JSON_HEDLEY_EMSCRIPTEN_VERSION
      pos:
        line_end: 508
        line_start: 507
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__EMSCRIPTEN_major__, __EMSCRIPTEN_minor__,
        __EMSCRIPTEN_tiny__)
    - item_type: preproc_def
      name: JSON_HEDLEY_ARM_VERSION
      pos:
        line_end: 524
        line_start: 523
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__ARMCOMPILER_VERSION / 1000000, (__ARMCOMPILER_VERSION
        % 1000000) / 10000, (__ARMCOMPILER_VERSION % 10000) / 100)
    - item_type: preproc_def
      name: JSON_HEDLEY_ARM_VERSION
      pos:
        line_end: 526
        line_start: 525
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__ARMCC_VERSION / 1000000, (__ARMCC_VERSION
        % 1000000) / 10000, (__ARMCC_VERSION % 10000) / 100)
    - item_type: preproc_def
      name: JSON_HEDLEY_IBM_VERSION
      pos:
        line_end: 542
        line_start: 541
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__ibmxl_version__, __ibmxl_release__,
        __ibmxl_modification__)
    - item_type: preproc_def
      name: JSON_HEDLEY_IBM_VERSION
      pos:
        line_end: 544
        line_start: 543
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__xlC__ >> 8, __xlC__ & 0xff, (__xlC_ver__
        >> 8) & 0xff)
    - item_type: preproc_def
      name: JSON_HEDLEY_IBM_VERSION
      pos:
        line_end: 546
        line_start: 545
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__xlC__ >> 8, __xlC__ & 0xff, 0)
    - item_type: preproc_def
      name: JSON_HEDLEY_TI_VERSION
      pos:
        line_end: 569
        line_start: 568
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__TI_COMPILER_VERSION__ / 1000000,
        (__TI_COMPILER_VERSION__ % 1000000) / 1000, (__TI_COMPILER_VERSION__ % 1000))
    - item_type: preproc_def
      name: JSON_HEDLEY_TI_CL2000_VERSION
      pos:
        line_end: 586
        line_start: 585
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__TI_COMPILER_VERSION__ / 1000000,
        (__TI_COMPILER_VERSION__ % 1000000) / 1000, (__TI_COMPILER_VERSION__ % 1000))
    - item_type: preproc_def
      name: JSON_HEDLEY_TI_CL430_VERSION
      pos:
        line_end: 602
        line_start: 601
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__TI_COMPILER_VERSION__ / 1000000,
        (__TI_COMPILER_VERSION__ % 1000000) / 1000, (__TI_COMPILER_VERSION__ % 1000))
    - item_type: preproc_def
      name: JSON_HEDLEY_TI_ARMCL_VERSION
      pos:
        line_end: 618
        line_start: 617
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__TI_COMPILER_VERSION__ / 1000000,
        (__TI_COMPILER_VERSION__ % 1000000) / 1000, (__TI_COMPILER_VERSION__ % 1000))
    - item_type: preproc_def
      name: JSON_HEDLEY_TI_CL6X_VERSION
      pos:
        line_end: 634
        line_start: 633
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__TI_COMPILER_VERSION__ / 1000000,
        (__TI_COMPILER_VERSION__ % 1000000) / 1000, (__TI_COMPILER_VERSION__ % 1000))
    - item_type: preproc_def
      name: JSON_HEDLEY_TI_CL7X_VERSION
      pos:
        line_end: 650
        line_start: 649
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__TI_COMPILER_VERSION__ / 1000000,
        (__TI_COMPILER_VERSION__ % 1000000) / 1000, (__TI_COMPILER_VERSION__ % 1000))
    - item_type: preproc_def
      name: JSON_HEDLEY_TI_CLPRU_VERSION
      pos:
        line_end: 666
        line_start: 665
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__TI_COMPILER_VERSION__ / 1000000,
        (__TI_COMPILER_VERSION__ % 1000000) / 1000, (__TI_COMPILER_VERSION__ % 1000))
    - item_type: preproc_def
      name: JSON_HEDLEY_CRAY_VERSION
      pos:
        line_end: 683
        line_start: 682
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(_RELEASE_MAJOR, _RELEASE_MINOR, _RELEASE_PATCHLEVEL)
    - item_type: preproc_def
      name: JSON_HEDLEY_CRAY_VERSION
      pos:
        line_end: 685
        line_start: 684
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(_RELEASE_MAJOR, _RELEASE_MINOR, 0)
    - item_type: preproc_def
      name: JSON_HEDLEY_IAR_VERSION
      pos:
        line_end: 703
        line_start: 702
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE((__VER__ / 1000000), ((__VER__ / 1000)
        % 1000), (__VER__ % 1000))
    - item_type: preproc_def
      name: JSON_HEDLEY_IAR_VERSION
      pos:
        line_end: 705
        line_start: 704
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__VER__ / 100, __VER__ % 100, 0)
    - item_type: preproc_def
      name: JSON_HEDLEY_TINYC_VERSION
      pos:
        line_end: 722
        line_start: 721
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__TINYC__ / 1000, (__TINYC__ / 100)
        % 10, __TINYC__ % 100)
    - item_type: preproc_def
      name: JSON_HEDLEY_DMC_VERSION
      pos:
        line_end: 738
        line_start: 737
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__DMC__ >> 8, (__DMC__ >> 4) & 0xf,
        __DMC__ & 0xf)
    - item_type: preproc_def
      name: JSON_HEDLEY_COMPCERT_VERSION
      pos:
        line_end: 754
        line_start: 753
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__COMPCERT_VERSION__ / 10000, (__COMPCERT_VERSION__
        / 100) % 100, __COMPCERT_VERSION__ % 100)
    - item_type: preproc_def
      name: JSON_HEDLEY_PELLES_VERSION
      pos:
        line_end: 770
        line_start: 769
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__POCC__ / 100, __POCC__ % 100, 0)
    - item_type: preproc_def
      name: JSON_HEDLEY_MCST_LCC_VERSION
      pos:
        line_end: 786
        line_start: 785
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_VERSION_ENCODE(__LCC__ / 100, __LCC__ % 100, __LCC_MINOR__)
    - item_type: preproc_def
      name: JSON_HEDLEY_GCC_VERSION
      pos:
        line_end: 817
        line_start: 816
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_GNUC_VERSION
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_PUSH
      pos:
        line_end: 1073
        line_start: 1072
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("clang diagnostic push")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_POP
      pos:
        line_end: 1074
        line_start: 1073
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("clang diagnostic pop")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_PUSH
      pos:
        line_end: 1076
        line_start: 1075
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("warning(push)")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_POP
      pos:
        line_end: 1077
        line_start: 1076
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("warning(pop)")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_PUSH
      pos:
        line_end: 1079
        line_start: 1078
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("GCC diagnostic push")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_POP
      pos:
        line_end: 1080
        line_start: 1079
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("GCC diagnostic pop")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_PUSH
      pos:
        line_end: 1084
        line_start: 1083
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __pragma(warning(push))
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_POP
      pos:
        line_end: 1085
        line_start: 1084
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __pragma(warning(pop))
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_PUSH
      pos:
        line_end: 1087
        line_start: 1086
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("push")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_POP
      pos:
        line_end: 1088
        line_start: 1087
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("pop")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_PUSH
      pos:
        line_end: 1096
        line_start: 1095
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_push")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_POP
      pos:
        line_end: 1097
        line_start: 1096
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_pop")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_PUSH
      pos:
        line_end: 1099
        line_start: 1098
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("warning(push)")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_POP
      pos:
        line_end: 1100
        line_start: 1099
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("warning(pop)")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED
      pos:
        line_end: 1206
        line_start: 1205
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("clang diagnostic ignored \"-Wdeprecated-declarations\"")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED
      pos:
        line_end: 1208
        line_start: 1207
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("warning(disable:1478 1786)")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED
      pos:
        line_end: 1210
        line_start: 1209
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __pragma(warning(disable:1478 1786))
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED
      pos:
        line_end: 1212
        line_start: 1211
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_suppress 1215,1216,1444,1445")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED
      pos:
        line_end: 1214
        line_start: 1213
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_suppress 1215,1444")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED
      pos:
        line_end: 1216
        line_start: 1215
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED
      pos:
        line_end: 1218
        line_start: 1217
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __pragma(warning(disable:4996))
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED
      pos:
        line_end: 1220
        line_start: 1219
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_suppress 1215,1444")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED
      pos:
        line_end: 1233
        line_start: 1232
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_suppress 1291,1718")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED
      pos:
        line_end: 1235
        line_start: 1234
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("error_messages(off,E_DEPRECATED_ATT,E_DEPRECATED_ATT_MESS)")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED
      pos:
        line_end: 1237
        line_start: 1236
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("error_messages(off,symdeprecated,symdeprecated2)")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED
      pos:
        line_end: 1239
        line_start: 1238
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_suppress=Pe1444,Pe1215")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_DEPRECATED
      pos:
        line_end: 1241
        line_start: 1240
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("warn(disable:2241)")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS
      pos:
        line_end: 1250
        line_start: 1249
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("clang diagnostic ignored \"-Wunknown-pragmas\"")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS
      pos:
        line_end: 1252
        line_start: 1251
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("warning(disable:161)")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS
      pos:
        line_end: 1254
        line_start: 1253
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __pragma(warning(disable:161))
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS
      pos:
        line_end: 1256
        line_start: 1255
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_suppress 1675")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS
      pos:
        line_end: 1258
        line_start: 1257
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("GCC diagnostic ignored \"-Wunknown-pragmas\"")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS
      pos:
        line_end: 1260
        line_start: 1259
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __pragma(warning(disable:4068))
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS
      pos:
        line_end: 1266
        line_start: 1265
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_suppress 163")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS
      pos:
        line_end: 1268
        line_start: 1267
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_suppress 163")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS
      pos:
        line_end: 1270
        line_start: 1269
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_suppress=Pe161")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_PRAGMAS
      pos:
        line_end: 1272
        line_start: 1271
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_suppress 161")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES
      pos:
        line_end: 1281
        line_start: 1280
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("clang diagnostic ignored \"-Wunknown-attributes\"")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES
      pos:
        line_end: 1283
        line_start: 1282
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES
      pos:
        line_end: 1285
        line_start: 1284
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("warning(disable:1292)")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES
      pos:
        line_end: 1287
        line_start: 1286
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __pragma(warning(disable:1292))
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES
      pos:
        line_end: 1289
        line_start: 1288
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __pragma(warning(disable:5030))
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES
      pos:
        line_end: 1291
        line_start: 1290
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_suppress 1097,1098")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES
      pos:
        line_end: 1293
        line_start: 1292
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_suppress 1097")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES
      pos:
        line_end: 1295
        line_start: 1294
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("error_messages(off,attrskipunsup)")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES
      pos:
        line_end: 1300
        line_start: 1299
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_suppress 1173")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES
      pos:
        line_end: 1302
        line_start: 1301
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_suppress=Pe1097")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNKNOWN_CPP_ATTRIBUTES
      pos:
        line_end: 1304
        line_start: 1303
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_suppress 1097")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CAST_QUAL
      pos:
        line_end: 1313
        line_start: 1312
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("clang diagnostic ignored \"-Wcast-qual\"")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CAST_QUAL
      pos:
        line_end: 1315
        line_start: 1314
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("warning(disable:2203 2331)")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CAST_QUAL
      pos:
        line_end: 1317
        line_start: 1316
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("GCC diagnostic ignored \"-Wcast-qual\"")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION
      pos:
        line_end: 1326
        line_start: 1325
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("clang diagnostic ignored \"-Wunused-function\"")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION
      pos:
        line_end: 1328
        line_start: 1327
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("GCC diagnostic ignored \"-Wunused-function\"")
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION
      pos:
        line_end: 1330
        line_start: 1329
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __pragma(warning(disable:4505))
    - item_type: preproc_def
      name: JSON_HEDLEY_DIAGNOSTIC_DISABLE_UNUSED_FUNCTION
      pos:
        line_end: 1332
        line_start: 1331
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("diag_suppress 3142")
    - item_type: preproc_def
      name: JSON_HEDLEY_WARN_UNUSED_RESULT
      pos:
        line_end: 1436
        line_start: 1435
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute__((__warn_unused_result__))
    - item_type: preproc_def
      name: JSON_HEDLEY_WARN_UNUSED_RESULT
      pos:
        line_end: 1439
        line_start: 1438
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_([[nodiscard]])
    - item_type: preproc_def
      name: JSON_HEDLEY_WARN_UNUSED_RESULT
      pos:
        line_end: 1442
        line_start: 1441
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_([[nodiscard]])
    - item_type: preproc_def
      name: JSON_HEDLEY_WARN_UNUSED_RESULT
      pos:
        line_end: 1445
        line_start: 1444
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Check_return_
    - item_type: preproc_def
      name: JSON_HEDLEY_NO_RETURN
      pos:
        line_end: 1470
        line_start: 1469
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __noreturn
    - item_type: preproc_def
      name: JSON_HEDLEY_NO_RETURN
      pos:
        line_end: 1474
        line_start: 1473
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute__((__noreturn__))
    - item_type: preproc_def
      name: JSON_HEDLEY_NO_RETURN
      pos:
        line_end: 1476
        line_start: 1475
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Noreturn
    - item_type: preproc_def
      name: JSON_HEDLEY_NO_RETURN
      pos:
        line_end: 1478
        line_start: 1477
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_([[noreturn]])
    - item_type: preproc_def
      name: JSON_HEDLEY_NO_RETURN
      pos:
        line_end: 1497
        line_start: 1496
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute__((__noreturn__))
    - item_type: preproc_def
      name: JSON_HEDLEY_NO_RETURN
      pos:
        line_end: 1499
        line_start: 1498
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("does_not_return")
    - item_type: preproc_def
      name: JSON_HEDLEY_NO_RETURN
      pos:
        line_end: 1503
        line_start: 1502
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __declspec(noreturn)
    - item_type: preproc_def
      name: JSON_HEDLEY_NO_RETURN
      pos:
        line_end: 1505
        line_start: 1504
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("FUNC_NEVER_RETURNS;")
    - item_type: preproc_def
      name: JSON_HEDLEY_NO_RETURN
      pos:
        line_end: 1507
        line_start: 1506
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute((noreturn))
    - item_type: preproc_def
      name: JSON_HEDLEY_NO_RETURN
      pos:
        line_end: 1509
        line_start: 1508
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __declspec(noreturn)
    - item_type: preproc_def
      name: JSON_HEDLEY_NO_ESCAPE
      pos:
        line_end: 1518
        line_start: 1517
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute__((__noescape__))
    - item_type: preproc_def
      name: JSON_HEDLEY_CONSTEXPR
      pos:
        line_end: 1647
        line_start: 1646
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_(constexpr)
    - item_type: preproc_def
      name: JSON_HEDLEY_MALLOC
      pos:
        line_end: 1742
        line_start: 1741
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute__((__malloc__))
    - item_type: preproc_def
      name: JSON_HEDLEY_MALLOC
      pos:
        line_end: 1744
        line_start: 1743
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("returns_new_memory")
    - item_type: preproc_def
      name: JSON_HEDLEY_MALLOC
      pos:
        line_end: 1748
        line_start: 1747
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __declspec(restrict)
    - item_type: preproc_def
      name: JSON_HEDLEY_PURE
      pos:
        line_end: 1776
        line_start: 1775
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute__((__pure__))
    - item_type: preproc_def
      name: JSON_HEDLEY_PURE
      pos:
        line_end: 1778
        line_start: 1777
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("does_not_write_global_data")
    - item_type: preproc_def
      name: JSON_HEDLEY_PURE
      pos:
        line_end: 1785
        line_start: 1784
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("FUNC_IS_PURE;")
    - item_type: preproc_def
      name: JSON_HEDLEY_CONST
      pos:
        line_end: 1813
        line_start: 1812
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute__((__const__))
    - item_type: preproc_def
      name: JSON_HEDLEY_CONST
      pos:
        line_end: 1816
        line_start: 1815
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("no_side_effect")
    - item_type: preproc_def
      name: JSON_HEDLEY_CONST
      pos:
        line_end: 1818
        line_start: 1817
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_PURE
    - item_type: preproc_def
      name: JSON_HEDLEY_RESTRICT
      pos:
        line_end: 1825
        line_start: 1824
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: restrict
    - item_type: preproc_def
      name: JSON_HEDLEY_RESTRICT
      pos:
        line_end: 1842
        line_start: 1841
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __restrict
    - item_type: preproc_def
      name: JSON_HEDLEY_RESTRICT
      pos:
        line_end: 1844
        line_start: 1843
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Restrict
    - item_type: preproc_def
      name: JSON_HEDLEY_INLINE
      pos:
        line_end: 1855
        line_start: 1854
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: inline
    - item_type: preproc_def
      name: JSON_HEDLEY_INLINE
      pos:
        line_end: 1859
        line_start: 1858
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __inline__
    - item_type: preproc_def
      name: JSON_HEDLEY_INLINE
      pos:
        line_end: 1871
        line_start: 1870
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __inline
    - item_type: preproc_def
      name: JSON_HEDLEY_ALWAYS_INLINE
      pos:
        line_end: 1899
        line_start: 1898
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute__((__always_inline__)) JSON_HEDLEY_INLINE
    - item_type: preproc_def
      name: JSON_HEDLEY_ALWAYS_INLINE
      pos:
        line_end: 1903
        line_start: 1902
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __forceinline
    - item_type: preproc_def
      name: JSON_HEDLEY_ALWAYS_INLINE
      pos:
        line_end: 1913
        line_start: 1912
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("FUNC_ALWAYS_INLINE;")
    - item_type: preproc_def
      name: JSON_HEDLEY_ALWAYS_INLINE
      pos:
        line_end: 1915
        line_start: 1914
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("inline=forced")
    - item_type: preproc_def
      name: JSON_HEDLEY_ALWAYS_INLINE
      pos:
        line_end: 1917
        line_start: 1916
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_INLINE
    - item_type: preproc_def
      name: JSON_HEDLEY_NEVER_INLINE
      pos:
        line_end: 1943
        line_start: 1942
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute__((__noinline__))
    - item_type: preproc_def
      name: JSON_HEDLEY_NEVER_INLINE
      pos:
        line_end: 1947
        line_start: 1946
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __declspec(noinline)
    - item_type: preproc_def
      name: JSON_HEDLEY_NEVER_INLINE
      pos:
        line_end: 1949
        line_start: 1948
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("noinline")
    - item_type: preproc_def
      name: JSON_HEDLEY_NEVER_INLINE
      pos:
        line_end: 1951
        line_start: 1950
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("FUNC_CANNOT_INLINE;")
    - item_type: preproc_def
      name: JSON_HEDLEY_NEVER_INLINE
      pos:
        line_end: 1953
        line_start: 1952
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Pragma("inline=never")
    - item_type: preproc_def
      name: JSON_HEDLEY_NEVER_INLINE
      pos:
        line_end: 1955
        line_start: 1954
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute((noinline))
    - item_type: preproc_def
      name: JSON_HEDLEY_NEVER_INLINE
      pos:
        line_end: 1957
        line_start: 1956
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __declspec(noinline)
    - item_type: preproc_def
      name: JSON_HEDLEY_PUBLIC
      pos:
        line_end: 1973
        line_start: 1972
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __declspec(dllexport)
    - item_type: preproc_def
      name: JSON_HEDLEY_IMPORT
      pos:
        line_end: 1974
        line_start: 1973
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __declspec(dllimport)
    - item_type: preproc_def
      name: JSON_HEDLEY_PRIVATE
      pos:
        line_end: 1991
        line_start: 1990
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute__((__visibility__("hidden")))
    - item_type: preproc_def
      name: JSON_HEDLEY_PUBLIC
      pos:
        line_end: 1992
        line_start: 1991
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute__((__visibility__("default")))
    - item_type: preproc_def
      name: JSON_HEDLEY_IMPORT
      pos:
        line_end: 1997
        line_start: 1996
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: extern
    - item_type: preproc_def
      name: JSON_HEDLEY_NO_THROW
      pos:
        line_end: 2008
        line_start: 2007
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute__((__nothrow__))
    - item_type: preproc_def
      name: JSON_HEDLEY_NO_THROW
      pos:
        line_end: 2013
        line_start: 2012
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __declspec(nothrow)
    - item_type: preproc_def
      name: JSON_HEDLEY_FALL_THROUGH
      pos:
        line_end: 2025
        line_start: 2024
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute__((__fallthrough__))
    - item_type: preproc_def
      name: JSON_HEDLEY_FALL_THROUGH
      pos:
        line_end: 2027
        line_start: 2026
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_([[clang::fallthrough]])
    - item_type: preproc_def
      name: JSON_HEDLEY_FALL_THROUGH
      pos:
        line_end: 2029
        line_start: 2028
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_([[fallthrough]])
    - item_type: preproc_def
      name: JSON_HEDLEY_FALL_THROUGH
      pos:
        line_end: 2031
        line_start: 2030
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __fallthrough
    - item_type: preproc_def
      name: JSON_HEDLEY_RETURNS_NON_NULL
      pos:
        line_end: 2043
        line_start: 2042
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute__((__returns_nonnull__))
    - item_type: preproc_def
      name: JSON_HEDLEY_RETURNS_NON_NULL
      pos:
        line_end: 2045
        line_start: 2044
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: _Ret_notnull_
    - item_type: preproc_def
      name: JSON_HEDLEY_BEGIN_C_DECLS
      pos:
        line_end: 2164
        line_start: 2163
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: extern "C" {
    - item_type: preproc_def
      name: JSON_HEDLEY_END_C_DECLS
      pos:
        line_end: 2165
        line_start: 2164
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '}'
    - item_type: preproc_def
      name: JSON_HEDLEY_C_DECL
      pos:
        line_end: 2166
        line_start: 2165
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: extern "C"
    - item_type: preproc_def
      name: JSON_HEDLEY_NULL
      pos:
        line_end: 2199
        line_start: 2198
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_DIAGNOSTIC_DISABLE_CPP98_COMPAT_WRAP_(nullptr)
    - item_type: preproc_def
      name: JSON_HEDLEY_NULL
      pos:
        line_end: 2201
        line_start: 2200
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: 'NULL'
    - item_type: preproc_def
      name: JSON_HEDLEY_NULL
      pos:
        line_end: 2203
        line_start: 2202
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_HEDLEY_STATIC_CAST(void*, 0)
    - item_type: preproc_def
      name: JSON_HEDLEY_NULL
      pos:
        line_end: 2206
        line_start: 2205
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: 'NULL'
    - item_type: preproc_def
      name: JSON_HEDLEY_NULL
      pos:
        line_end: 2208
        line_start: 2207
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: ((void*) 0)
    - item_type: preproc_def
      name: JSON_HEDLEY_FLAGS
      pos:
        line_end: 2287
        line_start: 2286
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __attribute__((__flag_enum__))
    - item_type: preproc_def
      name: JSON_HEDLEY_EMPTY_BASES
      pos:
        line_end: 2312
        line_start: 2311
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: __declspec(empty_bases)
    - item_type: preproc_def
      name: JSON_HAS_FILESYSTEM
      pos:
        line_end: 2411
        line_start: 2410
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: JSON_HAS_EXPERIMENTAL_FILESYSTEM
      pos:
        line_end: 2413
        line_start: 2412
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: JSON_HAS_EXPERIMENTAL_FILESYSTEM
      pos:
        line_end: 2415
        line_start: 2414
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: JSON_HAS_FILESYSTEM
      pos:
        line_end: 2417
        line_start: 2416
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: JSON_HAS_EXPERIMENTAL_FILESYSTEM
      pos:
        line_end: 2419
        line_start: 2418
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: JSON_HAS_EXPERIMENTAL_FILESYSTEM
      pos:
        line_end: 2461
        line_start: 2460
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: JSON_HAS_FILESYSTEM
      pos:
        line_end: 2465
        line_start: 2464
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: JSON_HAS_THREE_WAY_COMPARISON
      pos:
        line_end: 2471
        line_start: 2470
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: JSON_HAS_THREE_WAY_COMPARISON
      pos:
        line_end: 2473
        line_start: 2472
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: JSON_HAS_RANGES
      pos:
        line_end: 2480
        line_start: 2479
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: JSON_HAS_RANGES
      pos:
        line_end: 2482
        line_start: 2481
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: JSON_HAS_RANGES
      pos:
        line_end: 2484
        line_start: 2483
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: JSON_HAS_STATIC_RTTI
      pos:
        line_end: 2490
        line_start: 2489
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: JSON_HAS_STATIC_RTTI
      pos:
        line_end: 2492
        line_start: 2491
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: JSON_INLINE_VARIABLE
      pos:
        line_end: 2497
        line_start: 2496
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: inline
    - item_type: preproc_def
      name: JSON_NO_UNIQUE_ADDRESS
      pos:
        line_end: 2503
        line_start: 2502
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '[[no_unique_address]]'
    - item_type: preproc_def
      name: JSON_TRY
      pos:
        line_end: 2518
        line_start: 2517
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: try
    - item_type: preproc_def
      name: JSON_TRY
      pos:
        line_end: 2524
        line_start: 2523
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: if(true)
    - item_type: preproc_def
      name: JSON_THROW
      pos:
        line_end: 2532
        line_start: 2531
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_THROW_USER
    - item_type: preproc_def
      name: JSON_TRY
      pos:
        line_end: 2536
        line_start: 2535
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_TRY_USER
    - item_type: preproc_def
      name: JSON_CATCH
      pos:
        line_end: 2540
        line_start: 2539
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_CATCH_USER
    - item_type: preproc_def
      name: JSON_INTERNAL_CATCH
      pos:
        line_end: 2542
        line_start: 2541
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_CATCH_USER
    - item_type: preproc_def
      name: JSON_INTERNAL_CATCH
      pos:
        line_end: 2546
        line_start: 2545
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: JSON_INTERNAL_CATCH_USER
    - item_type: preproc_def
      name: JSON_PRIVATE_UNLESS_TESTED
      pos:
        line_end: 2557
        line_start: 2556
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: public
    - item_type: preproc_def
      name: JSON_PRIVATE_UNLESS_TESTED
      pos:
        line_end: 2559
        line_start: 2558
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: private
    - item_type: preproc_def
      name: NLOHMANN_BASIC_JSON_TPL_DECLARATION
      pos:
        line_end: 2604
        line_start: 2595
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: "template<template<typename, typename, typename...> class ObjectType,
        \  \\\n             template<typename, typename...> class ArrayType,              \\\n
        \            class StringType, class BooleanType, class NumberIntegerType,
        \\\n             class NumberUnsignedType, class NumberFloatType,              \\\n
        \            template<typename> class AllocatorType,                       \\\n
        \            template<typename, typename = void> class JSONSerializer,     \\\n
        \            class BinaryType,                                             \\\n
        \            class CustomBaseClass>"
    - item_type: preproc_def
      name: NLOHMANN_BASIC_JSON_TPL
      pos:
        line_end: 2609
        line_start: 2605
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: "basic_json<ObjectType, ArrayType, StringType, BooleanType,             \\\n
        \   NumberIntegerType, NumberUnsignedType, NumberFloatType,                \\\n
        \   AllocatorType, JSONSerializer, BinaryType, CustomBaseClass>"
    - item_type: preproc_def
      name: JSON_USE_IMPLICIT_CONVERSIONS
      pos:
        line_end: 2819
        line_start: 2818
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: JSON_EXPLICIT
      pos:
        line_end: 2825
        line_start: 2824
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: explicit
    - item_type: preproc_def
      name: JSON_DISABLE_ENUM_SERIALIZATION
      pos:
        line_end: 2829
        line_start: 2828
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: JSON_USE_GLOBAL_UDLS
      pos:
        line_end: 2833
        line_start: 2832
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: JSON_BINARY_READER_MAKE_BJD_OPTIMIZED_TYPE_MARKERS_
      pos:
        line_end: 12117
        line_start: 12115
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: make_array<char_int_type>('F', 'H', 'N', 'S', 'T', 'Z', '[',
        '{')
    - item_type: preproc_def
      name: JSON_BINARY_READER_MAKE_BJD_TYPES_MAP_
      pos:
        line_end: 12131
        line_start: 12118
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
      type_or_value: "make_array<bjd_type>(                      \\\n    bjd_type{'C',
        \"char\"},                     \\\n    bjd_type{'D', \"double\"},                   \\\n
        \   bjd_type{'I', \"int16\"},                    \\\n    bjd_type{'L', \"int64\"},
        \                   \\\n    bjd_type{'M', \"uint64\"},                   \\\n
        \   bjd_type{'U', \"uint8\"},                    \\\n    bjd_type{'d', \"single\"},
        \                  \\\n    bjd_type{'i', \"int8\"},                     \\\n
        \   bjd_type{'l', \"int32\"},                    \\\n    bjd_type{'m', \"uint32\"},
        \                  \\\n    bjd_type{'u', \"uint16\"})"
    structs:
    - fields: []
      item_type: struct
      name: make_void
      pos:
        line_end: 253
        line_start: 250
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: nonesuch
      pos:
        line_end: 273
        line_start: 265
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: detector
      pos:
        line_end: 283
        line_start: 279
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: detector<Default, void_t<Op<Args...>>, Op, Args...>
      pos:
        line_end: 290
        line_start: 286
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_detected_lazy
      pos:
        line_end: 296
        line_start: 296
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: chars_read_total
        type: std::size_t
      - name: chars_read_current_line
        type: std::size_t
      - name: lines_read
        type: std::size_t
      item_type: struct
      name: position_t
      pos:
        line_end: 3048
        line_start: 3034
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: integer_sequence
      pos:
        line_end: 3128
        line_start: 3121
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: Extend<integer_sequence<T, Ints...>, SeqSize, 0>
      pos:
        line_end: 3149
        line_start: 3146
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: Extend<integer_sequence<T, Ints...>, SeqSize, 1>
      pos:
        line_end: 3155
        line_start: 3152
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: Gen
      pos:
        line_end: 3164
        line_start: 3160
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: Gen<T, 0>
      pos:
        line_end: 3170
        line_start: 3167
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: Extend<integer_sequence<T, Ints...>, SeqSize, 0>
      pos:
        line_end: 3149
        line_start: 3146
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: Extend<integer_sequence<T, Ints...>, SeqSize, 1>
      pos:
        line_end: 3155
        line_start: 3152
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: Gen
      pos:
        line_end: 3164
        line_start: 3160
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: Gen<T, 0>
      pos:
        line_end: 3170
        line_start: 3167
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: priority_tag
      pos:
        line_end: 3205
        line_start: 3205
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: priority_tag<0>
      pos:
        line_end: 3206
        line_start: 3206
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: value
        type: JSON_INLINE_VARIABLE
      item_type: struct
      name: static_const
      pos:
        line_end: 3213
        line_start: 3210
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: iterator_types
      pos:
        line_end: 3271
        line_start: 3271
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: "iterator_types <\n    It,\n    void_t<typename It::difference_type, typename
        It::value_type, typename It::pointer,\n    typename It::reference, typename
        It::iterator_category >>"
      pos:
        line_end: 3284
        line_start: 3274
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: iterator_traits
      pos:
        line_end: 3291
        line_start: 3289
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: iterator_traits < T, enable_if_t < !std::is_pointer<T>::value >>
      pos:
        line_end: 3297
        line_start: 3294
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: iterator_traits<T*, enable_if_t<std::is_object<T>::value>>
      pos:
        line_end: 3307
        line_start: 3300
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_basic_json
      pos:
        line_end: 3462
        line_start: 3462
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_basic_json_context
      pos:
        line_end: 3475
        line_start: 3471
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_json_ref
      pos:
        line_end: 3485
        line_start: 3485
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_json_ref<json_ref<T>>
      pos:
        line_end: 3488
        line_start: 3488
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: has_from_json
      pos:
        line_end: 3526
        line_start: 3526
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: is_getable
      pos:
        line_end: 3536
        line_start: 3533
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: has_from_json < BasicJsonType, T, enable_if_t < !is_basic_json<T>::value
        >>
      pos:
        line_end: 3546
        line_start: 3539
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: has_non_default_from_json
      pos:
        line_end: 3551
        line_start: 3551
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: has_non_default_from_json < BasicJsonType, T, enable_if_t < !is_basic_json<T>::value
        >>
      pos:
        line_end: 3561
        line_start: 3554
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: has_to_json
      pos:
        line_end: 3566
        line_start: 3566
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: has_to_json < BasicJsonType, T, enable_if_t < !is_basic_json<T>::value
        >>
      pos:
        line_end: 3576
        line_start: 3569
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: has_key_compare
      pos:
        line_end: 3582
        line_start: 3582
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: actual_object_comparator
      pos:
        line_end: 3592
        line_start: 3586
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: char_traits
      pos:
        line_end: 3604
        line_start: 3603
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: char_traits<unsigned char>
      pos:
        line_end: 3628
        line_start: 3608
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: char_traits<signed char>
      pos:
        line_end: 3652
        line_start: 3632
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: conjunction
      pos:
        line_end: 3659
        line_start: 3659
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: conjunction<B>
      pos:
        line_end: 3660
        line_start: 3660
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: conjunction<B, Bn...>
      pos:
        line_end: 3663
        line_start: 3662
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: negation
      pos:
        line_end: 3666
        line_start: 3666
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_default_constructible
      pos:
        line_end: 3672
        line_start: 3672
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_default_constructible<std::pair<T1, T2>>
      pos:
        line_end: 3676
        line_start: 3675
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_default_constructible<const std::pair<T1, T2>>
      pos:
        line_end: 3680
        line_start: 3679
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_default_constructible<std::tuple<Ts...>>
      pos:
        line_end: 3684
        line_start: 3683
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_default_constructible<const std::tuple<Ts...>>
      pos:
        line_end: 3688
        line_start: 3687
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_constructible
      pos:
        line_end: 3691
        line_start: 3691
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_constructible<std::pair<T1, T2>>
      pos:
        line_end: 3694
        line_start: 3694
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_constructible<const std::pair<T1, T2>>
      pos:
        line_end: 3697
        line_start: 3697
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_constructible<std::tuple<Ts...>>
      pos:
        line_end: 3700
        line_start: 3700
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_constructible<const std::tuple<Ts...>>
      pos:
        line_end: 3703
        line_start: 3703
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_iterator_traits
      pos:
        line_end: 3706
        line_start: 3706
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: value
        type: auto
      item_type: struct
      name: is_iterator_traits<iterator_traits<T>>
      pos:
        line_end: 3721
        line_start: 3709
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: is_iterator_begin
        type: auto
      - name: value
        type: bool
      item_type: struct
      name: is_range
      pos:
        line_end: 3740
        line_start: 3724
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_complete_type
      pos:
        line_end: 3753
        line_start: 3753
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_complete_type<T, decltype(void(sizeof(T)))>
      pos:
        line_end: 3756
        line_start: 3756
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_compatible_object_type_impl
      pos:
        line_end: 3760
        line_start: 3760
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: "is_compatible_object_type_impl <\n    BasicJsonType, CompatibleObjectType,\n
        \   enable_if_t < is_detected<mapped_type_t, CompatibleObjectType>::value&&\n
        \   is_detected<key_type_t, CompatibleObjectType>::value >>"
      pos:
        line_end: 3776
        line_start: 3763
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_compatible_object_type
      pos:
        line_end: 3780
        line_start: 3779
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_constructible_object_type_impl
      pos:
        line_end: 3784
        line_start: 3784
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: "is_constructible_object_type_impl <\n    BasicJsonType, ConstructibleObjectType,\n
        \   enable_if_t < is_detected<mapped_type_t, ConstructibleObjectType>::value&&\n
        \   is_detected<key_type_t, ConstructibleObjectType>::value >>"
      pos:
        line_end: 3808
        line_start: 3787
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_constructible_object_type
      pos:
        line_end: 3813
        line_start: 3811
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: value
        type: auto
      item_type: struct
      name: is_compatible_string_type
      pos:
        line_end: 3820
        line_start: 3816
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: value
        type: auto
      item_type: struct
      name: is_constructible_string_type
      pos:
        line_end: 3837
        line_start: 3823
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_compatible_array_type_impl
      pos:
        line_end: 3840
        line_start: 3840
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: "is_compatible_array_type_impl <\n    BasicJsonType, CompatibleArrayType,\n
        \   enable_if_t <\n    is_detected<iterator_t, CompatibleArrayType>::value&&\n
        \   is_iterator_traits<iterator_traits<detected_t<iterator_t, CompatibleArrayType>>>::value&&\n//
        special case for types like std::filesystem::path whose iterator's value_type
        are themselves\n// c.f. https://github.com/nlohmann/json/pull/3073\n    !std::is_same<CompatibleArrayType,
        detected_t<range_value_t, CompatibleArrayType>>::value >>"
      pos:
        line_end: 3855
        line_start: 3843
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_compatible_array_type
      pos:
        line_end: 3859
        line_start: 3858
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_constructible_array_type_impl
      pos:
        line_end: 3862
        line_start: 3862
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: "is_constructible_array_type_impl <\n    BasicJsonType, ConstructibleArrayType,\n
        \   enable_if_t<std::is_same<ConstructibleArrayType,\n    typename BasicJsonType::value_type>::value
        >>"
      pos:
        line_end: 3869
        line_start: 3865
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: "is_constructible_array_type_impl <\n    BasicJsonType, ConstructibleArrayType,\n
        \   enable_if_t < !std::is_same<ConstructibleArrayType,\n    typename BasicJsonType::value_type>::value&&\n
        \   !is_compatible_string_type<BasicJsonType, ConstructibleArrayType>::value&&\n
        \   is_default_constructible<ConstructibleArrayType>::value&&\n(std::is_move_assignable<ConstructibleArrayType>::value
        ||\n std::is_copy_assignable<ConstructibleArrayType>::value)&&\nis_detected<iterator_t,
        ConstructibleArrayType>::value&&\nis_iterator_traits<iterator_traits<detected_t<iterator_t,
        ConstructibleArrayType>>>::value&&\nis_detected<range_value_t, ConstructibleArrayType>::value&&\n//
        special case for types like std::filesystem::path whose iterator's value_type
        are themselves\n// c.f. https://github.com/nlohmann/json/pull/3073\n!std::is_same<ConstructibleArrayType,
        detected_t<range_value_t, ConstructibleArrayType>>::value&&\n        is_complete_type
        <\n        detected_t<range_value_t, ConstructibleArrayType >>::value >>"
      pos:
        line_end: 3899
        line_start: 3872
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_constructible_array_type
      pos:
        line_end: 3903
        line_start: 3902
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_compatible_integer_type_impl
      pos:
        line_end: 3907
        line_start: 3907
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: value
        type: auto
      item_type: struct
      name: "is_compatible_integer_type_impl <\n    RealIntegerType, CompatibleNumberIntegerType,\n
        \   enable_if_t < std::is_integral<RealIntegerType>::value&&\n    std::is_integral<CompatibleNumberIntegerType>::value&&\n
        \   !std::is_same<bool, CompatibleNumberIntegerType>::value >>"
      pos:
        line_end: 3925
        line_start: 3910
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_compatible_integer_type
      pos:
        line_end: 3930
        line_start: 3928
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_compatible_type_impl
      pos:
        line_end: 3933
        line_start: 3933
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: "is_compatible_type_impl <\n    BasicJsonType, CompatibleType,\n    enable_if_t<is_complete_type<CompatibleType>::value
        >>"
      pos:
        line_end: 3942
        line_start: 3936
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_compatible_type
      pos:
        line_end: 3946
        line_start: 3945
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_constructible_tuple
      pos:
        line_end: 3949
        line_start: 3949
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_constructible_tuple<T1, std::tuple<Args...>>
      pos:
        line_end: 3952
        line_start: 3952
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_json_iterator_of
      pos:
        line_end: 3955
        line_start: 3955
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_json_iterator_of<BasicJsonType, typename BasicJsonType::iterator>
      pos:
        line_end: 3958
        line_start: 3958
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_json_iterator_of<BasicJsonType, typename BasicJsonType::const_iterator>
      pos:
        line_end: 3962
        line_start: 3961
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_specialization_of
      pos:
        line_end: 3966
        line_start: 3966
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_specialization_of<Primary, Primary<Args...>>
      pos:
        line_end: 3969
        line_start: 3969
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_comparable
      pos:
        line_end: 3976
        line_start: 3976
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: 'is_comparable<Compare, A, B, void_t<

        decltype(std::declval<Compare>()(std::declval<A>(), std::declval<B>())),

        decltype(std::declval<Compare>()(std::declval<B>(), std::declval<A>()))

        >>'
      pos:
        line_end: 3982
        line_start: 3979
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_ordered_map
      pos:
        line_end: 4045
        line_start: 4032
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: x[2]
        type: char
      item_type: struct
      name: two
      pos:
        line_end: 4039
        line_start: 4036
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: value_in_range_of_impl2<OfType, T, false, false>
      pos:
        line_end: 4092
        line_start: 4085
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: value_in_range_of_impl2<OfType, T, true, false>
      pos:
        line_end: 4102
        line_start: 4095
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: value_in_range_of_impl2<OfType, T, false, true>
      pos:
        line_end: 4112
        line_start: 4105
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: value_in_range_of_impl2<OfType, T, true, true>
      pos:
        line_end: 4123
        line_start: 4115
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: value_in_range_of_impl1<OfType, T, false>
      pos:
        line_end: 4137
        line_start: 4131
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: value_in_range_of_impl1<OfType, T, true>
      pos:
        line_end: 4146
        line_start: 4140
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_c_string
      pos:
        line_end: 4180
        line_start: 4180
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_transparent
      pos:
        line_end: 4202
        line_start: 4202
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: identity_tag
      pos:
        line_end: 4614
        line_start: 4614
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: from_json_fn
      pos:
        line_end: 5106
        line_start: 5097
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: external_constructor<value_t::boolean>
      pos:
        line_end: 5431
        line_start: 5421
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: external_constructor<value_t::string>
      pos:
        line_end: 5464
        line_start: 5434
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: external_constructor<value_t::binary>
      pos:
        line_end: 5486
        line_start: 5467
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: external_constructor<value_t::number_float>
      pos:
        line_end: 5499
        line_start: 5489
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: external_constructor<value_t::number_unsigned>
      pos:
        line_end: 5512
        line_start: 5502
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: external_constructor<value_t::number_integer>
      pos:
        line_end: 5525
        line_start: 5515
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: external_constructor<value_t::array>
      pos:
        line_end: 5595
        line_start: 5528
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: external_constructor<value_t::object>
      pos:
        line_end: 5633
        line_start: 5598
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: to_json_fn
      pos:
        line_end: 5806
        line_start: 5798
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: adl_serializer
      pos:
        line_end: 5862
        line_start: 5831
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: adl_serializer
      pos:
        line_end: 5862
        line_start: 5831
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: wide_string_input_helper<BaseInputAdapter, 4>
      pos:
        line_end: 6372
        line_start: 6317
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: wide_string_input_helper<BaseInputAdapter, 2>
      pos:
        line_end: 6434
        line_start: 6375
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: iterator_input_adapter_factory
      pos:
        line_end: 6492
        line_start: 6482
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_iterator_of_multibyte
      pos:
        line_end: 6502
        line_start: 6495
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: iterator_input_adapter_factory<IteratorType, enable_if_t<is_iterator_of_multibyte<IteratorType>::value>>
      pos:
        line_end: 6516
        line_start: 6505
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: container_input_adapter_factory
      pos:
        line_end: 6537
        line_start: 6537
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: "container_input_adapter_factory< ContainerType,\n       void_t<decltype(begin(std::declval<ContainerType>()),
        end(std::declval<ContainerType>()))>>"
      pos:
        line_end: 6549
        line_start: 6540
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: container_input_adapter_factory
      pos:
        line_end: 6537
        line_start: 6537
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: "container_input_adapter_factory< ContainerType,\n       void_t<decltype(begin(std::declval<ContainerType>()),
        end(std::declval<ContainerType>()))>>"
      pos:
        line_end: 6549
        line_start: 6540
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: external_constructor<value_t::boolean>
      pos:
        line_end: 5431
        line_start: 5421
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: external_constructor<value_t::string>
      pos:
        line_end: 5464
        line_start: 5434
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: external_constructor<value_t::binary>
      pos:
        line_end: 5486
        line_start: 5467
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: external_constructor<value_t::number_float>
      pos:
        line_end: 5499
        line_start: 5489
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: external_constructor<value_t::number_unsigned>
      pos:
        line_end: 5512
        line_start: 5502
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: external_constructor<value_t::number_integer>
      pos:
        line_end: 5525
        line_start: 5515
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: external_constructor<value_t::array>
      pos:
        line_end: 5595
        line_start: 5528
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: external_constructor<value_t::object>
      pos:
        line_end: 5633
        line_start: 5598
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: to_json_fn
      pos:
        line_end: 5806
        line_start: 5798
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: adl_serializer
      pos:
        line_end: 5862
        line_start: 5831
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: adl_serializer
      pos:
        line_end: 5862
        line_start: 5831
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: wide_string_input_helper<BaseInputAdapter, 4>
      pos:
        line_end: 6372
        line_start: 6317
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: wide_string_input_helper<BaseInputAdapter, 2>
      pos:
        line_end: 6434
        line_start: 6375
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: iterator_input_adapter_factory
      pos:
        line_end: 6492
        line_start: 6482
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_iterator_of_multibyte
      pos:
        line_end: 6502
        line_start: 6495
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: iterator_input_adapter_factory<IteratorType, enable_if_t<is_iterator_of_multibyte<IteratorType>::value>>
      pos:
        line_end: 6516
        line_start: 6505
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: container_input_adapter_factory
      pos:
        line_end: 6537
        line_start: 6537
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: "container_input_adapter_factory< ContainerType,\n       void_t<decltype(begin(std::declval<ContainerType>()),
        end(std::declval<ContainerType>()))>>"
      pos:
        line_end: 6549
        line_start: 6540
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: container_input_adapter_factory
      pos:
        line_end: 6537
        line_start: 6537
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: "container_input_adapter_factory< ContainerType,\n       void_t<decltype(begin(std::declval<ContainerType>()),
        end(std::declval<ContainerType>()))>>"
      pos:
        line_end: 6549
        line_start: 6540
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: is_sax
      pos:
        line_end: 9112
        line_start: 9084
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: is_sax_static_asserts
      pos:
        line_end: 9166
        line_start: 9115
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: object_iterator
        type: typename BasicJsonType::object_t::iterator
      - name: array_iterator
        type: typename BasicJsonType::array_t::iterator
      - name: primitive_iterator
        type: primitive_iterator_t
      item_type: struct
      name: internal_iterator
      pos:
        line_end: 12855
        line_start: 12847
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: json_default_base
      pos:
        line_end: 13787
        line_start: 13787
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: write_character(CharType c)
        type: void
      - name: write_characters(const CharType* s, std::size_t length)
        type: void
      item_type: struct
      name: output_adapter_protocol
      pos:
        line_end: 14954
        line_start: 14943
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: kPrecision
        type: int
      - name: f
        type: std::uint64_t
      - name: e
        type: int
      item_type: struct
      name: diyfp
      pos:
        line_end: 17079
        line_start: 16963
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: w
        type: diyfp
      - name: minus
        type: diyfp
      - name: plus
        type: diyfp
      item_type: struct
      name: boundaries
      pos:
        line_end: 17086
        line_start: 17081
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: f
        type: std::uint64_t
      - name: e
        type: int
      - name: k
        type: int
      item_type: struct
      name: cached_power
      pos:
        line_end: 17225
        line_start: 17220
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: kPrecision
        type: int
      - name: f
        type: std::uint64_t
      - name: e
        type: int
      item_type: struct
      name: diyfp
      pos:
        line_end: 17079
        line_start: 16963
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: w
        type: diyfp
      - name: minus
        type: diyfp
      - name: plus
        type: diyfp
      item_type: struct
      name: boundaries
      pos:
        line_end: 17086
        line_start: 17081
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: f
        type: std::uint64_t
      - name: e
        type: int
      - name: k
        type: int
      item_type: struct
      name: cached_power
      pos:
        line_end: 17225
        line_start: 17220
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields:
      - name: m_type
        type: value_t
      - name: m_value
        type: json_value
      item_type: struct
      name: data
      pos:
        line_end: 23519
        line_start: 23490
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    - fields: []
      item_type: struct
      name: less< ::nlohmann::detail::value_t>
      pos:
        line_end: 24528
        line_start: 24513
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
    typedefs: []
    union:
    - fields:
      - name: '* object'
        type: object_t
      - name: '* array'
        type: array_t
      - name: '* string'
        type: string_t
      - name: '* binary'
        type: binary_t
      - name: boolean
        type: boolean_t
      - name: number_integer
        type: number_integer_t
      - name: number_unsigned
        type: number_unsigned_t
      - name: number_float
        type: number_float_t
      item_type: union
      name: json_value
      pos:
        line_end: 19962
        line_start: 19724
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/json.hpp
- function_names:
  - in_place_type_t
  - bad_any_cast::what
  - any::any
  - any::any
  - any::any
  - ~any()
  - any::any
  - any::any
  - any::any
  - '& operator=(const any& rhs)'
  - '& operator=(any&& rhs) noexcept'
  - '& operator=(ValueType&& value)'
  - any::clear
  - any::empty
  - '& type() const noexcept'
  - any::swap
  - '& type() noexcept'
  - any::destroy
  - any::copy
  - any::move
  - any::swap
  - '& type() noexcept'
  - any::destroy
  - any::copy
  - any::move
  - any::swap
  - any::vtable_for_type
  - any::is_typed
  - any::is_same
  - any::cast
  - any::cast
  - any::do_emplace
  - any::do_emplace
  - any::emplace_construct
  - any::do_construct
  - any::do_construct
  - any::construct
  - detail::any_cast_move_if_true
  - detail::any_cast_move_if_true
  - detail::any_cast_move_if_true
  - detail::any_cast_move_if_true
  - any_cast
  - any_cast
  - any_cast
  - any_cast
  - any_cast
  - swap
  - make_any
  - make_any
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields: []
      item_type: struct
      name: in_place_type_t
      pos:
        line_end: 50
        line_start: 47
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    - fields: []
      item_type: struct
      name: stack_storage_t
      pos:
        line_end: 214
        line_start: 214
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    - fields:
      - name: (*destroy)(storage_union&) noexcept
        type: void
      - name: (*copy)(const storage_union& src, storage_union& dest)
        type: void
      - name: (*move)(storage_union& src, storage_union& dest) noexcept
        type: void
      - name: (*swap)(storage_union& lhs, storage_union& rhs) noexcept
        type: void
      item_type: struct
      name: vtable_type
      pos:
        line_end: 245
        line_start: 221
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    - fields: []
      item_type: struct
      name: vtable_dynamic
      pos:
        line_end: 280
        line_start: 249
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    - fields: []
      item_type: struct
      name: vtable_stack
      pos:
        line_end: 318
        line_start: 284
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    - fields: []
      item_type: struct
      name: requires_allocation
      pos:
        line_end: 327
        line_start: 322
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
    typedefs: []
    union:
    - fields:
      - name: '*               dynamic'
        type: void
      - name: stack
        type: stack_storage_t
      item_type: union
      name: storage_union
      pos:
        line_end: 218
        line_start: 212
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/any.hpp
- function_names:
  - MAGIC_ENUM_ASSERT
  - MAGIC_ENUM_ASSERT
  - MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
  - MAGIC_ENUM_GET_TYPE_NAME_BUILTIN
  - MAGIC_ENUM_GET_ENUM_NAME_BUILTIN
  - MAGIC_ENUM_GET_TYPE_NAME_BUILTIN
  - magic_enum::customize::customize_t::customize_t
  - magic_enum::customize::customize_t::customize_t
  - magic_enum::customize::customize_t::customize_t
  - magic_enum::customize::enum_name
  - magic_enum::customize::enum_type_name
  - magic_enum::customize::customize_t::customize_t
  - magic_enum::customize::customize_t::customize_t
  - magic_enum::customize::customize_t::customize_t
  - magic_enum::customize::enum_name
  - magic_enum::customize::enum_type_name
  - magic_enum::detail::static_str::static_str
  - magic_enum::detail::static_str::static_str
  - magic_enum::detail::static_str::data
  - magic_enum::detail::static_str::size
  - operator string_view() const noexcept
  - magic_enum::detail::static_str::static_str
  - magic_enum::detail::static_str::static_str
  - magic_enum::detail::static_str<0>::static_str
  - magic_enum::detail::static_str<0>::static_str
  - magic_enum::detail::static_str<0>::static_str
  - magic_enum::detail::static_str<0>::data
  - magic_enum::detail::static_str<0>::size
  - operator string_view() const noexcept
  - magic_enum::detail::case_insensitive::to_lower
  - operator()(L lhs, R rhs) const noexcept -> std::enable_if_t<std::is_same_v<std::decay_t<L>,
    char_type> && std::is_same_v<std::decay_t<R>, char_type>, bool>
  - magic_enum::detail::find
  - magic_enum::detail::is_default_predicate
  - magic_enum::detail::is_nothrow_invocable
  - magic_enum::detail::cmp_equal
  - magic_enum::detail::cmp_less
  - magic_enum::detail::log2
  - magic_enum::detail::to_array
  - magic_enum::detail::n
  - magic_enum::detail::type_name
  - magic_enum::detail::n
  - magic_enum::detail::n
  - magic_enum::detail::enum_name
  - magic_enum::detail::is_valid
  - magic_enum::detail::ualue
  - magic_enum::detail::value
  - magic_enum::detail::reflected_min
  - magic_enum::detail::reflected_max
  - MAGIC_ENUM_FOR_EACH_256
  - magic_enum::detail::valid_count
  - MAGIC_ENUM_V
  - magic_enum::detail::valid_count
  - magic_enum::detail::values
  - magic_enum::detail::values
  - magic_enum::detail::subtype
  - magic_enum::detail::subtype
  - magic_enum::detail::names
  - magic_enum::detail::entries
  - magic_enum::detail::is_sparse
  - operator()(Value value) const noexcept
  - operator()(string_view value) const noexcept
  - operator()(string_view value) const noexcept
  - magic_enum::detail::calculate_cases
  - magic_enum::detail::invoke_r
  - magic_enum::detail::has_duplicate
  - MAGIC_ENUM_CASE
  - magic_enum::detail::constexpr_switch
  - magic_enum::detail::static_str::static_str
  - magic_enum::detail::static_str::static_str
  - magic_enum::detail::static_str::data
  - magic_enum::detail::static_str::size
  - operator string_view() const noexcept
  - magic_enum::detail::static_str::static_str
  - magic_enum::detail::static_str::static_str
  - magic_enum::detail::static_str<0>::static_str
  - magic_enum::detail::static_str<0>::static_str
  - magic_enum::detail::static_str<0>::static_str
  - magic_enum::detail::static_str<0>::data
  - magic_enum::detail::static_str<0>::size
  - operator string_view() const noexcept
  - magic_enum::detail::case_insensitive::to_lower
  - operator()(L lhs, R rhs) const noexcept -> std::enable_if_t<std::is_same_v<std::decay_t<L>,
    char_type> && std::is_same_v<std::decay_t<R>, char_type>, bool>
  - magic_enum::detail::find
  - magic_enum::detail::is_default_predicate
  - magic_enum::detail::is_nothrow_invocable
  - magic_enum::detail::cmp_equal
  - magic_enum::detail::cmp_less
  - magic_enum::detail::log2
  - magic_enum::detail::to_array
  - magic_enum::detail::n
  - magic_enum::detail::type_name
  - magic_enum::detail::n
  - magic_enum::detail::n
  - magic_enum::detail::enum_name
  - magic_enum::detail::is_valid
  - magic_enum::detail::ualue
  - magic_enum::detail::value
  - magic_enum::detail::reflected_min
  - magic_enum::detail::reflected_max
  - MAGIC_ENUM_FOR_EACH_256
  - magic_enum::detail::valid_count
  - MAGIC_ENUM_V
  - magic_enum::detail::valid_count
  - magic_enum::detail::values
  - magic_enum::detail::values
  - magic_enum::detail::subtype
  - magic_enum::detail::subtype
  - magic_enum::detail::names
  - magic_enum::detail::entries
  - magic_enum::detail::is_sparse
  - operator()(Value value) const noexcept
  - operator()(string_view value) const noexcept
  - operator()(string_view value) const noexcept
  - magic_enum::detail::calculate_cases
  - magic_enum::detail::invoke_r
  - magic_enum::detail::has_duplicate
  - MAGIC_ENUM_CASE
  - magic_enum::detail::constexpr_switch
  - magic_enum::enum_type_name
  - magic_enum::enum_count
  - magic_enum::enum_value
  - magic_enum::enum_value
  - magic_enum::enum_values
  - magic_enum::enum_integer
  - magic_enum::enum_underlying
  - magic_enum::enum_index
  - magic_enum::enum_index
  - magic_enum::enum_index
  - magic_enum::enum_name
  - magic_enum::enum_name
  - magic_enum::enum_name
  - magic_enum::enum_names
  - magic_enum::enum_entries
  - magic_enum::enum_cast
  - magic_enum::enum_cast
  - magic_enum::enum_contains
  - magic_enum::enum_contains
  - magic_enum::enum_contains
  - magic_enum::enum_contains
  - operator~(E rhs) noexcept
  - operator|(E lhs, E rhs) noexcept
  - operator&(E lhs, E rhs) noexcept
  - operator^(E lhs, E rhs) noexcept
  - '& operator|=(E& lhs, E rhs) noexcept'
  - '& operator&=(E& lhs, E rhs) noexcept'
  - '& operator^=(E& lhs, E rhs) noexcept'
  - operator~(E rhs) noexcept
  - operator|(E lhs, E rhs) noexcept
  - operator&(E lhs, E rhs) noexcept
  - operator^(E lhs, E rhs) noexcept
  - '& operator|=(E& lhs, E rhs) noexcept'
  - '& operator&=(E& lhs, E rhs) noexcept'
  - '& operator^=(E& lhs, E rhs) noexcept'
  - magic_enum::customize::customize_t::customize_t
  - magic_enum::customize::customize_t::customize_t
  - magic_enum::customize::customize_t::customize_t
  - magic_enum::customize::enum_name
  - magic_enum::customize::enum_type_name
  - magic_enum::customize::customize_t::customize_t
  - magic_enum::customize::customize_t::customize_t
  - magic_enum::customize::customize_t::customize_t
  - magic_enum::customize::enum_name
  - magic_enum::customize::enum_type_name
  - magic_enum::detail::static_str::static_str
  - magic_enum::detail::static_str::static_str
  - magic_enum::detail::static_str::data
  - magic_enum::detail::static_str::size
  - operator string_view() const noexcept
  - magic_enum::detail::static_str::static_str
  - magic_enum::detail::static_str::static_str
  - magic_enum::detail::static_str<0>::static_str
  - magic_enum::detail::static_str<0>::static_str
  - magic_enum::detail::static_str<0>::static_str
  - magic_enum::detail::static_str<0>::data
  - magic_enum::detail::static_str<0>::size
  - operator string_view() const noexcept
  - magic_enum::detail::case_insensitive::to_lower
  - operator()(L lhs, R rhs) const noexcept -> std::enable_if_t<std::is_same_v<std::decay_t<L>,
    char_type> && std::is_same_v<std::decay_t<R>, char_type>, bool>
  - magic_enum::detail::find
  - magic_enum::detail::is_default_predicate
  - magic_enum::detail::is_nothrow_invocable
  - magic_enum::detail::cmp_equal
  - magic_enum::detail::cmp_less
  - magic_enum::detail::log2
  - magic_enum::detail::to_array
  - magic_enum::detail::n
  - magic_enum::detail::type_name
  - magic_enum::detail::n
  - magic_enum::detail::n
  - magic_enum::detail::enum_name
  - magic_enum::detail::is_valid
  - magic_enum::detail::ualue
  - magic_enum::detail::value
  - magic_enum::detail::reflected_min
  - magic_enum::detail::reflected_max
  - MAGIC_ENUM_FOR_EACH_256
  - magic_enum::detail::valid_count
  - MAGIC_ENUM_V
  - magic_enum::detail::valid_count
  - magic_enum::detail::values
  - magic_enum::detail::values
  - magic_enum::detail::subtype
  - magic_enum::detail::subtype
  - magic_enum::detail::names
  - magic_enum::detail::entries
  - magic_enum::detail::is_sparse
  - operator()(Value value) const noexcept
  - operator()(string_view value) const noexcept
  - operator()(string_view value) const noexcept
  - magic_enum::detail::calculate_cases
  - magic_enum::detail::invoke_r
  - magic_enum::detail::has_duplicate
  - MAGIC_ENUM_CASE
  - magic_enum::detail::constexpr_switch
  - magic_enum::detail::static_str::static_str
  - magic_enum::detail::static_str::static_str
  - magic_enum::detail::static_str::data
  - magic_enum::detail::static_str::size
  - operator string_view() const noexcept
  - magic_enum::detail::static_str::static_str
  - magic_enum::detail::static_str::static_str
  - magic_enum::detail::static_str<0>::static_str
  - magic_enum::detail::static_str<0>::static_str
  - magic_enum::detail::static_str<0>::static_str
  - magic_enum::detail::static_str<0>::data
  - magic_enum::detail::static_str<0>::size
  - operator string_view() const noexcept
  - magic_enum::detail::case_insensitive::to_lower
  - operator()(L lhs, R rhs) const noexcept -> std::enable_if_t<std::is_same_v<std::decay_t<L>,
    char_type> && std::is_same_v<std::decay_t<R>, char_type>, bool>
  - magic_enum::detail::find
  - magic_enum::detail::is_default_predicate
  - magic_enum::detail::is_nothrow_invocable
  - magic_enum::detail::cmp_equal
  - magic_enum::detail::cmp_less
  - magic_enum::detail::log2
  - magic_enum::detail::to_array
  - magic_enum::detail::n
  - magic_enum::detail::type_name
  - magic_enum::detail::n
  - magic_enum::detail::n
  - magic_enum::detail::enum_name
  - magic_enum::detail::is_valid
  - magic_enum::detail::ualue
  - magic_enum::detail::value
  - magic_enum::detail::reflected_min
  - magic_enum::detail::reflected_max
  - MAGIC_ENUM_FOR_EACH_256
  - magic_enum::detail::valid_count
  - MAGIC_ENUM_V
  - magic_enum::detail::valid_count
  - magic_enum::detail::values
  - magic_enum::detail::values
  - magic_enum::detail::subtype
  - magic_enum::detail::subtype
  - magic_enum::detail::names
  - magic_enum::detail::entries
  - magic_enum::detail::is_sparse
  - operator()(Value value) const noexcept
  - operator()(string_view value) const noexcept
  - operator()(string_view value) const noexcept
  - magic_enum::detail::calculate_cases
  - magic_enum::detail::invoke_r
  - magic_enum::detail::has_duplicate
  - MAGIC_ENUM_CASE
  - magic_enum::detail::constexpr_switch
  - magic_enum::enum_type_name
  - magic_enum::enum_count
  - magic_enum::enum_value
  - magic_enum::enum_value
  - magic_enum::enum_values
  - magic_enum::enum_integer
  - magic_enum::enum_underlying
  - magic_enum::enum_index
  - magic_enum::enum_index
  - magic_enum::enum_index
  - magic_enum::enum_name
  - magic_enum::enum_name
  - magic_enum::enum_name
  - magic_enum::enum_names
  - magic_enum::enum_entries
  - magic_enum::enum_cast
  - magic_enum::enum_cast
  - magic_enum::enum_contains
  - magic_enum::enum_contains
  - magic_enum::enum_contains
  - magic_enum::enum_contains
  - operator~(E rhs) noexcept
  - operator|(E lhs, E rhs) noexcept
  - operator&(E lhs, E rhs) noexcept
  - operator^(E lhs, E rhs) noexcept
  - '& operator|=(E& lhs, E rhs) noexcept'
  - '& operator&=(E& lhs, E rhs) noexcept'
  - '& operator^=(E& lhs, E rhs) noexcept'
  - operator~(E rhs) noexcept
  - operator|(E lhs, E rhs) noexcept
  - operator&(E lhs, E rhs) noexcept
  - operator^(E lhs, E rhs) noexcept
  - '& operator|=(E& lhs, E rhs) noexcept'
  - '& operator&=(E& lhs, E rhs) noexcept'
  - '& operator^=(E& lhs, E rhs) noexcept'
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
  types:
    enum:
    - enumerators:
      - name: default_tag
      - name: invalid_tag
      - name: custom_tag
      item_type: enum
      name: customize_tag
      pos:
        line_end: 180
        line_start: 176
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - enumerators:
      - name: default_tag
      - name: invalid_tag
      - name: custom_tag
      item_type: enum
      name: customize_tag
      pos:
        line_end: 180
        line_start: 176
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - enumerators:
      - name: default_tag
      - name: invalid_tag
      - name: custom_tag
      item_type: enum
      name: customize_tag
      pos:
        line_end: 180
        line_start: 176
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - enumerators:
      - name: default_tag
      - name: invalid_tag
      - name: custom_tag
      item_type: enum
      name: customize_tag
      pos:
        line_end: 180
        line_start: 176
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - enumerators:
      - name: common
      - name: flags
      item_type: enum
      name: enum_subtype
      pos:
        line_end: 647
        line_start: 644
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - enumerators:
      - name: index
      - name: value
      item_type: enum
      name: case_call_t
      pos:
        line_end: 1035
        line_start: 1032
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - enumerators:
      - name: common
      - name: flags
      item_type: enum
      name: enum_subtype
      pos:
        line_end: 647
        line_start: 644
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - enumerators:
      - name: index
      - name: value
      item_type: enum
      name: case_call_t
      pos:
        line_end: 1035
        line_start: 1032
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - enumerators:
      - name: default_tag
      - name: invalid_tag
      - name: custom_tag
      item_type: enum
      name: customize_tag
      pos:
        line_end: 180
        line_start: 176
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - enumerators:
      - name: default_tag
      - name: invalid_tag
      - name: custom_tag
      item_type: enum
      name: customize_tag
      pos:
        line_end: 180
        line_start: 176
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - enumerators:
      - name: default_tag
      - name: invalid_tag
      - name: custom_tag
      item_type: enum
      name: customize_tag
      pos:
        line_end: 180
        line_start: 176
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - enumerators:
      - name: default_tag
      - name: invalid_tag
      - name: custom_tag
      item_type: enum
      name: customize_tag
      pos:
        line_end: 180
        line_start: 176
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - enumerators:
      - name: common
      - name: flags
      item_type: enum
      name: enum_subtype
      pos:
        line_end: 647
        line_start: 644
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - enumerators:
      - name: index
      - name: value
      item_type: enum
      name: case_call_t
      pos:
        line_end: 1035
        line_start: 1032
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - enumerators:
      - name: common
      - name: flags
      item_type: enum
      name: enum_subtype
      pos:
        line_end: 647
        line_start: 644
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - enumerators:
      - name: index
      - name: value
      item_type: enum
      name: case_call_t
      pos:
        line_end: 1035
        line_start: 1032
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    preproc_defs:
    - item_type: preproc_def
      name: MAGIC_ENUM_VERSION_MAJOR
      pos:
        line_end: 35
        line_start: 34
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: MAGIC_ENUM_VERSION_MINOR
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
      type_or_value: '9'
    - item_type: preproc_def
      name: MAGIC_ENUM_VERSION_PATCH
      pos:
        line_end: 37
        line_start: 36
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
      type_or_value: '5'
    - item_type: preproc_def
      name: MAGIC_ENUM_SUPPORTED
      pos:
        line_end: 88
        line_start: 87
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: MAGIC_ENUM_SUPPORTED_ALIASES
      pos:
        line_end: 94
        line_start: 93
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: MAGIC_ENUM_RANGE_MIN
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
      type_or_value: '-128'
    - item_type: preproc_def
      name: MAGIC_ENUM_RANGE_MAX
      pos:
        line_end: 106
        line_start: 105
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
      type_or_value: '127'
    - item_type: preproc_def
      name: MAGIC_ENUM_ARRAY_CONSTEXPR
      pos:
        line_end: 405
        line_start: 404
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: MAGIC_ENUM_VS_2017_WORKAROUND
      pos:
        line_end: 560
        line_start: 559
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: MAGIC_ENUM_ARRAY_CONSTEXPR
      pos:
        line_end: 405
        line_start: 404
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: MAGIC_ENUM_VS_2017_WORKAROUND
      pos:
        line_end: 560
        line_start: 559
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: MAGIC_ENUM_ARRAY_CONSTEXPR
      pos:
        line_end: 405
        line_start: 404
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: MAGIC_ENUM_VS_2017_WORKAROUND
      pos:
        line_end: 560
        line_start: 559
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: MAGIC_ENUM_ARRAY_CONSTEXPR
      pos:
        line_end: 405
        line_start: 404
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: MAGIC_ENUM_VS_2017_WORKAROUND
      pos:
        line_end: 560
        line_start: 559
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
      type_or_value: '1'
    structs:
    - fields:
      - name: min
        type: int
      - name: max
        type: int
      item_type: struct
      name: enum_range
      pos:
        line_end: 170
        line_start: 167
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields:
      - name: min
        type: int
      - name: max
        type: int
      item_type: struct
      name: enum_range
      pos:
        line_end: 170
        line_start: 167
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: has_is_flags
      pos:
        line_end: 229
        line_start: 229
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: has_is_flags<T, std::void_t<decltype(customize::enum_range<T>::is_flags)>>
      pos:
        line_end: 232
        line_start: 232
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: range_min
      pos:
        line_end: 235
        line_start: 235
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: range_min<T, std::void_t<decltype(customize::enum_range<T>::min)>>
      pos:
        line_end: 238
        line_start: 238
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: range_max
      pos:
        line_end: 241
        line_start: 241
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: range_max<T, std::void_t<decltype(customize::enum_range<T>::max)>>
      pos:
        line_end: 244
        line_start: 244
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields:
      - name: '* str_'
        type: char
      - name: size_
        type: std::size_t
      item_type: struct
      name: str_view
      pos:
        line_end: 249
        line_start: 246
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields:
      - name: count
        type: std::size_t
      - name: valid[N]
        type: bool
      item_type: struct
      name: valid_count_t
      pos:
        line_end: 731
        line_start: 728
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: enable_if_enum
      pos:
        line_end: 879
        line_start: 879
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: enable_if_enum<true, R>
      pos:
        line_end: 885
        line_start: 882
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_scoped_enum
      pos:
        line_end: 894
        line_start: 894
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_scoped_enum<T, true>
      pos:
        line_end: 897
        line_start: 897
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_unscoped_enum
      pos:
        line_end: 900
        line_start: 900
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_unscoped_enum<T, true>
      pos:
        line_end: 903
        line_start: 903
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: underlying_type
      pos:
        line_end: 906
        line_start: 906
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: underlying_type<T, true>
      pos:
        line_end: 909
        line_start: 909
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: constexpr_hash_t<Value, std::enable_if_t<is_enum_v<Value>>>
      pos:
        line_end: 927
        line_start: 917
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields:
      - name: crc_table[256]
        type: std::uint32_t
      item_type: struct
      name: constexpr_hash_t<Value, std::enable_if_t<std::is_same_v<Value, string_view>>>
      pos:
        line_end: 982
        line_start: 930
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: secondary_hash
      pos:
        line_end: 981
        line_start: 973
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: has_is_flags
      pos:
        line_end: 229
        line_start: 229
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: has_is_flags<T, std::void_t<decltype(customize::enum_range<T>::is_flags)>>
      pos:
        line_end: 232
        line_start: 232
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: range_min
      pos:
        line_end: 235
        line_start: 235
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: range_min<T, std::void_t<decltype(customize::enum_range<T>::min)>>
      pos:
        line_end: 238
        line_start: 238
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: range_max
      pos:
        line_end: 241
        line_start: 241
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: range_max<T, std::void_t<decltype(customize::enum_range<T>::max)>>
      pos:
        line_end: 244
        line_start: 244
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields:
      - name: '* str_'
        type: char
      - name: size_
        type: std::size_t
      item_type: struct
      name: str_view
      pos:
        line_end: 249
        line_start: 246
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields:
      - name: count
        type: std::size_t
      - name: valid[N]
        type: bool
      item_type: struct
      name: valid_count_t
      pos:
        line_end: 731
        line_start: 728
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: enable_if_enum
      pos:
        line_end: 879
        line_start: 879
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: enable_if_enum<true, R>
      pos:
        line_end: 885
        line_start: 882
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_scoped_enum
      pos:
        line_end: 894
        line_start: 894
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_scoped_enum<T, true>
      pos:
        line_end: 897
        line_start: 897
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_unscoped_enum
      pos:
        line_end: 900
        line_start: 900
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_unscoped_enum<T, true>
      pos:
        line_end: 903
        line_start: 903
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: underlying_type
      pos:
        line_end: 906
        line_start: 906
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: underlying_type<T, true>
      pos:
        line_end: 909
        line_start: 909
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: constexpr_hash_t<Value, std::enable_if_t<is_enum_v<Value>>>
      pos:
        line_end: 927
        line_start: 917
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields:
      - name: crc_table[256]
        type: std::uint32_t
      item_type: struct
      name: constexpr_hash_t<Value, std::enable_if_t<std::is_same_v<Value, string_view>>>
      pos:
        line_end: 982
        line_start: 930
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: secondary_hash
      pos:
        line_end: 981
        line_start: 973
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_unscoped_enum
      pos:
        line_end: 1133
        line_start: 1133
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_scoped_enum
      pos:
        line_end: 1141
        line_start: 1141
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: underlying_type
      pos:
        line_end: 1149
        line_start: 1149
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields:
      - name: min
        type: int
      - name: max
        type: int
      item_type: struct
      name: enum_range
      pos:
        line_end: 170
        line_start: 167
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields:
      - name: min
        type: int
      - name: max
        type: int
      item_type: struct
      name: enum_range
      pos:
        line_end: 170
        line_start: 167
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: has_is_flags
      pos:
        line_end: 229
        line_start: 229
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: has_is_flags<T, std::void_t<decltype(customize::enum_range<T>::is_flags)>>
      pos:
        line_end: 232
        line_start: 232
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: range_min
      pos:
        line_end: 235
        line_start: 235
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: range_min<T, std::void_t<decltype(customize::enum_range<T>::min)>>
      pos:
        line_end: 238
        line_start: 238
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: range_max
      pos:
        line_end: 241
        line_start: 241
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: range_max<T, std::void_t<decltype(customize::enum_range<T>::max)>>
      pos:
        line_end: 244
        line_start: 244
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields:
      - name: '* str_'
        type: char
      - name: size_
        type: std::size_t
      item_type: struct
      name: str_view
      pos:
        line_end: 249
        line_start: 246
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields:
      - name: count
        type: std::size_t
      - name: valid[N]
        type: bool
      item_type: struct
      name: valid_count_t
      pos:
        line_end: 731
        line_start: 728
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: enable_if_enum
      pos:
        line_end: 879
        line_start: 879
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: enable_if_enum<true, R>
      pos:
        line_end: 885
        line_start: 882
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_scoped_enum
      pos:
        line_end: 894
        line_start: 894
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_scoped_enum<T, true>
      pos:
        line_end: 897
        line_start: 897
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_unscoped_enum
      pos:
        line_end: 900
        line_start: 900
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_unscoped_enum<T, true>
      pos:
        line_end: 903
        line_start: 903
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: underlying_type
      pos:
        line_end: 906
        line_start: 906
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: underlying_type<T, true>
      pos:
        line_end: 909
        line_start: 909
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: constexpr_hash_t<Value, std::enable_if_t<is_enum_v<Value>>>
      pos:
        line_end: 927
        line_start: 917
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields:
      - name: crc_table[256]
        type: std::uint32_t
      item_type: struct
      name: constexpr_hash_t<Value, std::enable_if_t<std::is_same_v<Value, string_view>>>
      pos:
        line_end: 982
        line_start: 930
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: secondary_hash
      pos:
        line_end: 981
        line_start: 973
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: has_is_flags
      pos:
        line_end: 229
        line_start: 229
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: has_is_flags<T, std::void_t<decltype(customize::enum_range<T>::is_flags)>>
      pos:
        line_end: 232
        line_start: 232
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: range_min
      pos:
        line_end: 235
        line_start: 235
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: range_min<T, std::void_t<decltype(customize::enum_range<T>::min)>>
      pos:
        line_end: 238
        line_start: 238
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: range_max
      pos:
        line_end: 241
        line_start: 241
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: range_max<T, std::void_t<decltype(customize::enum_range<T>::max)>>
      pos:
        line_end: 244
        line_start: 244
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields:
      - name: '* str_'
        type: char
      - name: size_
        type: std::size_t
      item_type: struct
      name: str_view
      pos:
        line_end: 249
        line_start: 246
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields:
      - name: count
        type: std::size_t
      - name: valid[N]
        type: bool
      item_type: struct
      name: valid_count_t
      pos:
        line_end: 731
        line_start: 728
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: enable_if_enum
      pos:
        line_end: 879
        line_start: 879
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: enable_if_enum<true, R>
      pos:
        line_end: 885
        line_start: 882
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_scoped_enum
      pos:
        line_end: 894
        line_start: 894
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_scoped_enum<T, true>
      pos:
        line_end: 897
        line_start: 897
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_unscoped_enum
      pos:
        line_end: 900
        line_start: 900
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_unscoped_enum<T, true>
      pos:
        line_end: 903
        line_start: 903
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: underlying_type
      pos:
        line_end: 906
        line_start: 906
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: underlying_type<T, true>
      pos:
        line_end: 909
        line_start: 909
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: constexpr_hash_t<Value, std::enable_if_t<is_enum_v<Value>>>
      pos:
        line_end: 927
        line_start: 917
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields:
      - name: crc_table[256]
        type: std::uint32_t
      item_type: struct
      name: constexpr_hash_t<Value, std::enable_if_t<std::is_same_v<Value, string_view>>>
      pos:
        line_end: 982
        line_start: 930
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: secondary_hash
      pos:
        line_end: 981
        line_start: 973
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_unscoped_enum
      pos:
        line_end: 1133
        line_start: 1133
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: is_scoped_enum
      pos:
        line_end: 1141
        line_start: 1141
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    - fields: []
      item_type: struct
      name: underlying_type
      pos:
        line_end: 1149
        line_start: 1149
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/magic_enum.hpp
    typedefs: []
    union: []
- function_names:
  - expected_STRINGIFY
  - expected_STRINGIFY_
  - nonstd_lite_in_place_t
  - nonstd_lite_in_place_type_t
  - nonstd_lite_in_place_index_t
  - nonstd_lite_in_place
  - nonstd_lite_in_place_type
  - nonstd_lite_in_place_index
  - nonstd_lite_in_place_t
  - nonstd_lite_in_place_type_t
  - nonstd_lite_in_place_index_t
  - nonstd_lite_in_place
  - nonstd_lite_in_place_type
  - nonstd_lite_in_place_index
  - nonstd::in_place
  - nonstd::in_place
  - nonstd::in_place_type
  - nonstd::in_place_index
  - nonstd_lite_in_place_t
  - nonstd_lite_in_place_type_t
  - nonstd_lite_in_place_index_t
  - nonstd_lite_in_place
  - nonstd_lite_in_place_type
  - nonstd_lite_in_place_index
  - nonstd::in_place
  - nonstd::in_place
  - nonstd::in_place_type
  - nonstd::in_place_index
  - nonstd_lite_in_place_t
  - nonstd_lite_in_place_type_t
  - nonstd_lite_in_place_index_t
  - nonstd_lite_in_place
  - nonstd_lite_in_place_type
  - nonstd_lite_in_place_index
  - nonstd::make_unexpected
  - nonstd::make_unexpected
  - nsel_COMPILER_VERSION
  - nsel_REQUIRES_0
  - nsel_REQUIRES_T
  - nsel_REQUIRES_R
  - nsel_REQUIRES_A
  - nsel_DISABLE_MSVC_WARNINGS
  - nsel_RESTORE_WARNINGS
  - nsel_RESTORE_WARNINGS
  - nsel_RESTORE_WARNINGS
  - nsel_RESTORE_MSVC_WARNINGS
  - nsel_deprecated
  - nonstd::expected_lite::std17::detail::satisfies
  - nonstd::expected_lite::std17::detail::test
  - nonstd::expected_lite::std17::detail::satisfies
  - nonstd::expected_lite::std17::detail::test
  - nonstd::expected_lite::std17::detail::satisfies
  - nonstd::expected_lite::std17::detail::test
  - nonstd::expected_lite::std17::detail::satisfies
  - nonstd::expected_lite::std17::detail::test
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
  - ~storage_t_noncopy_nonmove_impl()
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_error
  - '& value() const &'
  - '& value() &'
  - '&& value() const &&'
  - '&& value() &&'
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::set_has_value
  - nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
  - ~storage_t_impl()
  - nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_impl::destruct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_error
  - nonstd::expected_lite::detail::storage_t_impl::construct_error
  - nonstd::expected_lite::detail::storage_t_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_impl::destruct_error
  - '& value() const &'
  - '& value() &'
  - '&& value() const &&'
  - '&& value() &&'
  - nonstd::expected_lite::detail::storage_t_impl::value_ptr
  - nonstd::expected_lite::detail::storage_t_impl::value_ptr
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::storage_t_impl::has_value
  - nonstd::expected_lite::detail::storage_t_impl::set_has_value
  - nonstd::expected_lite::detail::storage_t_impl
  - ~storage_t_impl()
  - nonstd::expected_lite::detail::storage_t_impl
  - nonstd::expected_lite::detail::construct_error
  - nonstd::expected_lite::detail::construct_error
  - nonstd::expected_lite::detail::emplace_error
  - nonstd::expected_lite::detail::emplace_error
  - nonstd::expected_lite::detail::destruct_error
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::has_value
  - nonstd::expected_lite::detail::set_has_value
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
  - ~storage_t_noncopy_nonmove_impl()
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_error
  - '& value() const &'
  - '& value() &'
  - '&& value() const &&'
  - '&& value() &&'
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::set_has_value
  - nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
  - ~storage_t_impl()
  - nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_impl::destruct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_error
  - nonstd::expected_lite::detail::storage_t_impl::construct_error
  - nonstd::expected_lite::detail::storage_t_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_impl::destruct_error
  - '& value() const &'
  - '& value() &'
  - '&& value() const &&'
  - '&& value() &&'
  - nonstd::expected_lite::detail::storage_t_impl::value_ptr
  - nonstd::expected_lite::detail::storage_t_impl::value_ptr
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::storage_t_impl::has_value
  - nonstd::expected_lite::detail::storage_t_impl::set_has_value
  - nonstd::expected_lite::detail::storage_t_impl
  - ~storage_t_impl()
  - nonstd::expected_lite::detail::storage_t_impl
  - nonstd::expected_lite::detail::construct_error
  - nonstd::expected_lite::detail::construct_error
  - nonstd::expected_lite::detail::emplace_error
  - nonstd::expected_lite::detail::emplace_error
  - nonstd::expected_lite::detail::destruct_error
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::has_value
  - nonstd::expected_lite::detail::set_has_value
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - '& operator=( unexpected_type const & )'
  - '& operator=( unexpected_type && )'
  - '& operator=( unexpected_type<E2> const & other )'
  - '& operator=( unexpected_type<E2> && other )'
  - '& error() & noexcept'
  - '& error() const & noexcept'
  - '&& error() && noexcept'
  - '&& error() const && noexcept'
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::swap
  - nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
  - ~unexpected_type()
  - nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
  - nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
  - nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
  - '& value() const'
  - '& value()'
  - operator==( unexpected_type<E1> const & x, unexpected_type<E2> const & y )
  - operator!=( unexpected_type<E1> const & x, unexpected_type<E2> const & y )
  - operator<( unexpected_type<E> const & x, unexpected_type<E> const & y )
  - operator>( unexpected_type<E> const & x, unexpected_type<E> const & y )
  - operator<=( unexpected_type<E> const & x, unexpected_type<E> const & y )
  - operator>=( unexpected_type<E> const & x, unexpected_type<E> const & y )
  - nonstd::expected_lite::swap
  - operator<( unexpected_type<std::exception_ptr> const & /*x*/, unexpected_type<std::exception_ptr>
    const & /*y*/ )
  - operator>( unexpected_type<std::exception_ptr> const & /*x*/, unexpected_type<std::exception_ptr>
    const & /*y*/ )
  - operator<=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
    const & y )
  - operator>=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
    const & y )
  - nonstd::expected_lite::make_unexpected
  - nonstd::expected_lite::make_unexpected_from_current_exception
  - nonstd::expected_lite::bad_expected_access< void >::bad_expected_access
  - nonstd::expected_lite::bad_expected_access::bad_expected_access
  - nonstd::expected_lite::bad_expected_access::what
  - '& error() &'
  - '& error() const &'
  - '&& error() &&'
  - '&& error() const &&'
  - nonstd::expected_lite::detail::text
  - nonstd::expected_lite::detail::text
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::std17::detail::satisfies
  - nonstd::expected_lite::std17::detail::test
  - nonstd::expected_lite::std17::detail::satisfies
  - nonstd::expected_lite::std17::detail::test
  - nonstd::expected_lite::std17::detail::satisfies
  - nonstd::expected_lite::std17::detail::test
  - nonstd::expected_lite::std17::detail::satisfies
  - nonstd::expected_lite::std17::detail::test
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
  - ~storage_t_noncopy_nonmove_impl()
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_error
  - '& value() const &'
  - '& value() &'
  - '&& value() const &&'
  - '&& value() &&'
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::set_has_value
  - nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
  - ~storage_t_impl()
  - nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_impl::destruct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_error
  - nonstd::expected_lite::detail::storage_t_impl::construct_error
  - nonstd::expected_lite::detail::storage_t_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_impl::destruct_error
  - '& value() const &'
  - '& value() &'
  - '&& value() const &&'
  - '&& value() &&'
  - nonstd::expected_lite::detail::storage_t_impl::value_ptr
  - nonstd::expected_lite::detail::storage_t_impl::value_ptr
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::storage_t_impl::has_value
  - nonstd::expected_lite::detail::storage_t_impl::set_has_value
  - nonstd::expected_lite::detail::storage_t_impl
  - ~storage_t_impl()
  - nonstd::expected_lite::detail::storage_t_impl
  - nonstd::expected_lite::detail::construct_error
  - nonstd::expected_lite::detail::construct_error
  - nonstd::expected_lite::detail::emplace_error
  - nonstd::expected_lite::detail::emplace_error
  - nonstd::expected_lite::detail::destruct_error
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::has_value
  - nonstd::expected_lite::detail::set_has_value
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
  - ~storage_t_noncopy_nonmove_impl()
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_error
  - '& value() const &'
  - '& value() &'
  - '&& value() const &&'
  - '&& value() &&'
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::set_has_value
  - nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
  - ~storage_t_impl()
  - nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_impl::destruct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_error
  - nonstd::expected_lite::detail::storage_t_impl::construct_error
  - nonstd::expected_lite::detail::storage_t_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_impl::destruct_error
  - '& value() const &'
  - '& value() &'
  - '&& value() const &&'
  - '&& value() &&'
  - nonstd::expected_lite::detail::storage_t_impl::value_ptr
  - nonstd::expected_lite::detail::storage_t_impl::value_ptr
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::storage_t_impl::has_value
  - nonstd::expected_lite::detail::storage_t_impl::set_has_value
  - nonstd::expected_lite::detail::storage_t_impl
  - ~storage_t_impl()
  - nonstd::expected_lite::detail::storage_t_impl
  - nonstd::expected_lite::detail::construct_error
  - nonstd::expected_lite::detail::construct_error
  - nonstd::expected_lite::detail::emplace_error
  - nonstd::expected_lite::detail::emplace_error
  - nonstd::expected_lite::detail::destruct_error
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::has_value
  - nonstd::expected_lite::detail::set_has_value
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - '& operator=( unexpected_type const & )'
  - '& operator=( unexpected_type && )'
  - '& operator=( unexpected_type<E2> const & other )'
  - '& operator=( unexpected_type<E2> && other )'
  - '& error() & noexcept'
  - '& error() const & noexcept'
  - '&& error() && noexcept'
  - '&& error() const && noexcept'
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::swap
  - nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
  - ~unexpected_type()
  - nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
  - nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
  - nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
  - '& value() const'
  - '& value()'
  - operator==( unexpected_type<E1> const & x, unexpected_type<E2> const & y )
  - operator!=( unexpected_type<E1> const & x, unexpected_type<E2> const & y )
  - operator<( unexpected_type<E> const & x, unexpected_type<E> const & y )
  - operator>( unexpected_type<E> const & x, unexpected_type<E> const & y )
  - operator<=( unexpected_type<E> const & x, unexpected_type<E> const & y )
  - operator>=( unexpected_type<E> const & x, unexpected_type<E> const & y )
  - nonstd::expected_lite::swap
  - operator<( unexpected_type<std::exception_ptr> const & /*x*/, unexpected_type<std::exception_ptr>
    const & /*y*/ )
  - operator>( unexpected_type<std::exception_ptr> const & /*x*/, unexpected_type<std::exception_ptr>
    const & /*y*/ )
  - operator<=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
    const & y )
  - operator>=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
    const & y )
  - nonstd::expected_lite::make_unexpected
  - nonstd::expected_lite::make_unexpected_from_current_exception
  - nonstd::expected_lite::bad_expected_access< void >::bad_expected_access
  - nonstd::expected_lite::bad_expected_access::bad_expected_access
  - nonstd::expected_lite::bad_expected_access::what
  - '& error() &'
  - '& error() const &'
  - '&& error() &&'
  - '&& error() const &&'
  - nonstd::expected_lite::detail::text
  - nonstd::expected_lite::detail::text
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::expected::expected
  - nonstd::expected_lite::expected::expected
  - nonstd::expected_lite::expected::expected
  - nonstd::expected_lite::contained
  - nonstd::expected_lite::contained
  - nonstd::expected_lite::expected
  - nonstd::expected_lite::expected
  - ~expected()
  - '& operator=( expected const & other )'
  - "& operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_constructible<
    \  T>::value\n        && std::is_nothrow_move_assignable<   T>::value\n        &&
    std::is_nothrow_move_constructible<E>::value     // added for missing\n        &&
    std::is_nothrow_move_assignable<   E>::value )"
  - '& operator=( U && value )'
  - '& operator=( nonstd::unexpected_type<G> const & error )'
  - '& operator=( nonstd::unexpected_type<G> && error )'
  - nonstd::expected_lite::emplace
  - nonstd::expected_lite::emplace
  - nonstd::expected_lite::swap
  - '* operator ->() const'
  - '* operator ->()'
  - '& operator *() const &'
  - '& operator *() &'
  - '&& operator *() const &&'
  - '&& operator *() &&'
  - operator bool() const noexcept
  - nonstd::expected_lite::has_value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::get_unexpected
  - nonstd::expected_lite::has_exception
  - nonstd::expected_lite::value_or
  - nonstd::expected_lite::value_or
  - nonstd::expected_lite::error_or
  - nonstd::expected_lite::error_or
  - detail::invoke_result_nocvref_t< F, value_type & > and_then( F && f ) &
  - detail::invoke_result_nocvref_t< F, const value_type & > and_then( F && f ) const
    &
  - detail::invoke_result_nocvref_t< F, value_type && > and_then( F && f ) &&
  - detail::invoke_result_nocvref_t< F, const value_type && > and_then( F && f ) const
    &&
  - detail::invoke_result_nocvref_t< F, error_type & > or_else( F && f ) &
  - detail::invoke_result_nocvref_t< F, const error_type & > or_else( F && f ) const
    &
  - detail::invoke_result_nocvref_t< F, error_type && > or_else( F && f ) &&
  - detail::invoke_result_nocvref_t< F, const error_type && > or_else( F && f ) const
    &&
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F, value_type
    & >, error_type >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F, const value_type
    & >, error_type >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F, value_type
    && >, error_type >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F, const value_type
    && >, error_type >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
    F, error_type & > >::transform_error
  - nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
    F, const error_type & > >::transform_error
  - nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
    F, error_type && > >::transform_error
  - nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
    F, const error_type && > >::transform_error
  - nonstd::expected_lite::expected<void, E>::expected
  - nonstd::expected_lite::expected<void, E>::expected
  - nonstd::expected_lite::expected<void, E>::expected
  - nonstd::expected_lite::expected<void, E>::expected
  - nonstd::expected_lite::expected
  - ~expected()
  - '& operator=( expected const & other )'
  - "& operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_assignable<E>::value
    &&\n        std::is_nothrow_move_constructible<E>::value )"
  - nonstd::expected_lite::emplace
  - nonstd::expected_lite::swap
  - operator bool() const noexcept
  - nonstd::expected_lite::has_value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::get_unexpected
  - nonstd::expected_lite::has_exception
  - nonstd::expected_lite::error_or
  - nonstd::expected_lite::error_or
  - detail::invoke_result_nocvref_t< F > and_then( F && f ) &
  - detail::invoke_result_nocvref_t< F > and_then( F && f ) const &
  - detail::invoke_result_nocvref_t< F > and_then( F && f ) &&
  - detail::invoke_result_nocvref_t< F > and_then( F && f ) const &&
  - detail::invoke_result_nocvref_t< F, error_type & > or_else( F && f ) &
  - detail::invoke_result_nocvref_t< F, const error_type & > or_else( F && f ) const
    &
  - detail::invoke_result_nocvref_t< F, error_type && > or_else( F && f ) &&
  - detail::invoke_result_nocvref_t< F, const error_type && > or_else( F && f ) const
    &&
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F >, error_type
    >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F >, error_type
    >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F >, error_type
    >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F >, error_type
    >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< void, detail::transform_invoke_result_t< F, error_type
    & > >::transform_error
  - nonstd::expected_lite::expected< void, detail::transform_invoke_result_t< F, const
    error_type & > >::transform_error
  - nonstd::expected_lite::expected< void, detail::transform_invoke_result_t< F, error_type
    && > >::transform_error
  - nonstd::expected_lite::expected< void, detail::transform_invoke_result_t< F, const
    error_type && > >::transform_error
  - operator==( expected<T1,E1> const & x, expected<T2,E2> const & y )
  - operator==( expected<T1,E1> const & x, expected<T2,E2> const & y )
  - operator!=( expected<T1,E1> const & x, expected<T2,E2> const & y )
  - operator<( expected<T,E> const & x, expected<T,E> const & y )
  - operator>( expected<T,E> const & x, expected<T,E> const & y )
  - operator<=( expected<T,E> const & x, expected<T,E> const & y )
  - operator>=( expected<T,E> const & x, expected<T,E> const & y )
  - operator==( expected<T1,E1> const & x, T2 const & v )
  - operator==(T2 const & v, expected<T1,E1> const & x )
  - operator!=( expected<T1,E1> const & x, T2 const & v )
  - operator!=( T2 const & v, expected<T1,E1> const & x )
  - operator<( expected<T,E> const & x, T const & v )
  - operator<( T const & v, expected<T,E> const & x )
  - operator>( T const & v, expected<T,E> const & x )
  - operator>( expected<T,E> const & x, T const & v )
  - operator<=( T const & v, expected<T,E> const & x )
  - operator<=( expected<T,E> const & x, T const & v )
  - operator>=( expected<T,E> const & x, T const & v )
  - operator>=( T const & v, expected<T,E> const & x )
  - operator==( expected<T1,E1> const & x, unexpected_type<E2> const & u )
  - operator==( unexpected_type<E2> const & u, expected<T1,E1> const & x )
  - operator!=( expected<T1,E1> const & x, unexpected_type<E2> const & u )
  - operator!=( unexpected_type<E2> const & u, expected<T1,E1> const & x )
  - operator<( expected<T,E> const & x, unexpected_type<E> const & u )
  - operator<( unexpected_type<E> const & u, expected<T,E> const & x )
  - operator>( expected<T,E> const & x, unexpected_type<E> const & u )
  - operator>( unexpected_type<E> const & u, expected<T,E> const & x )
  - operator<=( expected<T,E> const & x, unexpected_type<E> const & u )
  - operator<=( unexpected_type<E> const & u, expected<T,E> const & x)
  - operator>=( expected<T,E> const & x, unexpected_type<E> const & u  )
  - operator>=( unexpected_type<E> const & u, expected<T,E> const & x )
  - nonstd::expected_lite::swap
  - nonstd::expected_lite::make_expected
  - nonstd::expected_lite::make_expected
  - nonstd::expected_lite::make_expected_from_current_exception
  - nonstd::expected_lite::make_expected_from_exception
  - nonstd::expected_lite::make_expected_from_error
  - nonstd::expected_lite::make_expected_from_call
  - nonstd::expected_lite::make_expected_from_call
  - nonstd::expected_lite::expected::expected
  - nonstd::expected_lite::expected::expected
  - nonstd::expected_lite::expected::expected
  - nonstd::expected_lite::contained
  - nonstd::expected_lite::contained
  - nonstd::expected_lite::expected
  - nonstd::expected_lite::expected
  - ~expected()
  - '& operator=( expected const & other )'
  - "& operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_constructible<
    \  T>::value\n        && std::is_nothrow_move_assignable<   T>::value\n        &&
    std::is_nothrow_move_constructible<E>::value     // added for missing\n        &&
    std::is_nothrow_move_assignable<   E>::value )"
  - '& operator=( U && value )'
  - '& operator=( nonstd::unexpected_type<G> const & error )'
  - '& operator=( nonstd::unexpected_type<G> && error )'
  - nonstd::expected_lite::emplace
  - nonstd::expected_lite::emplace
  - nonstd::expected_lite::swap
  - '* operator ->() const'
  - '* operator ->()'
  - '& operator *() const &'
  - '& operator *() &'
  - '&& operator *() const &&'
  - '&& operator *() &&'
  - operator bool() const noexcept
  - nonstd::expected_lite::has_value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::get_unexpected
  - nonstd::expected_lite::has_exception
  - nonstd::expected_lite::value_or
  - nonstd::expected_lite::value_or
  - nonstd::expected_lite::error_or
  - nonstd::expected_lite::error_or
  - detail::invoke_result_nocvref_t< F, value_type & > and_then( F && f ) &
  - detail::invoke_result_nocvref_t< F, const value_type & > and_then( F && f ) const
    &
  - detail::invoke_result_nocvref_t< F, value_type && > and_then( F && f ) &&
  - detail::invoke_result_nocvref_t< F, const value_type && > and_then( F && f ) const
    &&
  - detail::invoke_result_nocvref_t< F, error_type & > or_else( F && f ) &
  - detail::invoke_result_nocvref_t< F, const error_type & > or_else( F && f ) const
    &
  - detail::invoke_result_nocvref_t< F, error_type && > or_else( F && f ) &&
  - detail::invoke_result_nocvref_t< F, const error_type && > or_else( F && f ) const
    &&
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F, value_type
    & >, error_type >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F, const value_type
    & >, error_type >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F, value_type
    && >, error_type >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F, const value_type
    && >, error_type >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
    F, error_type & > >::transform_error
  - nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
    F, const error_type & > >::transform_error
  - nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
    F, error_type && > >::transform_error
  - nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
    F, const error_type && > >::transform_error
  - nonstd::expected_lite::expected<void, E>::expected
  - nonstd::expected_lite::expected<void, E>::expected
  - nonstd::expected_lite::expected<void, E>::expected
  - nonstd::expected_lite::expected<void, E>::expected
  - nonstd::expected_lite::expected
  - ~expected()
  - '& operator=( expected const & other )'
  - "& operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_assignable<E>::value
    &&\n        std::is_nothrow_move_constructible<E>::value )"
  - nonstd::expected_lite::emplace
  - nonstd::expected_lite::swap
  - operator bool() const noexcept
  - nonstd::expected_lite::has_value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::get_unexpected
  - nonstd::expected_lite::has_exception
  - nonstd::expected_lite::error_or
  - nonstd::expected_lite::error_or
  - detail::invoke_result_nocvref_t< F > and_then( F && f ) &
  - detail::invoke_result_nocvref_t< F > and_then( F && f ) const &
  - detail::invoke_result_nocvref_t< F > and_then( F && f ) &&
  - detail::invoke_result_nocvref_t< F > and_then( F && f ) const &&
  - detail::invoke_result_nocvref_t< F, error_type & > or_else( F && f ) &
  - detail::invoke_result_nocvref_t< F, const error_type & > or_else( F && f ) const
    &
  - detail::invoke_result_nocvref_t< F, error_type && > or_else( F && f ) &&
  - detail::invoke_result_nocvref_t< F, const error_type && > or_else( F && f ) const
    &&
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F >, error_type
    >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F >, error_type
    >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F >, error_type
    >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F >, error_type
    >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< void, detail::transform_invoke_result_t< F, error_type
    & > >::transform_error
  - nonstd::expected_lite::expected< void, detail::transform_invoke_result_t< F, const
    error_type & > >::transform_error
  - nonstd::expected_lite::expected< void, detail::transform_invoke_result_t< F, error_type
    && > >::transform_error
  - nonstd::expected_lite::expected< void, detail::transform_invoke_result_t< F, const
    error_type && > >::transform_error
  - operator==( expected<T1,E1> const & x, expected<T2,E2> const & y )
  - operator==( expected<T1,E1> const & x, expected<T2,E2> const & y )
  - operator!=( expected<T1,E1> const & x, expected<T2,E2> const & y )
  - operator<( expected<T,E> const & x, expected<T,E> const & y )
  - operator>( expected<T,E> const & x, expected<T,E> const & y )
  - operator<=( expected<T,E> const & x, expected<T,E> const & y )
  - operator>=( expected<T,E> const & x, expected<T,E> const & y )
  - operator==( expected<T1,E1> const & x, T2 const & v )
  - operator==(T2 const & v, expected<T1,E1> const & x )
  - operator!=( expected<T1,E1> const & x, T2 const & v )
  - operator!=( T2 const & v, expected<T1,E1> const & x )
  - operator<( expected<T,E> const & x, T const & v )
  - operator<( T const & v, expected<T,E> const & x )
  - operator>( T const & v, expected<T,E> const & x )
  - operator>( expected<T,E> const & x, T const & v )
  - operator<=( T const & v, expected<T,E> const & x )
  - operator<=( expected<T,E> const & x, T const & v )
  - operator>=( expected<T,E> const & x, T const & v )
  - operator>=( T const & v, expected<T,E> const & x )
  - operator==( expected<T1,E1> const & x, unexpected_type<E2> const & u )
  - operator==( unexpected_type<E2> const & u, expected<T1,E1> const & x )
  - operator!=( expected<T1,E1> const & x, unexpected_type<E2> const & u )
  - operator!=( unexpected_type<E2> const & u, expected<T1,E1> const & x )
  - operator<( expected<T,E> const & x, unexpected_type<E> const & u )
  - operator<( unexpected_type<E> const & u, expected<T,E> const & x )
  - operator>( expected<T,E> const & x, unexpected_type<E> const & u )
  - operator>( unexpected_type<E> const & u, expected<T,E> const & x )
  - operator<=( expected<T,E> const & x, unexpected_type<E> const & u )
  - operator<=( unexpected_type<E> const & u, expected<T,E> const & x)
  - operator>=( expected<T,E> const & x, unexpected_type<E> const & u  )
  - operator>=( unexpected_type<E> const & u, expected<T,E> const & x )
  - nonstd::expected_lite::swap
  - nonstd::expected_lite::make_expected
  - nonstd::expected_lite::make_expected
  - nonstd::expected_lite::make_expected_from_current_exception
  - nonstd::expected_lite::make_expected_from_exception
  - nonstd::expected_lite::make_expected_from_error
  - nonstd::expected_lite::make_expected_from_call
  - nonstd::expected_lite::make_expected_from_call
  - nonstd::expected_lite::std17::detail::satisfies
  - nonstd::expected_lite::std17::detail::test
  - nonstd::expected_lite::std17::detail::satisfies
  - nonstd::expected_lite::std17::detail::test
  - nonstd::expected_lite::std17::detail::satisfies
  - nonstd::expected_lite::std17::detail::test
  - nonstd::expected_lite::std17::detail::satisfies
  - nonstd::expected_lite::std17::detail::test
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
  - ~storage_t_noncopy_nonmove_impl()
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_error
  - '& value() const &'
  - '& value() &'
  - '&& value() const &&'
  - '&& value() &&'
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::set_has_value
  - nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
  - ~storage_t_impl()
  - nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_impl::destruct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_error
  - nonstd::expected_lite::detail::storage_t_impl::construct_error
  - nonstd::expected_lite::detail::storage_t_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_impl::destruct_error
  - '& value() const &'
  - '& value() &'
  - '&& value() const &&'
  - '&& value() &&'
  - nonstd::expected_lite::detail::storage_t_impl::value_ptr
  - nonstd::expected_lite::detail::storage_t_impl::value_ptr
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::storage_t_impl::has_value
  - nonstd::expected_lite::detail::storage_t_impl::set_has_value
  - nonstd::expected_lite::detail::storage_t_impl
  - ~storage_t_impl()
  - nonstd::expected_lite::detail::storage_t_impl
  - nonstd::expected_lite::detail::construct_error
  - nonstd::expected_lite::detail::construct_error
  - nonstd::expected_lite::detail::emplace_error
  - nonstd::expected_lite::detail::emplace_error
  - nonstd::expected_lite::detail::destruct_error
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::has_value
  - nonstd::expected_lite::detail::set_has_value
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
  - ~storage_t_noncopy_nonmove_impl()
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_error
  - '& value() const &'
  - '& value() &'
  - '&& value() const &&'
  - '&& value() &&'
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::set_has_value
  - nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
  - ~storage_t_impl()
  - nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_impl::destruct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_error
  - nonstd::expected_lite::detail::storage_t_impl::construct_error
  - nonstd::expected_lite::detail::storage_t_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_impl::destruct_error
  - '& value() const &'
  - '& value() &'
  - '&& value() const &&'
  - '&& value() &&'
  - nonstd::expected_lite::detail::storage_t_impl::value_ptr
  - nonstd::expected_lite::detail::storage_t_impl::value_ptr
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::storage_t_impl::has_value
  - nonstd::expected_lite::detail::storage_t_impl::set_has_value
  - nonstd::expected_lite::detail::storage_t_impl
  - ~storage_t_impl()
  - nonstd::expected_lite::detail::storage_t_impl
  - nonstd::expected_lite::detail::construct_error
  - nonstd::expected_lite::detail::construct_error
  - nonstd::expected_lite::detail::emplace_error
  - nonstd::expected_lite::detail::emplace_error
  - nonstd::expected_lite::detail::destruct_error
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::has_value
  - nonstd::expected_lite::detail::set_has_value
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - '& operator=( unexpected_type const & )'
  - '& operator=( unexpected_type && )'
  - '& operator=( unexpected_type<E2> const & other )'
  - '& operator=( unexpected_type<E2> && other )'
  - '& error() & noexcept'
  - '& error() const & noexcept'
  - '&& error() && noexcept'
  - '&& error() const && noexcept'
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::swap
  - nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
  - ~unexpected_type()
  - nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
  - nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
  - nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
  - '& value() const'
  - '& value()'
  - operator==( unexpected_type<E1> const & x, unexpected_type<E2> const & y )
  - operator!=( unexpected_type<E1> const & x, unexpected_type<E2> const & y )
  - operator<( unexpected_type<E> const & x, unexpected_type<E> const & y )
  - operator>( unexpected_type<E> const & x, unexpected_type<E> const & y )
  - operator<=( unexpected_type<E> const & x, unexpected_type<E> const & y )
  - operator>=( unexpected_type<E> const & x, unexpected_type<E> const & y )
  - nonstd::expected_lite::swap
  - operator<( unexpected_type<std::exception_ptr> const & /*x*/, unexpected_type<std::exception_ptr>
    const & /*y*/ )
  - operator>( unexpected_type<std::exception_ptr> const & /*x*/, unexpected_type<std::exception_ptr>
    const & /*y*/ )
  - operator<=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
    const & y )
  - operator>=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
    const & y )
  - nonstd::expected_lite::make_unexpected
  - nonstd::expected_lite::make_unexpected_from_current_exception
  - nonstd::expected_lite::bad_expected_access< void >::bad_expected_access
  - nonstd::expected_lite::bad_expected_access::bad_expected_access
  - nonstd::expected_lite::bad_expected_access::what
  - '& error() &'
  - '& error() const &'
  - '&& error() &&'
  - '&& error() const &&'
  - nonstd::expected_lite::detail::text
  - nonstd::expected_lite::detail::text
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::std17::detail::satisfies
  - nonstd::expected_lite::std17::detail::test
  - nonstd::expected_lite::std17::detail::satisfies
  - nonstd::expected_lite::std17::detail::test
  - nonstd::expected_lite::std17::detail::satisfies
  - nonstd::expected_lite::std17::detail::test
  - nonstd::expected_lite::std17::detail::satisfies
  - nonstd::expected_lite::std17::detail::test
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
  - ~storage_t_noncopy_nonmove_impl()
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_error
  - '& value() const &'
  - '& value() &'
  - '&& value() const &&'
  - '&& value() &&'
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::set_has_value
  - nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
  - ~storage_t_impl()
  - nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_impl::destruct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_error
  - nonstd::expected_lite::detail::storage_t_impl::construct_error
  - nonstd::expected_lite::detail::storage_t_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_impl::destruct_error
  - '& value() const &'
  - '& value() &'
  - '&& value() const &&'
  - '&& value() &&'
  - nonstd::expected_lite::detail::storage_t_impl::value_ptr
  - nonstd::expected_lite::detail::storage_t_impl::value_ptr
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::storage_t_impl::has_value
  - nonstd::expected_lite::detail::storage_t_impl::set_has_value
  - nonstd::expected_lite::detail::storage_t_impl
  - ~storage_t_impl()
  - nonstd::expected_lite::detail::storage_t_impl
  - nonstd::expected_lite::detail::construct_error
  - nonstd::expected_lite::detail::construct_error
  - nonstd::expected_lite::detail::emplace_error
  - nonstd::expected_lite::detail::emplace_error
  - nonstd::expected_lite::detail::destruct_error
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::has_value
  - nonstd::expected_lite::detail::set_has_value
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
  - ~storage_t_noncopy_nonmove_impl()
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::storage_t_noncopy_nonmove_impl
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::destruct_error
  - '& value() const &'
  - '& value() &'
  - '&& value() const &&'
  - '&& value() &&'
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::value_ptr
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::has_value
  - nonstd::expected_lite::detail::storage_t_noncopy_nonmove_impl::set_has_value
  - nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
  - ~storage_t_impl()
  - nonstd::expected_lite::detail::storage_t_impl::storage_t_impl
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_value
  - nonstd::expected_lite::detail::storage_t_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_impl::emplace_value
  - nonstd::expected_lite::detail::storage_t_impl::destruct_value
  - nonstd::expected_lite::detail::storage_t_impl::construct_error
  - nonstd::expected_lite::detail::storage_t_impl::construct_error
  - nonstd::expected_lite::detail::storage_t_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_impl::emplace_error
  - nonstd::expected_lite::detail::storage_t_impl::destruct_error
  - '& value() const &'
  - '& value() &'
  - '&& value() const &&'
  - '&& value() &&'
  - nonstd::expected_lite::detail::storage_t_impl::value_ptr
  - nonstd::expected_lite::detail::storage_t_impl::value_ptr
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::storage_t_impl::has_value
  - nonstd::expected_lite::detail::storage_t_impl::set_has_value
  - nonstd::expected_lite::detail::storage_t_impl
  - ~storage_t_impl()
  - nonstd::expected_lite::detail::storage_t_impl
  - nonstd::expected_lite::detail::construct_error
  - nonstd::expected_lite::detail::construct_error
  - nonstd::expected_lite::detail::emplace_error
  - nonstd::expected_lite::detail::emplace_error
  - nonstd::expected_lite::detail::destruct_error
  - '& error() const &'
  - '& error() &'
  - '&& error() const &&'
  - '&& error() &&'
  - nonstd::expected_lite::detail::has_value
  - nonstd::expected_lite::detail::set_has_value
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, true, false>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<T, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - ~storage_t()
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::storage_t<void, E, false, true>::storage_t
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_function_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke_member_object_impl
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::detail::invoke
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - nonstd::expected_lite::unexpected_type
  - '& operator=( unexpected_type const & )'
  - '& operator=( unexpected_type && )'
  - '& operator=( unexpected_type<E2> const & other )'
  - '& operator=( unexpected_type<E2> && other )'
  - '& error() & noexcept'
  - '& error() const & noexcept'
  - '&& error() && noexcept'
  - '&& error() const && noexcept'
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::swap
  - nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
  - ~unexpected_type()
  - nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
  - nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
  - nonstd::expected_lite::unexpected_type< std::exception_ptr >::unexpected_type
  - '& value() const'
  - '& value()'
  - operator==( unexpected_type<E1> const & x, unexpected_type<E2> const & y )
  - operator!=( unexpected_type<E1> const & x, unexpected_type<E2> const & y )
  - operator<( unexpected_type<E> const & x, unexpected_type<E> const & y )
  - operator>( unexpected_type<E> const & x, unexpected_type<E> const & y )
  - operator<=( unexpected_type<E> const & x, unexpected_type<E> const & y )
  - operator>=( unexpected_type<E> const & x, unexpected_type<E> const & y )
  - nonstd::expected_lite::swap
  - operator<( unexpected_type<std::exception_ptr> const & /*x*/, unexpected_type<std::exception_ptr>
    const & /*y*/ )
  - operator>( unexpected_type<std::exception_ptr> const & /*x*/, unexpected_type<std::exception_ptr>
    const & /*y*/ )
  - operator<=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
    const & y )
  - operator>=( unexpected_type<std::exception_ptr> const & x, unexpected_type<std::exception_ptr>
    const & y )
  - nonstd::expected_lite::make_unexpected
  - nonstd::expected_lite::make_unexpected_from_current_exception
  - nonstd::expected_lite::bad_expected_access< void >::bad_expected_access
  - nonstd::expected_lite::bad_expected_access::bad_expected_access
  - nonstd::expected_lite::bad_expected_access::what
  - '& error() &'
  - '& error() const &'
  - '&& error() &&'
  - '&& error() const &&'
  - nonstd::expected_lite::detail::text
  - nonstd::expected_lite::detail::text
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::rethrow
  - nonstd::expected_lite::expected::expected
  - nonstd::expected_lite::expected::expected
  - nonstd::expected_lite::expected::expected
  - nonstd::expected_lite::contained
  - nonstd::expected_lite::contained
  - nonstd::expected_lite::expected
  - nonstd::expected_lite::expected
  - ~expected()
  - '& operator=( expected const & other )'
  - "& operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_constructible<
    \  T>::value\n        && std::is_nothrow_move_assignable<   T>::value\n        &&
    std::is_nothrow_move_constructible<E>::value     // added for missing\n        &&
    std::is_nothrow_move_assignable<   E>::value )"
  - '& operator=( U && value )'
  - '& operator=( nonstd::unexpected_type<G> const & error )'
  - '& operator=( nonstd::unexpected_type<G> && error )'
  - nonstd::expected_lite::emplace
  - nonstd::expected_lite::emplace
  - nonstd::expected_lite::swap
  - '* operator ->() const'
  - '* operator ->()'
  - '& operator *() const &'
  - '& operator *() &'
  - '&& operator *() const &&'
  - '&& operator *() &&'
  - operator bool() const noexcept
  - nonstd::expected_lite::has_value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::get_unexpected
  - nonstd::expected_lite::has_exception
  - nonstd::expected_lite::value_or
  - nonstd::expected_lite::value_or
  - nonstd::expected_lite::error_or
  - nonstd::expected_lite::error_or
  - detail::invoke_result_nocvref_t< F, value_type & > and_then( F && f ) &
  - detail::invoke_result_nocvref_t< F, const value_type & > and_then( F && f ) const
    &
  - detail::invoke_result_nocvref_t< F, value_type && > and_then( F && f ) &&
  - detail::invoke_result_nocvref_t< F, const value_type && > and_then( F && f ) const
    &&
  - detail::invoke_result_nocvref_t< F, error_type & > or_else( F && f ) &
  - detail::invoke_result_nocvref_t< F, const error_type & > or_else( F && f ) const
    &
  - detail::invoke_result_nocvref_t< F, error_type && > or_else( F && f ) &&
  - detail::invoke_result_nocvref_t< F, const error_type && > or_else( F && f ) const
    &&
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F, value_type
    & >, error_type >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F, const value_type
    & >, error_type >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F, value_type
    && >, error_type >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F, const value_type
    && >, error_type >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
    F, error_type & > >::transform_error
  - nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
    F, const error_type & > >::transform_error
  - nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
    F, error_type && > >::transform_error
  - nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
    F, const error_type && > >::transform_error
  - nonstd::expected_lite::expected<void, E>::expected
  - nonstd::expected_lite::expected<void, E>::expected
  - nonstd::expected_lite::expected<void, E>::expected
  - nonstd::expected_lite::expected<void, E>::expected
  - nonstd::expected_lite::expected
  - ~expected()
  - '& operator=( expected const & other )'
  - "& operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_assignable<E>::value
    &&\n        std::is_nothrow_move_constructible<E>::value )"
  - nonstd::expected_lite::emplace
  - nonstd::expected_lite::swap
  - operator bool() const noexcept
  - nonstd::expected_lite::has_value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::get_unexpected
  - nonstd::expected_lite::has_exception
  - nonstd::expected_lite::error_or
  - nonstd::expected_lite::error_or
  - detail::invoke_result_nocvref_t< F > and_then( F && f ) &
  - detail::invoke_result_nocvref_t< F > and_then( F && f ) const &
  - detail::invoke_result_nocvref_t< F > and_then( F && f ) &&
  - detail::invoke_result_nocvref_t< F > and_then( F && f ) const &&
  - detail::invoke_result_nocvref_t< F, error_type & > or_else( F && f ) &
  - detail::invoke_result_nocvref_t< F, const error_type & > or_else( F && f ) const
    &
  - detail::invoke_result_nocvref_t< F, error_type && > or_else( F && f ) &&
  - detail::invoke_result_nocvref_t< F, const error_type && > or_else( F && f ) const
    &&
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F >, error_type
    >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F >, error_type
    >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F >, error_type
    >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F >, error_type
    >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< void, detail::transform_invoke_result_t< F, error_type
    & > >::transform_error
  - nonstd::expected_lite::expected< void, detail::transform_invoke_result_t< F, const
    error_type & > >::transform_error
  - nonstd::expected_lite::expected< void, detail::transform_invoke_result_t< F, error_type
    && > >::transform_error
  - nonstd::expected_lite::expected< void, detail::transform_invoke_result_t< F, const
    error_type && > >::transform_error
  - operator==( expected<T1,E1> const & x, expected<T2,E2> const & y )
  - operator==( expected<T1,E1> const & x, expected<T2,E2> const & y )
  - operator!=( expected<T1,E1> const & x, expected<T2,E2> const & y )
  - operator<( expected<T,E> const & x, expected<T,E> const & y )
  - operator>( expected<T,E> const & x, expected<T,E> const & y )
  - operator<=( expected<T,E> const & x, expected<T,E> const & y )
  - operator>=( expected<T,E> const & x, expected<T,E> const & y )
  - operator==( expected<T1,E1> const & x, T2 const & v )
  - operator==(T2 const & v, expected<T1,E1> const & x )
  - operator!=( expected<T1,E1> const & x, T2 const & v )
  - operator!=( T2 const & v, expected<T1,E1> const & x )
  - operator<( expected<T,E> const & x, T const & v )
  - operator<( T const & v, expected<T,E> const & x )
  - operator>( T const & v, expected<T,E> const & x )
  - operator>( expected<T,E> const & x, T const & v )
  - operator<=( T const & v, expected<T,E> const & x )
  - operator<=( expected<T,E> const & x, T const & v )
  - operator>=( expected<T,E> const & x, T const & v )
  - operator>=( T const & v, expected<T,E> const & x )
  - operator==( expected<T1,E1> const & x, unexpected_type<E2> const & u )
  - operator==( unexpected_type<E2> const & u, expected<T1,E1> const & x )
  - operator!=( expected<T1,E1> const & x, unexpected_type<E2> const & u )
  - operator!=( unexpected_type<E2> const & u, expected<T1,E1> const & x )
  - operator<( expected<T,E> const & x, unexpected_type<E> const & u )
  - operator<( unexpected_type<E> const & u, expected<T,E> const & x )
  - operator>( expected<T,E> const & x, unexpected_type<E> const & u )
  - operator>( unexpected_type<E> const & u, expected<T,E> const & x )
  - operator<=( expected<T,E> const & x, unexpected_type<E> const & u )
  - operator<=( unexpected_type<E> const & u, expected<T,E> const & x)
  - operator>=( expected<T,E> const & x, unexpected_type<E> const & u  )
  - operator>=( unexpected_type<E> const & u, expected<T,E> const & x )
  - nonstd::expected_lite::swap
  - nonstd::expected_lite::make_expected
  - nonstd::expected_lite::make_expected
  - nonstd::expected_lite::make_expected_from_current_exception
  - nonstd::expected_lite::make_expected_from_exception
  - nonstd::expected_lite::make_expected_from_error
  - nonstd::expected_lite::make_expected_from_call
  - nonstd::expected_lite::make_expected_from_call
  - nonstd::expected_lite::expected::expected
  - nonstd::expected_lite::expected::expected
  - nonstd::expected_lite::expected::expected
  - nonstd::expected_lite::contained
  - nonstd::expected_lite::contained
  - nonstd::expected_lite::expected
  - nonstd::expected_lite::expected
  - ~expected()
  - '& operator=( expected const & other )'
  - "& operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_constructible<
    \  T>::value\n        && std::is_nothrow_move_assignable<   T>::value\n        &&
    std::is_nothrow_move_constructible<E>::value     // added for missing\n        &&
    std::is_nothrow_move_assignable<   E>::value )"
  - '& operator=( U && value )'
  - '& operator=( nonstd::unexpected_type<G> const & error )'
  - '& operator=( nonstd::unexpected_type<G> && error )'
  - nonstd::expected_lite::emplace
  - nonstd::expected_lite::emplace
  - nonstd::expected_lite::swap
  - '* operator ->() const'
  - '* operator ->()'
  - '& operator *() const &'
  - '& operator *() &'
  - '&& operator *() const &&'
  - '&& operator *() &&'
  - operator bool() const noexcept
  - nonstd::expected_lite::has_value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::get_unexpected
  - nonstd::expected_lite::has_exception
  - nonstd::expected_lite::value_or
  - nonstd::expected_lite::value_or
  - nonstd::expected_lite::error_or
  - nonstd::expected_lite::error_or
  - detail::invoke_result_nocvref_t< F, value_type & > and_then( F && f ) &
  - detail::invoke_result_nocvref_t< F, const value_type & > and_then( F && f ) const
    &
  - detail::invoke_result_nocvref_t< F, value_type && > and_then( F && f ) &&
  - detail::invoke_result_nocvref_t< F, const value_type && > and_then( F && f ) const
    &&
  - detail::invoke_result_nocvref_t< F, error_type & > or_else( F && f ) &
  - detail::invoke_result_nocvref_t< F, const error_type & > or_else( F && f ) const
    &
  - detail::invoke_result_nocvref_t< F, error_type && > or_else( F && f ) &&
  - detail::invoke_result_nocvref_t< F, const error_type && > or_else( F && f ) const
    &&
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F, value_type
    & >, error_type >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F, const value_type
    & >, error_type >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F, value_type
    && >, error_type >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F, const value_type
    && >, error_type >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
    F, error_type & > >::transform_error
  - nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
    F, const error_type & > >::transform_error
  - nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
    F, error_type && > >::transform_error
  - nonstd::expected_lite::expected< value_type, detail::transform_invoke_result_t<
    F, const error_type && > >::transform_error
  - nonstd::expected_lite::expected<void, E>::expected
  - nonstd::expected_lite::expected<void, E>::expected
  - nonstd::expected_lite::expected<void, E>::expected
  - nonstd::expected_lite::expected<void, E>::expected
  - nonstd::expected_lite::expected
  - ~expected()
  - '& operator=( expected const & other )'
  - "& operator=( expected && other ) noexcept\n    (\n        std::is_nothrow_move_assignable<E>::value
    &&\n        std::is_nothrow_move_constructible<E>::value )"
  - nonstd::expected_lite::emplace
  - nonstd::expected_lite::swap
  - operator bool() const noexcept
  - nonstd::expected_lite::has_value
  - nonstd::expected_lite::value
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::error
  - nonstd::expected_lite::get_unexpected
  - nonstd::expected_lite::has_exception
  - nonstd::expected_lite::error_or
  - nonstd::expected_lite::error_or
  - detail::invoke_result_nocvref_t< F > and_then( F && f ) &
  - detail::invoke_result_nocvref_t< F > and_then( F && f ) const &
  - detail::invoke_result_nocvref_t< F > and_then( F && f ) &&
  - detail::invoke_result_nocvref_t< F > and_then( F && f ) const &&
  - detail::invoke_result_nocvref_t< F, error_type & > or_else( F && f ) &
  - detail::invoke_result_nocvref_t< F, const error_type & > or_else( F && f ) const
    &
  - detail::invoke_result_nocvref_t< F, error_type && > or_else( F && f ) &&
  - detail::invoke_result_nocvref_t< F, const error_type && > or_else( F && f ) const
    &&
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F >, error_type
    >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F >, error_type
    >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F >, error_type
    >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< detail::transform_invoke_result_t< F >, error_type
    >::transform
  - nonstd::expected_lite::expected< void, error_type >::transform
  - nonstd::expected_lite::expected< void, detail::transform_invoke_result_t< F, error_type
    & > >::transform_error
  - nonstd::expected_lite::expected< void, detail::transform_invoke_result_t< F, const
    error_type & > >::transform_error
  - nonstd::expected_lite::expected< void, detail::transform_invoke_result_t< F, error_type
    && > >::transform_error
  - nonstd::expected_lite::expected< void, detail::transform_invoke_result_t< F, const
    error_type && > >::transform_error
  - operator==( expected<T1,E1> const & x, expected<T2,E2> const & y )
  - operator==( expected<T1,E1> const & x, expected<T2,E2> const & y )
  - operator!=( expected<T1,E1> const & x, expected<T2,E2> const & y )
  - operator<( expected<T,E> const & x, expected<T,E> const & y )
  - operator>( expected<T,E> const & x, expected<T,E> const & y )
  - operator<=( expected<T,E> const & x, expected<T,E> const & y )
  - operator>=( expected<T,E> const & x, expected<T,E> const & y )
  - operator==( expected<T1,E1> const & x, T2 const & v )
  - operator==(T2 const & v, expected<T1,E1> const & x )
  - operator!=( expected<T1,E1> const & x, T2 const & v )
  - operator!=( T2 const & v, expected<T1,E1> const & x )
  - operator<( expected<T,E> const & x, T const & v )
  - operator<( T const & v, expected<T,E> const & x )
  - operator>( T const & v, expected<T,E> const & x )
  - operator>( expected<T,E> const & x, T const & v )
  - operator<=( T const & v, expected<T,E> const & x )
  - operator<=( expected<T,E> const & x, T const & v )
  - operator>=( expected<T,E> const & x, T const & v )
  - operator>=( T const & v, expected<T,E> const & x )
  - operator==( expected<T1,E1> const & x, unexpected_type<E2> const & u )
  - operator==( unexpected_type<E2> const & u, expected<T1,E1> const & x )
  - operator!=( expected<T1,E1> const & x, unexpected_type<E2> const & u )
  - operator!=( unexpected_type<E2> const & u, expected<T1,E1> const & x )
  - operator<( expected<T,E> const & x, unexpected_type<E> const & u )
  - operator<( unexpected_type<E> const & u, expected<T,E> const & x )
  - operator>( expected<T,E> const & x, unexpected_type<E> const & u )
  - operator>( unexpected_type<E> const & u, expected<T,E> const & x )
  - operator<=( expected<T,E> const & x, unexpected_type<E> const & u )
  - operator<=( unexpected_type<E> const & u, expected<T,E> const & x)
  - operator>=( expected<T,E> const & x, unexpected_type<E> const & u  )
  - operator>=( unexpected_type<E> const & u, expected<T,E> const & x )
  - nonstd::expected_lite::swap
  - nonstd::expected_lite::make_expected
  - nonstd::expected_lite::make_expected
  - nonstd::expected_lite::make_expected_from_current_exception
  - nonstd::expected_lite::make_expected_from_exception
  - nonstd::expected_lite::make_expected_from_error
  - nonstd::expected_lite::make_expected_from_call
  - nonstd::expected_lite::make_expected_from_call
  - operator()(argument_type const & arg) const
  - operator()(argument_type const & arg) const
  - operator()(argument_type const & arg) const
  - operator()(argument_type const & arg) const
  source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: expected_lite_MAJOR
      pos:
        line_end: 15
        line_start: 14
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: expected_lite_MINOR
      pos:
        line_end: 16
        line_start: 15
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '8'
    - item_type: preproc_def
      name: expected_lite_PATCH
      pos:
        line_end: 17
        line_start: 16
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: expected_lite_VERSION
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: expected_STRINGIFY(expected_lite_MAJOR) "." expected_STRINGIFY(expected_lite_MINOR)
        "." expected_STRINGIFY(expected_lite_PATCH)
    - item_type: preproc_def
      name: nsel_EXPECTED_DEFAULT
      pos:
        line_end: 26
        line_start: 25
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: nsel_EXPECTED_NONSTD
      pos:
        line_end: 27
        line_start: 26
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: nsel_EXPECTED_STD
      pos:
        line_end: 28
        line_start: 27
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '2'
    - item_type: preproc_def
      name: expected_HAVE_TWEAK_HEADER
      pos:
        line_end: 36
        line_start: 35
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: expected_HAVE_TWEAK_HEADER
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: nsel_CONFIG_SELECT_EXPECTED
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '( nsel_HAVE_STD_EXPECTED ? nsel_EXPECTED_STD : nsel_EXPECTED_NONSTD
        )'
    - item_type: preproc_def
      name: nsel_P0323R
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '7'
    - item_type: preproc_def
      name: nsel_P2505R
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '5'
    - item_type: preproc_def
      name: nsel_CONFIG_NO_EXCEPTIONS
      pos:
        line_end: 91
        line_start: 90
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: nsel_CONFIG_NO_EXCEPTIONS
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: nsel_CONFIG_NO_EXCEPTIONS_SEH
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: ( nsel_CONFIG_NO_EXCEPTIONS && _MSC_VER )
    - item_type: preproc_def
      name: nsel_CPLUSPLUS
      pos:
        line_end: 108
        line_start: 107
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '(_MSC_VER == 1900 ? 201103L : _MSVC_LANG )'
    - item_type: preproc_def
      name: nsel_CPLUSPLUS
      pos:
        line_end: 110
        line_start: 109
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: __cplusplus
    - item_type: preproc_def
      name: nsel_CPP98_OR_GREATER
      pos:
        line_end: 114
        line_start: 113
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: ( nsel_CPLUSPLUS >= 199711L )
    - item_type: preproc_def
      name: nsel_CPP11_OR_GREATER
      pos:
        line_end: 115
        line_start: 114
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: ( nsel_CPLUSPLUS >= 201103L )
    - item_type: preproc_def
      name: nsel_CPP14_OR_GREATER
      pos:
        line_end: 116
        line_start: 115
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: ( nsel_CPLUSPLUS >= 201402L )
    - item_type: preproc_def
      name: nsel_CPP17_OR_GREATER
      pos:
        line_end: 117
        line_start: 116
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: ( nsel_CPLUSPLUS >= 201703L )
    - item_type: preproc_def
      name: nsel_CPP20_OR_GREATER
      pos:
        line_end: 118
        line_start: 117
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: ( nsel_CPLUSPLUS >= 202002L )
    - item_type: preproc_def
      name: nsel_CPP23_OR_GREATER
      pos:
        line_end: 119
        line_start: 118
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: ( nsel_CPLUSPLUS >= 202300L )
    - item_type: preproc_def
      name: nsel_HAVE_STD_EXPECTED
      pos:
        line_end: 125
        line_start: 124
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: nsel_HAVE_STD_EXPECTED
      pos:
        line_end: 127
        line_start: 126
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: nsel_HAVE_STD_EXPECTED
      pos:
        line_end: 130
        line_start: 129
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: nsel_USES_STD_EXPECTED
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: ( (nsel_CONFIG_SELECT_EXPECTED == nsel_EXPECTED_STD) || ((nsel_CONFIG_SELECT_EXPECTED
        == nsel_EXPECTED_DEFAULT) && nsel_HAVE_STD_EXPECTED) )
    - item_type: preproc_def
      name: nonstd_lite_HAVE_IN_PLACE_TYPES
      pos:
        line_end: 140
        line_start: 139
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: nsel_constexpr
      pos:
        line_end: 280
        line_start: 279
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: constexpr
    - item_type: preproc_def
      name: nsel_constexpr14
      pos:
        line_end: 286
        line_start: 285
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: constexpr
    - item_type: preproc_def
      name: nsel_inline17
      pos:
        line_end: 292
        line_start: 291
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: inline
    - item_type: preproc_def
      name: nsel_COMPILER_MSVC_VER
      pos:
        line_end: 312
        line_start: 311
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: (_MSC_VER )
    - item_type: preproc_def
      name: nsel_COMPILER_MSVC_VERSION
      pos:
        line_end: 313
        line_start: 312
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: (_MSC_VER / 10 - 10 * ( 5 + (_MSC_VER < 1900)) )
    - item_type: preproc_def
      name: nsel_COMPILER_MSVC_VER
      pos:
        line_end: 315
        line_start: 314
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: nsel_COMPILER_MSVC_VERSION
      pos:
        line_end: 316
        line_start: 315
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: nsel_COMPILER_CLANG_VERSION
      pos:
        line_end: 322
        line_start: 321
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: nsel_COMPILER_VERSION(__clang_major__, __clang_minor__, __clang_patchlevel__)
    - item_type: preproc_def
      name: nsel_COMPILER_CLANG_VERSION
      pos:
        line_end: 324
        line_start: 323
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: nsel_COMPILER_GNUC_VERSION
      pos:
        line_end: 328
        line_start: 327
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: nsel_COMPILER_VERSION(__GNUC__, __GNUC_MINOR__, __GNUC_PATCHLEVEL__)
    - item_type: preproc_def
      name: nsel_COMPILER_GNUC_VERSION
      pos:
        line_end: 330
        line_start: 329
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: nsel_HAS_CPP0X
      pos:
        line_end: 386
        line_start: 385
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: _HAS_CPP0X
    - item_type: preproc_def
      name: nsel_HAS_CPP0X
      pos:
        line_end: 388
        line_start: 387
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: nsel_CPP17_000
      pos:
        line_end: 393
        line_start: 392
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: (nsel_CPP17_OR_GREATER)
    - item_type: preproc_def
      name: nsel_HAVE_DEPRECATED
      pos:
        line_end: 397
        line_start: 396
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type_or_value: nsel_CPP17_000
    structs:
    - fields: []
      item_type: struct
      name: in_place_type_tag
      pos:
        line_end: 174
        line_start: 174
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: in_place_index_tag
      pos:
        line_end: 177
        line_start: 177
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: in_place_type_tag
      pos:
        line_end: 174
        line_start: 174
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: in_place_index_tag
      pos:
        line_end: 177
        line_start: 177
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: in_place_t
      pos:
        line_end: 181
        line_start: 181
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: in_place_type_tag
      pos:
        line_end: 174
        line_start: 174
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: in_place_index_tag
      pos:
        line_end: 177
        line_start: 177
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: in_place_type_tag
      pos:
        line_end: 174
        line_start: 174
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: in_place_index_tag
      pos:
        line_end: 177
        line_start: 177
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: in_place_t
      pos:
        line_end: 181
        line_start: 181
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 435
        line_start: 428
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 452
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 435
        line_start: 428
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 452
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 458
        line_start: 458
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 461
        line_start: 461
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction
      pos:
        line_end: 465
        line_start: 465
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction<B1>
      pos:
        line_end: 466
        line_start: 466
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction<B1, Bn...>
      pos:
        line_end: 469
        line_start: 469
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 435
        line_start: 428
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 452
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 435
        line_start: 428
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 452
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 458
        line_start: 458
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 461
        line_start: 461
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction
      pos:
        line_end: 465
        line_start: 465
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction<B1>
      pos:
        line_end: 466
        line_start: 466
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction<B1, Bn...>
      pos:
        line_end: 469
        line_start: 469
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: remove_cvref
      pos:
        line_end: 489
        line_start: 486
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: remove_cvref
      pos:
        line_end: 489
        line_start: 486
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_expected
      pos:
        line_end: 504
        line_start: 504
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_expected< expected< T, E > >
      pos:
        line_end: 507
        line_start: 507
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields:
      - name: m_has_value
        type: bool
      item_type: struct
      name: storage_t_impl<void, E>
      pos:
        line_end: 888
        line_start: 807
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_reference_wrapper
      pos:
        line_end: 1051
        line_start: 1051
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_reference_wrapper< std::reference_wrapper< T > >
      pos:
        line_end: 1053
        line_start: 1053
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_expected_value_type
      pos:
        line_end: 1185
        line_start: 1185
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_expected
      pos:
        line_end: 504
        line_start: 504
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_expected< expected< T, E > >
      pos:
        line_end: 507
        line_start: 507
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields:
      - name: m_has_value
        type: bool
      item_type: struct
      name: storage_t_impl<void, E>
      pos:
        line_end: 888
        line_start: 807
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_reference_wrapper
      pos:
        line_end: 1051
        line_start: 1051
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_reference_wrapper< std::reference_wrapper< T > >
      pos:
        line_end: 1053
        line_start: 1053
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_expected_value_type
      pos:
        line_end: 1185
        line_start: 1185
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_unexpected
      pos:
        line_end: 1551
        line_start: 1551
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_unexpected< unexpected_type<E> >
      pos:
        line_end: 1554
        line_start: 1554
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: unexpect_t
      pos:
        line_end: 1646
        line_start: 1646
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits
      pos:
        line_end: 1671
        line_start: 1661
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits< std::exception_ptr >
      pos:
        line_end: 1684
        line_start: 1674
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits< std::error_code >
      pos:
        line_end: 1697
        line_start: 1687
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits
      pos:
        line_end: 1708
        line_start: 1702
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits< std::exception_ptr >
      pos:
        line_end: 1717
        line_start: 1711
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits< std::error_code >
      pos:
        line_end: 1726
        line_start: 1720
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_unexpected_type
      pos:
        line_end: 1740
        line_start: 1736
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_unexpected_type< unexpected_type< T > >
      pos:
        line_end: 1743
        line_start: 1743
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_unexpected_type
      pos:
        line_end: 1740
        line_start: 1736
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_unexpected_type< unexpected_type< T > >
      pos:
        line_end: 1743
        line_start: 1743
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 435
        line_start: 428
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 452
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 435
        line_start: 428
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 452
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 458
        line_start: 458
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 461
        line_start: 461
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction
      pos:
        line_end: 465
        line_start: 465
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction<B1>
      pos:
        line_end: 466
        line_start: 466
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction<B1, Bn...>
      pos:
        line_end: 469
        line_start: 469
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 435
        line_start: 428
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 452
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 435
        line_start: 428
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 452
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 458
        line_start: 458
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 461
        line_start: 461
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction
      pos:
        line_end: 465
        line_start: 465
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction<B1>
      pos:
        line_end: 466
        line_start: 466
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction<B1, Bn...>
      pos:
        line_end: 469
        line_start: 469
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: remove_cvref
      pos:
        line_end: 489
        line_start: 486
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: remove_cvref
      pos:
        line_end: 489
        line_start: 486
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_expected
      pos:
        line_end: 504
        line_start: 504
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_expected< expected< T, E > >
      pos:
        line_end: 507
        line_start: 507
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields:
      - name: m_has_value
        type: bool
      item_type: struct
      name: storage_t_impl<void, E>
      pos:
        line_end: 888
        line_start: 807
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_reference_wrapper
      pos:
        line_end: 1051
        line_start: 1051
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_reference_wrapper< std::reference_wrapper< T > >
      pos:
        line_end: 1053
        line_start: 1053
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_expected_value_type
      pos:
        line_end: 1185
        line_start: 1185
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_expected
      pos:
        line_end: 504
        line_start: 504
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_expected< expected< T, E > >
      pos:
        line_end: 507
        line_start: 507
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields:
      - name: m_has_value
        type: bool
      item_type: struct
      name: storage_t_impl<void, E>
      pos:
        line_end: 888
        line_start: 807
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_reference_wrapper
      pos:
        line_end: 1051
        line_start: 1051
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_reference_wrapper< std::reference_wrapper< T > >
      pos:
        line_end: 1053
        line_start: 1053
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_expected_value_type
      pos:
        line_end: 1185
        line_start: 1185
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_unexpected
      pos:
        line_end: 1551
        line_start: 1551
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_unexpected< unexpected_type<E> >
      pos:
        line_end: 1554
        line_start: 1554
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: unexpect_t
      pos:
        line_end: 1646
        line_start: 1646
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits
      pos:
        line_end: 1671
        line_start: 1661
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits< std::exception_ptr >
      pos:
        line_end: 1684
        line_start: 1674
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits< std::error_code >
      pos:
        line_end: 1697
        line_start: 1687
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits
      pos:
        line_end: 1708
        line_start: 1702
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits< std::exception_ptr >
      pos:
        line_end: 1717
        line_start: 1711
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits< std::error_code >
      pos:
        line_end: 1726
        line_start: 1720
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_unexpected_type
      pos:
        line_end: 1740
        line_start: 1736
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_unexpected_type< unexpected_type< T > >
      pos:
        line_end: 1743
        line_start: 1743
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_unexpected_type
      pos:
        line_end: 1740
        line_start: 1736
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_unexpected_type< unexpected_type< T > >
      pos:
        line_end: 1743
        line_start: 1743
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: rebind
      pos:
        line_end: 1778
        line_start: 1775
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: rebind
      pos:
        line_end: 1778
        line_start: 1775
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 435
        line_start: 428
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 452
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 435
        line_start: 428
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 452
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 458
        line_start: 458
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 461
        line_start: 461
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction
      pos:
        line_end: 465
        line_start: 465
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction<B1>
      pos:
        line_end: 466
        line_start: 466
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction<B1, Bn...>
      pos:
        line_end: 469
        line_start: 469
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 435
        line_start: 428
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 452
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 435
        line_start: 428
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 452
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 458
        line_start: 458
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 461
        line_start: 461
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction
      pos:
        line_end: 465
        line_start: 465
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction<B1>
      pos:
        line_end: 466
        line_start: 466
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction<B1, Bn...>
      pos:
        line_end: 469
        line_start: 469
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: remove_cvref
      pos:
        line_end: 489
        line_start: 486
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: remove_cvref
      pos:
        line_end: 489
        line_start: 486
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_expected
      pos:
        line_end: 504
        line_start: 504
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_expected< expected< T, E > >
      pos:
        line_end: 507
        line_start: 507
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields:
      - name: m_has_value
        type: bool
      item_type: struct
      name: storage_t_impl<void, E>
      pos:
        line_end: 888
        line_start: 807
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_reference_wrapper
      pos:
        line_end: 1051
        line_start: 1051
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_reference_wrapper< std::reference_wrapper< T > >
      pos:
        line_end: 1053
        line_start: 1053
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_expected_value_type
      pos:
        line_end: 1185
        line_start: 1185
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_expected
      pos:
        line_end: 504
        line_start: 504
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_expected< expected< T, E > >
      pos:
        line_end: 507
        line_start: 507
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields:
      - name: m_has_value
        type: bool
      item_type: struct
      name: storage_t_impl<void, E>
      pos:
        line_end: 888
        line_start: 807
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_reference_wrapper
      pos:
        line_end: 1051
        line_start: 1051
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_reference_wrapper< std::reference_wrapper< T > >
      pos:
        line_end: 1053
        line_start: 1053
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_expected_value_type
      pos:
        line_end: 1185
        line_start: 1185
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_unexpected
      pos:
        line_end: 1551
        line_start: 1551
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_unexpected< unexpected_type<E> >
      pos:
        line_end: 1554
        line_start: 1554
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: unexpect_t
      pos:
        line_end: 1646
        line_start: 1646
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits
      pos:
        line_end: 1671
        line_start: 1661
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits< std::exception_ptr >
      pos:
        line_end: 1684
        line_start: 1674
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits< std::error_code >
      pos:
        line_end: 1697
        line_start: 1687
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits
      pos:
        line_end: 1708
        line_start: 1702
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits< std::exception_ptr >
      pos:
        line_end: 1717
        line_start: 1711
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits< std::error_code >
      pos:
        line_end: 1726
        line_start: 1720
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_unexpected_type
      pos:
        line_end: 1740
        line_start: 1736
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_unexpected_type< unexpected_type< T > >
      pos:
        line_end: 1743
        line_start: 1743
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_unexpected_type
      pos:
        line_end: 1740
        line_start: 1736
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_unexpected_type< unexpected_type< T > >
      pos:
        line_end: 1743
        line_start: 1743
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 435
        line_start: 428
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 452
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 435
        line_start: 428
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 452
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 458
        line_start: 458
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 461
        line_start: 461
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction
      pos:
        line_end: 465
        line_start: 465
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction<B1>
      pos:
        line_end: 466
        line_start: 466
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction<B1, Bn...>
      pos:
        line_end: 469
        line_start: 469
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 435
        line_start: 428
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 452
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 435
        line_start: 428
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 452
        line_start: 437
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_swappable
      pos:
        line_end: 458
        line_start: 458
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_nothrow_swappable
      pos:
        line_end: 461
        line_start: 461
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction
      pos:
        line_end: 465
        line_start: 465
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction<B1>
      pos:
        line_end: 466
        line_start: 466
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: conjunction<B1, Bn...>
      pos:
        line_end: 469
        line_start: 469
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: remove_cvref
      pos:
        line_end: 489
        line_start: 486
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: remove_cvref
      pos:
        line_end: 489
        line_start: 486
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_expected
      pos:
        line_end: 504
        line_start: 504
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_expected< expected< T, E > >
      pos:
        line_end: 507
        line_start: 507
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields:
      - name: m_has_value
        type: bool
      item_type: struct
      name: storage_t_impl<void, E>
      pos:
        line_end: 888
        line_start: 807
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_reference_wrapper
      pos:
        line_end: 1051
        line_start: 1051
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_reference_wrapper< std::reference_wrapper< T > >
      pos:
        line_end: 1053
        line_start: 1053
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_expected_value_type
      pos:
        line_end: 1185
        line_start: 1185
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_expected
      pos:
        line_end: 504
        line_start: 504
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_expected< expected< T, E > >
      pos:
        line_end: 507
        line_start: 507
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields:
      - name: m_has_value
        type: bool
      item_type: struct
      name: storage_t_impl<void, E>
      pos:
        line_end: 888
        line_start: 807
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_reference_wrapper
      pos:
        line_end: 1051
        line_start: 1051
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_reference_wrapper< std::reference_wrapper< T > >
      pos:
        line_end: 1053
        line_start: 1053
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_expected_value_type
      pos:
        line_end: 1185
        line_start: 1185
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_unexpected
      pos:
        line_end: 1551
        line_start: 1551
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: is_unexpected< unexpected_type<E> >
      pos:
        line_end: 1554
        line_start: 1554
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: unexpect_t
      pos:
        line_end: 1646
        line_start: 1646
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits
      pos:
        line_end: 1671
        line_start: 1661
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits< std::exception_ptr >
      pos:
        line_end: 1684
        line_start: 1674
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits< std::error_code >
      pos:
        line_end: 1697
        line_start: 1687
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits
      pos:
        line_end: 1708
        line_start: 1702
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits< std::exception_ptr >
      pos:
        line_end: 1717
        line_start: 1711
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: error_traits< std::error_code >
      pos:
        line_end: 1726
        line_start: 1720
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_unexpected_type
      pos:
        line_end: 1740
        line_start: 1736
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_unexpected_type< unexpected_type< T > >
      pos:
        line_end: 1743
        line_start: 1743
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_unexpected_type
      pos:
        line_end: 1740
        line_start: 1736
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: valid_unexpected_type< unexpected_type< T > >
      pos:
        line_end: 1743
        line_start: 1743
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: rebind
      pos:
        line_end: 1778
        line_start: 1775
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: rebind
      pos:
        line_end: 1778
        line_start: 1775
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: hash< nonstd::expected<T,E> >
      pos:
        line_end: 3508
        line_start: 3499
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: hash< nonstd::expected<T&,E> >
      pos:
        line_end: 3521
        line_start: 3512
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: hash< nonstd::expected<void,E> >
      pos:
        line_end: 3531
        line_start: 3529
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: hash< nonstd::expected<T,E> >
      pos:
        line_end: 3508
        line_start: 3499
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: hash< nonstd::expected<T&,E> >
      pos:
        line_end: 3521
        line_start: 3512
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    - fields: []
      item_type: struct
      name: hash< nonstd::expected<void,E> >
      pos:
        line_end: 3531
        line_start: 3529
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
    typedefs:
    - item_type: typedef
      name: type
      pos:
        line_end: 488
        line_start: 488
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type: typename std::remove_cv< typename std::remove_reference<T>::type >::type
    - item_type: typedef
      name: type
      pos:
        line_end: 488
        line_start: 488
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type: typename std::remove_cv< typename std::remove_reference<T>::type >::type
    - item_type: typedef
      name: type
      pos:
        line_end: 488
        line_start: 488
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type: typename std::remove_cv< typename std::remove_reference<T>::type >::type
    - item_type: typedef
      name: type
      pos:
        line_end: 488
        line_start: 488
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type: typename std::remove_cv< typename std::remove_reference<T>::type >::type
    - item_type: typedef
      name: type
      pos:
        line_end: 488
        line_start: 488
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type: typename std::remove_cv< typename std::remove_reference<T>::type >::type
    - item_type: typedef
      name: type
      pos:
        line_end: 488
        line_start: 488
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type: typename std::remove_cv< typename std::remove_reference<T>::type >::type
    - item_type: typedef
      name: type
      pos:
        line_end: 488
        line_start: 488
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type: typename std::remove_cv< typename std::remove_reference<T>::type >::type
    - item_type: typedef
      name: type
      pos:
        line_end: 488
        line_start: 488
        source_file: /src/behaviortreecpp/include/behaviortree_cpp/contrib/expected.hpp
      type: typename std::remove_cv< typename std::remove_reference<T>::type >::type
    union: []
- function_names:
  - main
  source_file: /src/behaviortreecpp/examples/t07_load_multiple_xml.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/behaviortreecpp/examples/t04_reactive_sequence.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT::convertFromString
  - BT::convertFromString
  - CalculateGoal::CalculateGoal
  - CalculateGoal::tick
  - CalculateGoal::providedPorts
  - PrintTarget::PrintTarget
  - PrintTarget::tick
  - PrintTarget::providedPorts
  - main
  source_file: /src/behaviortreecpp/examples/t03_generic_ports.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: x
        type: double
      item_type: struct
      name: Position2D
      pos:
        line_end: 12
        line_start: 9
        source_file: /src/behaviortreecpp/examples/t03_generic_ports.cpp
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/behaviortreecpp/examples/t09_scripting.cpp
  types:
    enum:
    - enumerators:
      - name: RED
        value: '1'
      - name: GREEN
        value: '3'
      - name: BLUE
        value: '2'
      item_type: enum
      name: Color
      pos:
        line_end: 44
        line_start: 39
        source_file: /src/behaviortreecpp/examples/t09_scripting.cpp
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ThinkWhatToSay::ThinkWhatToSay
  - ThinkWhatToSay::tick
  - ThinkWhatToSay::providedPorts
  - main
  source_file: /src/behaviortreecpp/examples/t02_basic_ports.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/behaviortreecpp/examples/ex03_ncurses_manual_selector.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - PrintNumber::PrintNumber
  - PrintNumber::tick
  - PrintNumber::providedPorts
  - main
  source_file: /src/behaviortreecpp/examples/t16_global_blackboard.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/behaviortreecpp/examples/t01_build_your_first_tree.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - BT_JSON_CONVERTER
  - BT_JSON_CONVERTER
  - UpdatePosition::UpdatePosition
  - UpdatePosition::tick
  - UpdatePosition::providedPorts
  - main
  source_file: /src/behaviortreecpp/examples/t11_groot_howto.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: x
        type: double
      - name: y
        type: double
      item_type: struct
      name: Position2D
      pos:
        line_end: 22
        line_start: 18
        source_file: /src/behaviortreecpp/examples/t11_groot_howto.cpp
    - fields:
      - name: name
        type: std::string
      - name: position
        type: Position2D
      - name: speed
        type: double
      item_type: struct
      name: Waypoint
      pos:
        line_end: 40
        line_start: 35
        source_file: /src/behaviortreecpp/examples/t11_groot_howto.cpp
    typedefs: []
    union: []
- function_names:
  - ~Animal()
  - Animal::name
  - Cat::name
  - Sphynx::name
  - CreateCat::CreateCat
  - CreateCat::tick
  - CreateCat::providedPorts
  - CreateSphynx::CreateSphynx
  - CreateSphynx::tick
  - CreateSphynx::providedPorts
  - SayHi::SayHi
  - SayHi::tick
  - SayHi::providedPorts
  - main
  source_file: /src/behaviortreecpp/examples/t19_polymorphic_ports.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - GenerateWaypoints::GenerateWaypoints
  - GenerateWaypoints::tick
  - GenerateWaypoints::providedPorts
  - PrintNumber::PrintNumber
  - PrintNumber::tick
  - PrintNumber::providedPorts
  - UseWaypoint::UseWaypoint
  - UseWaypoint::tick
  - UseWaypoint::providedPorts
  - main
  source_file: /src/behaviortreecpp/examples/t18_waypoints.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: x
        type: double
      item_type: struct
      name: Pose2D
      pos:
        line_end: 16
        line_start: 13
        source_file: /src/behaviortreecpp/examples/t18_waypoints.cpp
    typedefs: []
    union: []
- function_names:
  - operator==(const Point2D& p) const
  - operator!=(const Point2D& p) const
  - BT_JSON_CONVERTER
  - BT::convertFromString<Point2D>(StringView str)
  - NodeWithDefaultPoints::NodeWithDefaultPoints
  - NodeWithDefaultPoints::tick
  - NodeWithDefaultPoints::providedPorts
  - main
  source_file: /src/behaviortreecpp/examples/t12_default_ports.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: x
        type: int
      - name: y
        type: int
      item_type: struct
      name: Point2D
      pos:
        line_end: 22
        line_start: 10
        source_file: /src/behaviortreecpp/examples/t12_default_ports.cpp
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/behaviortreecpp/examples/t06_subtree_port_remapping.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - NoCopyObj::NoCopyObj
  - NoCopyObj::NoCopyObj
  - '& operator=(const NoCopyObj&)'
  - NoCopyObj::value
  - Action_A::Action_A
  - Action_A::tick
  - Action_A::providedPorts
  - Action_B::Action_B
  - Action_B::initialize
  - Action_B::tick
  - Action_B::providedPorts
  - main
  source_file: /src/behaviortreecpp/examples/t08_additional_node_args.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - SetTask::SetTask
  - SetTask::tick
  - SetTask::providedPorts
  - main
  source_file: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: type
        type: int
      - name: name
        type: std::string
      item_type: struct
      name: TaskA
      pos:
        line_end: 10
        line_start: 6
        source_file: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp
    - fields:
      - name: value
        type: double
      - name: name
        type: std::string
      item_type: struct
      name: TaskB
      pos:
        line_end: 16
        line_start: 12
        source_file: /src/behaviortreecpp/examples/ex03_sqlite_log.cpp
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/behaviortreecpp/examples/t14_subtree_model.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - MyLegacyMoveTo::go
  - BT::convertFromString
  - BT::convertFromString
  - main
  source_file: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: x
        type: double
      item_type: struct
      name: Point3D
      pos:
        line_end: 13
        line_start: 10
        source_file: /src/behaviortreecpp/examples/ex01_wrap_legacy.cpp
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/behaviortreecpp/examples/t15_nodes_mocking.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/behaviortreecpp/examples/t05_crossdoor.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/behaviortreecpp/examples/t17_blackboard_backup.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ThinkRuntimePort::ThinkRuntimePort
  - ThinkRuntimePort::tick
  - SayRuntimePort::SayRuntimePort
  - SayRuntimePort::tick
  - main
  source_file: /src/behaviortreecpp/examples/ex02_runtime_ports.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/behaviortreecpp/examples/t15_nodes_mocking_strict_failure.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/behaviortreecpp/examples/t10_observer.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - PushIntoVector::PushIntoVector
  - PushIntoVector::tick
  - PushIntoVector::providedPorts
  - main
  source_file: /src/behaviortreecpp/examples/t13_access_by_ref.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - main
  source_file: /src/behaviortreecpp/examples/plugin_example/plugin_executor.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - ToJson
  - BT::convertFromString
  - BT::convertFromString
  source_file: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp
  types:
    enum: []
    preproc_defs: []
    structs:
    - fields:
      - name: w
        type: double
      - name: x
        type: double
      - name: y
        type: double
      - name: z
        type: double
      item_type: struct
      name: Vector4D
      pos:
        line_end: 12
        line_start: 6
        source_file: /src/behaviortreecpp/examples/plugin_example/custom_type.hpp
    typedefs: []
    union: []
- function_names:
  - PrintVector::PrintVector
  - PrintVector::tick
  - PrintVector::providedPorts
  - BT_REGISTER_NODES
  source_file: /src/behaviortreecpp/examples/plugin_example/plugin_action.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - operator T*() const
  - FLATBUFFERS_STRING_EXPAND
  - FLATBUFFERS_STRING
  - FLATBUFFERS_DELETE_FUNC
  - FLATBUFFERS_DELETE_FUNC
  - FLATBUFFERS_SUPPRESS_UBSAN
  - FLATBUFFERS_SUPPRESS_UBSAN
  - flatbuffers::IsConstTrue
  - flatbuffers::IsConstTrue
  - FLATBUFFERS_ATTRIBUTE
  - FLATBUFFERS_FALLTHROUGH
  - FLATBUFFERS_FALLTHROUGH
  - FLATBUFFERS_FALLTHROUGH
  - flatbuffers::VerifyAlignmentRequirements
  - flatbuffers::EndianSwap
  - FLATBUFFERS_BYTESWAP64
  - FLATBUFFERS_BYTESWAP16
  - flatbuffers::EndianScalar
  - flatbuffers::ReadScalar
  - flatbuffers::WriteScalar
  - flatbuffers::WriteScalar
  - flatbuffers::PaddingBytes
  - flatbuffers::IsTheSameAs
  - flatbuffers::IsFloatTheSameAs
  - flatbuffers::IsTheSameAs
  - flatbuffers::IsTheSameAs
  - flatbuffers::IsOutRange
  - flatbuffers::IsInRange
  - flatbuffers::VerifyAlignmentRequirements
  - flatbuffers::EndianSwap
  - FLATBUFFERS_BYTESWAP64
  - FLATBUFFERS_BYTESWAP16
  - flatbuffers::EndianScalar
  - flatbuffers::ReadScalar
  - flatbuffers::WriteScalar
  - flatbuffers::WriteScalar
  - flatbuffers::PaddingBytes
  - flatbuffers::IsTheSameAs
  - flatbuffers::IsFloatTheSameAs
  - flatbuffers::IsTheSameAs
  - flatbuffers::IsTheSameAs
  - flatbuffers::IsOutRange
  - flatbuffers::IsInRange
  source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: DEBUG_NEW
      pos:
        line_end: 15
        line_start: 14
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: new(_NORMAL_BLOCK, __FILE__, __LINE__)
    - item_type: preproc_def
      name: new
      pos:
        line_end: 16
        line_start: 15
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: DEBUG_NEW
    - item_type: preproc_def
      name: FLATBUFFERS_ASSERT
      pos:
        line_end: 21
        line_start: 20
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: assert
    - item_type: preproc_def
      name: FLATBUFFERS_GCC
      pos:
        line_end: 78
        line_start: 77
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)
    - item_type: preproc_def
      name: FLATBUFFERS_GCC
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '0'
    - item_type: preproc_def
      name: FLATBUFFERS_CLANG
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: (__clang_major__ * 10000 + __clang_minor__ * 100 + __clang_patchlevel__)
    - item_type: preproc_def
      name: FLATBUFFERS_CLANG
      pos:
        line_end: 86
        line_start: 85
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '0'
    - item_type: preproc_def
      name: constexpr
      pos:
        line_end: 114
        line_start: 113
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: const
    - item_type: preproc_def
      name: FLATBUFFERS_LITTLEENDIAN
      pos:
        line_end: 121
        line_start: 120
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '0'
    - item_type: preproc_def
      name: FLATBUFFERS_LITTLEENDIAN
      pos:
        line_end: 127
        line_start: 126
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '0'
    - item_type: preproc_def
      name: FLATBUFFERS_LITTLEENDIAN
      pos:
        line_end: 129
        line_start: 128
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '1'
    - item_type: preproc_def
      name: FLATBUFFERS_LITTLEENDIAN
      pos:
        line_end: 133
        line_start: 132
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '0'
    - item_type: preproc_def
      name: FLATBUFFERS_LITTLEENDIAN
      pos:
        line_end: 135
        line_start: 134
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '1'
    - item_type: preproc_def
      name: FLATBUFFERS_VERSION_MAJOR
      pos:
        line_end: 142
        line_start: 141
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '24'
    - item_type: preproc_def
      name: FLATBUFFERS_VERSION_MINOR
      pos:
        line_end: 143
        line_start: 142
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '3'
    - item_type: preproc_def
      name: FLATBUFFERS_VERSION_REVISION
      pos:
        line_end: 144
        line_start: 143
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '25'
    - item_type: preproc_def
      name: FLATBUFFERS_FINAL_CLASS
      pos:
        line_end: 155
        line_start: 154
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: final
    - item_type: preproc_def
      name: FLATBUFFERS_OVERRIDE
      pos:
        line_end: 156
        line_start: 155
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: override
    - item_type: preproc_def
      name: FLATBUFFERS_EXPLICIT_CPP11
      pos:
        line_end: 157
        line_start: 156
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: explicit
    - item_type: preproc_def
      name: FLATBUFFERS_VTABLE_UNDERLYING_TYPE
      pos:
        line_end: 158
        line_start: 157
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: ': ::flatbuffers::voffset_t'
    - item_type: preproc_def
      name: FLATBUFFERS_CONSTEXPR
      pos:
        line_end: 169
        line_start: 168
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: constexpr
    - item_type: preproc_def
      name: FLATBUFFERS_CONSTEXPR_CPP11
      pos:
        line_end: 170
        line_start: 169
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: constexpr
    - item_type: preproc_def
      name: FLATBUFFERS_CONSTEXPR
      pos:
        line_end: 173
        line_start: 172
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: const
    - item_type: preproc_def
      name: FLATBUFFERS_CONSTEXPR_CPP14
      pos:
        line_end: 179
        line_start: 178
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: FLATBUFFERS_CONSTEXPR_CPP11
    - item_type: preproc_def
      name: FLATBUFFERS_NOEXCEPT
      pos:
        line_end: 187
        line_start: 186
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: noexcept
    - item_type: preproc_def
      name: FLATBUFFERS_HAS_STRING_VIEW
      pos:
        line_end: 228
        line_start: 227
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '1'
    - item_type: preproc_def
      name: FLATBUFFERS_HAS_STRING_VIEW
      pos:
        line_end: 235
        line_start: 234
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '1'
    - item_type: preproc_def
      name: FLATBUFFERS_HAS_STRING_VIEW
      pos:
        line_end: 246
        line_start: 245
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '1'
    - item_type: preproc_def
      name: FLATBUFFERS_GENERAL_HEAP_ALLOC_OK
      pos:
        line_end: 254
        line_start: 253
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '1'
    - item_type: preproc_def
      name: FLATBUFFERS_HAS_NEW_STRTOD
      pos:
        line_end: 264
        line_start: 263
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '1'
    - item_type: preproc_def
      name: FLATBUFFERS_LOCALE_INDEPENDENT
      pos:
        line_end: 275
        line_start: 274
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '1'
    - item_type: preproc_def
      name: FLATBUFFERS_LOCALE_INDEPENDENT
      pos:
        line_end: 277
        line_start: 276
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '0'
    - item_type: preproc_def
      name: FLATBUFFERS_MAX_BUFFER_SIZE
      pos:
        line_end: 342
        line_start: 341
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: std::numeric_limits<::flatbuffers::soffset_t>::max()
    - item_type: preproc_def
      name: FLATBUFFERS_MAX_64_BUFFER_SIZE
      pos:
        line_end: 343
        line_start: 342
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: std::numeric_limits<::flatbuffers::soffset64_t>::max()
    - item_type: preproc_def
      name: FLATBUFFERS_MIN_BUFFER_SIZE
      pos:
        line_end: 350
        line_start: 348
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: "sizeof(uoffset_t) + sizeof(soffset_t) + \\\n   sizeof(uint16_t)
        + sizeof(uint16_t)"
    - item_type: preproc_def
      name: FLATBUFFERS_MAX_ALIGNMENT
      pos:
        line_end: 354
        line_start: 353
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '32'
    - item_type: preproc_def
      name: FLATBUFFERS_BYTESWAP16
      pos:
        line_end: 372
        line_start: 371
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: _byteswap_ushort
    - item_type: preproc_def
      name: FLATBUFFERS_BYTESWAP32
      pos:
        line_end: 373
        line_start: 372
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: _byteswap_ulong
    - item_type: preproc_def
      name: FLATBUFFERS_BYTESWAP64
      pos:
        line_end: 374
        line_start: 373
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: _byteswap_uint64
    - item_type: preproc_def
      name: FLATBUFFERS_BYTESWAP16
      pos:
        line_end: 376
        line_start: 375
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: __REV16
    - item_type: preproc_def
      name: FLATBUFFERS_BYTESWAP32
      pos:
        line_end: 377
        line_start: 376
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: __REV
    - item_type: preproc_def
      name: FLATBUFFERS_BYTESWAP16
      pos:
        line_end: 386
        line_start: 385
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: __builtin_bswap16
    - item_type: preproc_def
      name: FLATBUFFERS_BYTESWAP32
      pos:
        line_end: 388
        line_start: 387
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: __builtin_bswap32
    - item_type: preproc_def
      name: FLATBUFFERS_BYTESWAP64
      pos:
        line_end: 389
        line_start: 388
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: __builtin_bswap64
    - item_type: preproc_def
      name: FLATBUFFERS_MAX_BUFFER_SIZE
      pos:
        line_end: 342
        line_start: 341
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: std::numeric_limits<::flatbuffers::soffset_t>::max()
    - item_type: preproc_def
      name: FLATBUFFERS_MAX_64_BUFFER_SIZE
      pos:
        line_end: 343
        line_start: 342
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: std::numeric_limits<::flatbuffers::soffset64_t>::max()
    - item_type: preproc_def
      name: FLATBUFFERS_MIN_BUFFER_SIZE
      pos:
        line_end: 350
        line_start: 348
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: "sizeof(uoffset_t) + sizeof(soffset_t) + \\\n   sizeof(uint16_t)
        + sizeof(uint16_t)"
    - item_type: preproc_def
      name: FLATBUFFERS_MAX_ALIGNMENT
      pos:
        line_end: 354
        line_start: 353
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: '32'
    - item_type: preproc_def
      name: FLATBUFFERS_BYTESWAP16
      pos:
        line_end: 372
        line_start: 371
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: _byteswap_ushort
    - item_type: preproc_def
      name: FLATBUFFERS_BYTESWAP32
      pos:
        line_end: 373
        line_start: 372
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: _byteswap_ulong
    - item_type: preproc_def
      name: FLATBUFFERS_BYTESWAP64
      pos:
        line_end: 374
        line_start: 373
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: _byteswap_uint64
    - item_type: preproc_def
      name: FLATBUFFERS_BYTESWAP16
      pos:
        line_end: 376
        line_start: 375
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: __REV16
    - item_type: preproc_def
      name: FLATBUFFERS_BYTESWAP32
      pos:
        line_end: 377
        line_start: 376
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: __REV
    - item_type: preproc_def
      name: FLATBUFFERS_BYTESWAP16
      pos:
        line_end: 386
        line_start: 385
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: __builtin_bswap16
    - item_type: preproc_def
      name: FLATBUFFERS_BYTESWAP32
      pos:
        line_end: 388
        line_start: 387
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: __builtin_bswap32
    - item_type: preproc_def
      name: FLATBUFFERS_BYTESWAP64
      pos:
        line_end: 389
        line_start: 388
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type_or_value: __builtin_bswap64
    structs: []
    typedefs:
    - item_type: typedef
      name: string_view
      pos:
        line_end: 225
        line_start: 225
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: string_view
    - item_type: typedef
      name: string_view
      pos:
        line_end: 225
        line_start: 225
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: string_view
    - item_type: typedef
      name: string_view
      pos:
        line_end: 232
        line_start: 232
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: experimental::string_view
    - item_type: typedef
      name: string_view
      pos:
        line_end: 232
        line_start: 232
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: experimental::string_view
    - item_type: typedef
      name: string_view
      pos:
        line_end: 243
        line_start: 243
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: string_view
    - item_type: typedef
      name: string_view
      pos:
        line_end: 243
        line_start: 243
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: string_view
    - item_type: typedef
      name: uoffset_t
      pos:
        line_end: 327
        line_start: 327
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: uint32_t
    - item_type: typedef
      name: uoffset64_t
      pos:
        line_end: 328
        line_start: 328
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: uint64_t
    - item_type: typedef
      name: soffset_t
      pos:
        line_end: 331
        line_start: 331
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: int32_t
    - item_type: typedef
      name: soffset64_t
      pos:
        line_end: 332
        line_start: 332
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: int64_t
    - item_type: typedef
      name: voffset_t
      pos:
        line_end: 336
        line_start: 336
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: uint16_t
    - item_type: typedef
      name: largest_scalar_t
      pos:
        line_end: 338
        line_start: 338
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: uintmax_t
    - item_type: typedef
      name: uoffset_t
      pos:
        line_end: 327
        line_start: 327
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: uint32_t
    - item_type: typedef
      name: uoffset64_t
      pos:
        line_end: 328
        line_start: 328
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: uint64_t
    - item_type: typedef
      name: soffset_t
      pos:
        line_end: 331
        line_start: 331
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: int32_t
    - item_type: typedef
      name: soffset64_t
      pos:
        line_end: 332
        line_start: 332
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: int64_t
    - item_type: typedef
      name: voffset_t
      pos:
        line_end: 336
        line_start: 336
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: uint16_t
    - item_type: typedef
      name: largest_scalar_t
      pos:
        line_end: 338
        line_start: 338
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
      type: uintmax_t
    union:
    - fields:
      - name: t
        type: T
      - name: i
        type: uint16_t
      item_type: union
      name: u = { t }
      pos:
        line_end: 393
        line_start: 393
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    - fields:
      - name: t
        type: T
      - name: i
        type: uint32_t
      item_type: union
      name: u = { t }
      pos:
        line_end: 397
        line_start: 397
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    - fields:
      - name: t
        type: T
      - name: i
        type: uint64_t
      item_type: union
      name: u = { t }
      pos:
        line_end: 401
        line_start: 401
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    - fields:
      - name: t
        type: T
      - name: i
        type: uint16_t
      item_type: union
      name: u = { t }
      pos:
        line_end: 393
        line_start: 393
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    - fields:
      - name: t
        type: T
      - name: i
        type: uint32_t
      item_type: union
      name: u = { t }
      pos:
        line_end: 397
        line_start: 397
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
    - fields:
      - name: t
        type: T
      - name: i
        type: uint64_t
      item_type: union
      name: u = { t }
      pos:
        line_end: 401
        line_start: 401
        source_file: /src/behaviortreecpp/3rdparty/flatbuffers/flatbuffers/base.h
- function_names:
  - pthread_mutex_init
  - pthread_mutex_lock
  - pthread_mutex_unlock
  - pthread_mutex_destroy
  - ARRAY_SIZE
  - get_cur_thread_id
  - get_cur_process_id
  - mtr_time_s
  - CtrlHandler
  - mtr_register_sigint_handler
  - get_cur_thread_id
  - get_cur_process_id
  - mtr_time_s
  - mtr_time_s
  - termination_handler
  - mtr_register_sigint_handler
  - mtr_init_from_stream
  - mtr_init
  - mtr_shutdown
  - mtr_pool_string
  - mtr_start
  - mtr_stop
  - mtr_flush_with_state
  - mtr_flush
  - internal_mtr_raw_event
  - internal_mtr_raw_event_arg
  source_file: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: __thread
      pos:
        line_end: 19
        line_start: 18
        source_file: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
      type_or_value: __declspec(thread)
    - item_type: preproc_def
      name: pthread_mutex_t
      pos:
        line_end: 20
        line_start: 19
        source_file: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
      type_or_value: CRITICAL_SECTION
    - item_type: preproc_def
      name: ATTR_NORETURN
      pos:
        line_end: 38
        line_start: 37
        source_file: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
      type_or_value: __attribute__((noreturn))
    - item_type: preproc_def
      name: 'TRUE'
      pos:
        line_end: 44
        line_start: 43
        source_file: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
      type_or_value: '1'
    - item_type: preproc_def
      name: 'FALSE'
      pos:
        line_end: 45
        line_start: 44
        source_file: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
      type_or_value: '0'
    - item_type: preproc_def
      name: STRING_POOL_SIZE
      pos:
        line_end: 80
        line_start: 79
        source_file: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
      type_or_value: '100'
    structs:
    - fields:
      - name: '*name'
        type: char
      - name: '*cat'
        type: char
      - name: '*id'
        type: void
      - name: ts
        type: int64_t
      - name: pid
        type: uint32_t
      - name: tid
        type: uint32_t
      - name: ph
        type: char
      - name: arg_type
        type: mtr_arg_type
      - name: '*arg_name'
        type: char
      item_type: struct
      name: raw_event
      pos:
        line_end: 63
        line_start: 48
        source_file: /src/behaviortreecpp/3rdparty/minitrace/minitrace.cpp
    typedefs: []
    union: []
- function_names:
  - MTR_BEGIN
  - MTR_END
  - MTR_SCOPE
  - MTR_SCOPE_LIMIT
  - MTR_START
  - MTR_STEP
  - MTR_FINISH
  - MTR_FLOW_START
  - MTR_FLOW_STEP
  - MTR_FLOW_FINISH
  - MTR_BEGIN_C
  - MTR_END_C
  - MTR_SCOPE_C
  - MTR_BEGIN_S
  - MTR_END_S
  - MTR_SCOPE_S
  - MTR_BEGIN_I
  - MTR_END_I
  - MTR_SCOPE_I
  - MTR_INSTANT
  - MTR_INSTANT_C
  - MTR_INSTANT_I
  - MTR_COUNTER
  - MTR_META_PROCESS_NAME
  - MTR_META_THREAD_NAME
  - MTR_META_THREAD_SORT_INDEX
  - MTR_BEGIN_FUNC
  - MTR_END_FUNC
  - MTR_SCOPE_FUNC
  - MTR_INSTANT_FUNC
  - MTR_SCOPE_FUNC_LIMIT_S
  - MTR_SCOPE_FUNC_LIMIT_MS
  - MTR_BEGIN_FUNC_S
  - MTR_END_FUNC_S
  - MTR_SCOPE_FUNC_S
  - MTR_BEGIN_FUNC_C
  - MTR_END_FUNC_C
  - MTR_SCOPE_FUNC_C
  - MTR_BEGIN_FUNC_I
  - MTR_END_FUNC_I
  - MTR_SCOPE_FUNC_I
  - MTRScopedTrace::MTRScopedTrace
  - ~MTRScopedTrace()
  - MTRScopedTraceLimit::MTRScopedTraceLimit
  - ~MTRScopedTraceLimit()
  - MTRScopedTraceArg::MTRScopedTraceArg
  - ~MTRScopedTraceArg()
  source_file: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: INTERNAL_MINITRACE_BUFFER_SIZE
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
      type_or_value: '1000000'
    - item_type: preproc_def
      name: MTR_MAX_ARGS
      pos:
        line_end: 91
        line_start: 90
        source_file: /src/behaviortreecpp/3rdparty/minitrace/minitrace.h
      type_or_value: '1'
    structs: []
    typedefs: []
    union: []
- function_names:
  - _MCO_UNUSED
  - MCO_LOG
  - MCO_ASSERT
  - mco_malloc
  - mco_free
  - _mco_align_forward
  - _mco_prepare_jumpin
  - _mco_prepare_jumpout
  - _mco_main
  - _mco_makectx
  - _mco_makectx
  - _mco_makectx
  - _mco_makectx
  - _mco_makectx
  - _mco_makectx
  - _mco_wrap_main
  - _mco_wrap_main
  - _mco_switch
  - _mco_makectx
  - _mco_jumpin
  - _mco_jumpout
  - _mco_create_context
  - _mco_destroy_context
  - _mco_init_desc_sizes
  - _mco_jumpin
  - _mco_wrap_main
  - _mco_jumpout
  - _mco_create_context
  - _mco_destroy_context
  - _mco_init_desc_sizes
  - _mco_wrap_main
  - _mco_jumpin
  - _mco_jumpout
  - _mco_create_context
  - _mco_destroy_context
  - _mco_init_desc_sizes
  - _mco_jumpin
  - _mco_finish_jumpout
  - _mco_jumpout
  - _mco_create_context
  - _mco_destroy_context
  - _mco_init_desc_sizes
  - mco_desc_init
  - _mco_validate_desc
  - mco_init
  - mco_uninit
  - mco_create
  - mco_destroy
  - mco_resume
  - mco_yield
  - mco_status
  - mco_get_user_data
  - mco_push
  - mco_pop
  - mco_peek
  - mco_get_bytes_stored
  - mco_get_storage_size
  - mco_running
  - _mco_running
  - mco_running
  - mco_result_description
  source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
  types:
    enum:
    - enumerators:
      - name: MCO_DEAD
        value: '0'
      - name: MCO_SUSPENDED
      - name: MCO_NORMAL
      - name: MCO_RUNNING
      item_type: enum
      name: mco_state
      pos:
        line_end: 224
        line_start: 219
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    - enumerators:
      - name: MCO_SUCCESS
        value: '0'
      - name: MCO_GENERIC_ERROR
      - name: MCO_INVALID_POINTER
      - name: MCO_NOT_SUSPENDED
      - name: MCO_INVALID_COROUTINE
      - name: MCO_NOT_RUNNING
      - name: MCO_MAKE_CONTEXT_ERROR
      - name: MCO_SWITCH_CONTEXT_ERROR
      - name: MCO_NOT_ENOUGH_SPACE
      - name: MCO_OUT_OF_MEMORY
      - name: MCO_INVALID_ARGUMENTS
      - name: MCO_INVALID_OPERATION
      - name: MCO_STACK_OVERFLOW
      item_type: enum
      name: mco_result
      pos:
        line_end: 241
        line_start: 227
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    preproc_defs:
    - item_type: preproc_def
      name: MCO_API
      pos:
        line_end: 207
        line_start: 206
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: extern
    - item_type: preproc_def
      name: MCO_DEFAULT_STORAGE_SIZE
      pos:
        line_end: 212
        line_start: 211
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: '1024'
    - item_type: preproc_def
      name: MCO_MIN_STACK_SIZE
      pos:
        line_end: 317
        line_start: 316
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: '32768'
    - item_type: preproc_def
      name: MCO_DEFAULT_STACK_SIZE
      pos:
        line_end: 322
        line_start: 321
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: '57344 '
    - item_type: preproc_def
      name: MCO_MAGIC_NUMBER
      pos:
        line_end: 326
        line_start: 325
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: '0x7E3CB1A9'
    - item_type: preproc_def
      name: MCO_THREAD_LOCAL
      pos:
        line_end: 387
        line_start: 386
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: thread_local
    - item_type: preproc_def
      name: MCO_THREAD_LOCAL
      pos:
        line_end: 389
        line_start: 388
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: _Thread_local
    - item_type: preproc_def
      name: MCO_THREAD_LOCAL
      pos:
        line_end: 391
        line_start: 390
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: __declspec(thread)
    - item_type: preproc_def
      name: MCO_THREAD_LOCAL
      pos:
        line_end: 393
        line_start: 392
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: __thread
    - item_type: preproc_def
      name: MCO_FORCE_INLINE
      pos:
        line_end: 403
        line_start: 402
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: __forceinline
    - item_type: preproc_def
      name: MCO_FORCE_INLINE
      pos:
        line_end: 406
        line_start: 405
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: __inline__ __attribute__((always_inline))
    - item_type: preproc_def
      name: MCO_FORCE_INLINE
      pos:
        line_end: 408
        line_start: 407
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: inline __attribute__((always_inline))
    - item_type: preproc_def
      name: MCO_FORCE_INLINE
      pos:
        line_end: 411
        line_start: 410
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: __inline
    - item_type: preproc_def
      name: MCO_NO_INLINE
      pos:
        line_end: 419
        line_start: 418
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: __attribute__((noinline))
    - item_type: preproc_def
      name: MCO_NO_INLINE
      pos:
        line_end: 421
        line_start: 420
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: __declspec(noinline)
    - item_type: preproc_def
      name: MCO_MALLOC
      pos:
        line_end: 430
        line_start: 429
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: malloc
    - item_type: preproc_def
      name: MCO_FREE
      pos:
        line_end: 431
        line_start: 430
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: free
    - item_type: preproc_def
      name: _MCO_ASM_BLOB
      pos:
        line_end: 586
        line_start: 585
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: __attribute__((section(".text")))
    - item_type: preproc_def
      name: _MCO_ASM_BLOB
      pos:
        line_end: 588
        line_start: 587
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: __declspec(allocate(".text"))
    - item_type: preproc_def
      name: _WIN32_WINNT
      pos:
        line_end: 1302
        line_start: 1301
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: '0x0400'
    - item_type: preproc_def
      name: MCO_ASYNCFY_STACK_SIZE
      pos:
        line_end: 1399
        line_start: 1398
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type_or_value: '16384'
    structs:
    - fields:
      - name: '* context'
        type: void
      - name: state
        type: mco_state
      - name: (*func)(mco_coro* co)
        type: void
      - name: '* prev_co'
        type: mco_coro
      - name: '* user_data'
        type: void
      - name: '* allocator_data'
        type: void
      - name: (*free_cb)(void* ptr, void* allocator_data)
        type: void
      - name: '* stack_base'
        type: void
      - name: stack_size
        type: size_t
      - name: '* storage'
        type: unsigned char
      - name: bytes_stored
        type: size_t
      - name: storage_size
        type: size_t
      - name: '* asan_prev_stack'
        type: void
      - name: '* tsan_prev_fiber'
        type: void
      - name: '* tsan_fiber'
        type: void
      - name: magic_number
        type: size_t
      item_type: struct
      name: mco_coro
      pos:
        line_end: 262
        line_start: 245
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    - fields:
      - name: (*func)(mco_coro* co)
        type: void
      - name: '* user_data'
        type: void
      - name: '* (*malloc_cb)(size_t size, void* allocator_data)'
        type: void
      - name: (*free_cb)(void* ptr, void* allocator_data)
        type: void
      - name: '* allocator_data'
        type: void
      - name: storage_size
        type: size_t
      - name: coro_size
        type: size_t
      - name: stack_size
        type: size_t
      item_type: struct
      name: mco_desc
      pos:
        line_end: 276
        line_start: 265
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    - fields:
      - name: '*rip'
        type: void
      - name: '* xmm[20]'
        type: void
      - name: '* fiber_storage'
        type: void
      - name: '* dealloc_stack'
        type: void
      - name: '* stack_limit'
        type: void
      - name: '* stack_base'
        type: void
      item_type: struct
      name: _mco_ctxbuf
      pos:
        line_end: 582
        line_start: 575
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    - fields:
      - name: '*rip'
        type: void
      item_type: struct
      name: _mco_ctxbuf
      pos:
        line_end: 684
        line_start: 682
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    - fields:
      - name: '* s[12]'
        type: void
      - name: '* ra'
        type: void
      - name: '* pc'
        type: void
      - name: '* sp'
        type: void
      item_type: struct
      name: _mco_ctxbuf
      pos:
        line_end: 768
        line_start: 756
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    - fields:
      - name: '*eip'
        type: void
      item_type: struct
      name: _mco_ctxbuf
      pos:
        line_end: 962
        line_start: 960
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    - fields:
      - name: '*d[4]'
        type: void
      - name: '*r[4]'
        type: void
      - name: '*lr'
        type: void
      - name: '*sp'
        type: void
      item_type: struct
      name: _mco_ctxbuf
      pos:
        line_end: 1020
        line_start: 1012
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    - fields:
      - name: '*x[12]'
        type: void
      - name: '*sp'
        type: void
      - name: '*lr'
        type: void
      - name: '*d[8]'
        type: void
      item_type: struct
      name: _mco_ctxbuf
      pos:
        line_end: 1087
        line_start: 1082
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    - fields:
      - name: ctx
        type: _mco_ctxbuf
      - name: back_ctx
        type: _mco_ctxbuf
      item_type: struct
      name: _mco_context
      pos:
        line_end: 1224
        line_start: 1218
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    - fields:
      - name: '* fib'
        type: void
      - name: '* back_fib'
        type: void
      item_type: struct
      name: _mco_context
      pos:
        line_end: 1311
        line_start: 1308
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    - fields:
      - name: param
        type: LPVOID
      - name: '* except'
        type: void
      - name: '* stack_base'
        type: void
      - name: '* stack_limit'
        type: void
      - name: '* stack_allocation'
        type: void
      - name: context
        type: CONTEXT
      - name: flags
        type: DWORD
      - name: start
        type: LPFIBER_START_ROUTINE
      - name: '**fls_slots'
        type: void
      item_type: struct
      name: _mco_fiber
      pos:
        line_end: 1349
        line_start: 1339
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    - fields:
      - name: fib
        type: emscripten_fiber_t
      - name: '* back_fib'
        type: emscripten_fiber_t
      item_type: struct
      name: _mco_context
      pos:
        line_end: 1404
        line_start: 1401
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    - fields:
      - name: '* start'
        type: void
      - name: '* limit'
        type: void
      item_type: struct
      name: _asyncify_stack_region
      pos:
        line_end: 1500
        line_start: 1497
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    - fields:
      - name: rewind_id
        type: int
      - name: stack_region
        type: _asyncify_stack_region
      item_type: struct
      name: _mco_context
      pos:
        line_end: 1505
        line_start: 1502
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
    typedefs:
    - item_type: typedef
      name: mco_coro
      pos:
        line_end: 244
        line_start: 244
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type: mco_coro
    - item_type: typedef
      name: _mco_ctxbuf
      pos:
        line_end: 1173
        line_start: 1173
        source_file: /src/behaviortreecpp/3rdparty/minicoro/minicoro.h
      type: ucontext_t
    union: []
- function_names:
  - ZMQ_DEPRECATED
  - ZMQ_DEPRECATED
  - ZMQ_DEPRECATED
  - ZMQ_CPP11_DEPRECATED
  - CPPZMQ_HAS_INCLUDE_CPP17
  - CPPZMQ_HAS_INCLUDE_CPP17
  - ZMQ_IS_TRIVIALLY_COPYABLE
  - ZMQ_IS_TRIVIALLY_COPYABLE
  - zmq_msg_recv
  - ZMQ_ASSERT
  - ZMQ_ASSERT
  - zmq::detail::ranges::begin
  - zmq::detail::ranges::end
  - zmq::detail::ranges::begin
  - zmq::detail::ranges::end
  - zmq::detail::ranges::begin
  - zmq::detail::ranges::end
  - zmq::detail::ranges::begin
  - zmq::detail::ranges::end
  - zmq::error_t::error_t
  - zmq::error_t::error_t
  - zmq::error_t::ZMQ_OVERRIDE
  - zmq::error_t::num
  - zmq::detail::poll
  - zmq::detail::poll
  - zmq::poll
  - zmq::poll
  - zmq::poll
  - zmq::poll
  - zmq::poll
  - zmq::poll
  - zmq::poll
  - zmq::poll
  - zmq::poll
  - zmq::version
  - zmq::version
  - zmq::message_t
  - zmq::message_t
  - zmq::message_t
  - zmq::message_t
  - zmq::message_t
  - zmq::message_t
  - zmq::message_t
  - zmq::message_t
  - zmq::message_t
  - zmq::message_t
  - '&operator=(message_t &&rhs)'
  - ~message_t()
  - zmq::rebuild
  - zmq::rebuild
  - zmq::rebuild
  - zmq::rebuild
  - zmq::rebuild
  - zmq::move
  - zmq::move
  - zmq::copy
  - zmq::copy
  - zmq::more
  - zmq::ZMQ_NOTHROW
  - zmq::data
  - zmq::size
  - zmq::ZMQ_NOTHROW
  - zmq::ZMQ_NOTHROW
  - zmq::data
  - zmq::equal
  - operator==(const message_t &other) const
  - operator!=(const message_t &other) const
  - zmq::get
  - zmq::gets
  - zmq::routing_id
  - zmq::set_routing_id
  - zmq::group
  - zmq::set_group
  - zmq::to_string
  - zmq::to_string_view
  - zmq::str
  - zmq::swap
  - zmq::ZMQ_NOTHROW
  - zmq::handle
  - zmq::detail::ranges::begin
  - zmq::detail::ranges::end
  - zmq::detail::ranges::begin
  - zmq::detail::ranges::end
  - zmq::detail::ranges::begin
  - zmq::detail::ranges::end
  - zmq::detail::ranges::begin
  - zmq::detail::ranges::end
  - zmq::error_t::error_t
  - zmq::error_t::error_t
  - zmq::error_t::ZMQ_OVERRIDE
  - zmq::error_t::num
  - zmq::detail::poll
  - zmq::detail::poll
  - zmq::poll
  - zmq::poll
  - zmq::poll
  - zmq::poll
  - zmq::poll
  - zmq::poll
  - zmq::poll
  - zmq::poll
  - zmq::poll
  - zmq::version
  - zmq::version
  - zmq::message_t
  - zmq::message_t
  - zmq::message_t
  - zmq::message_t
  - zmq::message_t
  - zmq::message_t
  - zmq::message_t
  - zmq::message_t
  - zmq::message_t
  - zmq::message_t
  - '&operator=(message_t &&rhs)'
  - ~message_t()
  - zmq::rebuild
  - zmq::rebuild
  - zmq::rebuild
  - zmq::rebuild
  - zmq::rebuild
  - zmq::move
  - zmq::move
  - zmq::copy
  - zmq::copy
  - zmq::more
  - zmq::ZMQ_NOTHROW
  - zmq::data
  - zmq::size
  - zmq::ZMQ_NOTHROW
  - zmq::ZMQ_NOTHROW
  - zmq::data
  - zmq::equal
  - operator==(const message_t &other) const
  - operator!=(const message_t &other) const
  - zmq::get
  - zmq::gets
  - zmq::routing_id
  - zmq::set_routing_id
  - zmq::group
  - zmq::set_group
  - zmq::to_string
  - zmq::to_string_view
  - zmq::str
  - zmq::swap
  - zmq::ZMQ_NOTHROW
  - zmq::handle
  - ZMQ_NOTHROW
  - context_t
  - context_t
  - context_t
  - '&operator=(context_t &&rhs)'
  - ~context_t()
  - setctxopt
  - getctxopt
  - set
  - get
  - ZMQ_NOTHROW
  - ZMQ_NOTHROW
  - operator void *()
  - operator void const *() const
  - ZMQ_NOTHROW
  - operator bool() const
  - swap
  - swap
  - truncated
  - detail::trivial_optional::trivial_optional
  - detail::trivial_optional::trivial_optional
  - '*operator->() const noexcept'
  - '*operator->() noexcept'
  - '&operator*() const noexcept'
  - '&operator*() noexcept'
  - '&value()'
  - '&value() const'
  - operator bool() const noexcept
  - detail::trivial_optional::has_value
  - detail::trivial_optional::trivial_optional
  - detail::trivial_optional::trivial_optional
  - '*operator->() const noexcept'
  - '*operator->() noexcept'
  - '&operator*() const noexcept'
  - '&operator*() noexcept'
  - '&value()'
  - '&value() const'
  - operator bool() const noexcept
  - detail::trivial_optional::has_value
  - detail::enum_bit_or
  - detail::enum_bit_and
  - detail::enum_bit_xor
  - detail::enum_bit_not
  - detail::enum_bit_or
  - detail::enum_bit_and
  - detail::enum_bit_xor
  - detail::enum_bit_not
  - operator|(send_flags a, send_flags b) noexcept
  - operator&(send_flags a, send_flags b) noexcept
  - operator^(send_flags a, send_flags b) noexcept
  - operator~(send_flags a) noexcept
  - operator|(recv_flags a, recv_flags b) noexcept
  - operator&(recv_flags a, recv_flags b) noexcept
  - operator^(recv_flags a, recv_flags b) noexcept
  - operator~(recv_flags a) noexcept
  - mutable_buffer::mutable_buffer
  - mutable_buffer::mutable_buffer
  - mutable_buffer::data
  - mutable_buffer::size
  - '&operator+=(size_t n) noexcept'
  - operator+(const mutable_buffer &mb, size_t n) noexcept
  - operator+(size_t n, const mutable_buffer &mb) noexcept
  - const_buffer::const_buffer
  - const_buffer::const_buffer
  - const_buffer::const_buffer
  - const_buffer::data
  - const_buffer::size
  - '&operator+=(size_t n) noexcept'
  - operator+(const const_buffer &cb, size_t n) noexcept
  - operator+(size_t n, const const_buffer &cb) noexcept
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - detail::seq_size
  - detail::seq_size
  - detail::buffer_contiguous_sequence
  - detail::buffer_contiguous_sequence
  - detail::seq_size
  - detail::seq_size
  - detail::buffer_contiguous_sequence
  - detail::buffer_contiguous_sequence
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - buffer
  - str_buffer
  - operator""_zbuf(const char *str, size_t len) noexcept
  - operator""_zbuf(const wchar_t *str, size_t len) noexcept
  - operator""_zbuf(const char16_t *str, size_t len) noexcept
  - operator""_zbuf(const char32_t *str, size_t len) noexcept
  - operator""_zbuf(const char *str, size_t len) noexcept
  - operator""_zbuf(const wchar_t *str, size_t len) noexcept
  - operator""_zbuf(const char16_t *str, size_t len) noexcept
  - operator""_zbuf(const char32_t *str, size_t len) noexcept
  - ZMQ_DEFINE_INTEGRAL_OPT
  - ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT
  - ZMQ_DEFINE_ARRAY_OPT
  - ZMQ_DEFINE_ARRAY_OPT_BINARY
  - ZMQ_DEFINE_ARRAY_OPT_BIN_OR_Z85
  - ZMQ_DEFINE_INTEGRAL_OPT
  - ZMQ_DEFINE_INTEGRAL_BOOL_UNIT_OPT
  - ZMQ_DEFINE_ARRAY_OPT
  - ZMQ_DEFINE_ARRAY_OPT_BINARY
  - ZMQ_DEFINE_ARRAY_OPT_BIN_OR_Z85
  - detail::socket_base
  - detail::socket_base
  - detail::setsockopt
  - detail::setsockopt
  - detail::getsockopt
  - detail::getsockopt
  - detail::set
  - detail::set
  - detail::set
  - detail::set
  - detail::set
  - detail::set
  - detail::get
  - detail::get
  - "std::string get(sockopt::array_option<Opt, NullTerm>,\n                                  size_t
    init_size = 1024) const"
  - detail::bind
  - detail::bind
  - detail::unbind
  - detail::unbind
  - detail::connect
  - detail::connect
  - detail::disconnect
  - detail::disconnect
  - detail::connected
  - detail::send
  - detail::send
  - detail::send
  - detail::send
  - detail::send
  - detail::send
  - detail::send
  - detail::recv
  - detail::recv
  - detail::recv_buffer_result_t::recv
  - detail::recv_result_t::recv
  - detail::join
  - detail::leave
  - detail::ZMQ_NOTHROW
  - detail::handle
  - detail::ZMQ_NOTHROW
  - detail::ZMQ_NOTHROW
  - detail::socket_base
  - detail::socket_base
  - detail::setsockopt
  - detail::setsockopt
  - detail::getsockopt
  - detail::getsockopt
  - detail::set
  - detail::set
  - detail::set
  - detail::set
  - detail::set
  - detail::set
  - detail::get
  - detail::get
  - "std::string get(sockopt::array_option<Opt, NullTerm>,\n                                  size_t
    init_size = 1024) const"
  - detail::bind
  - detail::bind
  - detail::unbind
  - detail::unbind
  - detail::connect
  - detail::connect
  - detail::disconnect
  - detail::disconnect
  - detail::connected
  - detail::send
  - detail::send
  - detail::send
  - detail::send
  - detail::send
  - detail::send
  - detail::send
  - detail::recv
  - detail::recv
  - detail::recv_buffer_result_t::recv
  - detail::recv_result_t::recv
  - detail::join
  - detail::leave
  - detail::ZMQ_NOTHROW
  - detail::handle
  - detail::ZMQ_NOTHROW
  - detail::ZMQ_NOTHROW
  - get_option
  - (_private /*p*/)
  - socket_ref::socket_ref
  - socket_ref::socket_ref
  - socket_ref::socket_ref
  - operator==(socket_ref sr, std::nullptr_t /*p*/)
  - operator==(std::nullptr_t /*p*/, socket_ref sr)
  - operator!=(socket_ref sr, std::nullptr_t /*p*/)
  - operator!=(std::nullptr_t /*p*/, socket_ref sr)
  - operator==(const detail::socket_base& a, const detail::socket_base& b)
  - operator!=(const detail::socket_base& a, const detail::socket_base& b)
  - operator<(const detail::socket_base& a, const detail::socket_base& b)
  - operator>(const detail::socket_base& a, const detail::socket_base& b)
  - operator<=(const detail::socket_base& a, const detail::socket_base& b)
  - operator>=(const detail::socket_base& a, const detail::socket_base& b)
  - operator()(zmq::socket_ref sr) const
  - operator()(zmq::socket_ref sr) const
  - zmq::socket_t::socket_t
  - zmq::socket_t::socket_t
  - zmq::socket_t::socket_t
  - zmq::socket_t::socket_t
  - '&operator=(socket_t &&rhs)'
  - ~socket_t()
  - operator void *()
  - operator void const *() const
  - zmq::socket_t::ZMQ_NOTHROW
  - zmq::socket_t::swap
  - operator socket_ref()
  - zmq::socket_t::socket_t
  - zmq::swap
  - zmq::proxy
  - zmq::proxy
  - zmq::proxy_steerable
  - zmq::proxy_steerable
  - zmq::monitor_t::monitor_t
  - ~monitor_t()
  - zmq::monitor_t::monitor_t
  - '&operator=(monitor_t &&rhs)'
  - zmq::monitor_t::monitor
  - zmq::monitor_t::monitor
  - zmq::monitor_t::init
  - zmq::monitor_t::init
  - zmq::monitor_t::check_event
  - zmq::monitor_t::abort
  - zmq::monitor_t::on_monitor_stopped
  - zmq::monitor_t::on_monitor_started
  - zmq::monitor_t::on_event_connected
  - zmq::monitor_t::on_event_connect_delayed
  - zmq::monitor_t::on_event_connect_retried
  - zmq::monitor_t::on_event_listening
  - zmq::monitor_t::on_event_bind_failed
  - zmq::monitor_t::on_event_accepted
  - zmq::monitor_t::on_event_accept_failed
  - zmq::monitor_t::on_event_closed
  - zmq::monitor_t::on_event_close_failed
  - zmq::monitor_t::on_event_disconnected
  - zmq::monitor_t::on_event_handshake_failed_no_detail
  - zmq::monitor_t::on_event_handshake_failed_protocol
  - zmq::monitor_t::on_event_handshake_failed_auth
  - zmq::monitor_t::on_event_handshake_succeeded
  - zmq::monitor_t::on_event_handshake_failed
  - zmq::monitor_t::on_event_handshake_succeed
  - zmq::monitor_t::on_event_unknown
  - zmq::monitor_t::process_event
  - zmq::monitor_t::monitor_socket
  - zmq::monitor_t::ZMQ_NOTHROW
  - operator|(event_flags a, event_flags b) noexcept
  - operator&(event_flags a, event_flags b) noexcept
  - operator^(event_flags a, event_flags b) noexcept
  - operator~(event_flags a) noexcept
  - zmq::poller_t::poller_t
  - zmq::poller_t::add
  - zmq::poller_t::add
  - zmq::poller_t::add
  - zmq::poller_t::add
  - zmq::poller_t::remove
  - zmq::poller_t::remove
  - zmq::poller_t::modify
  - zmq::poller_t::modify
  - zmq::poller_t::wait_all
  - zmq::poller_t::size
  - operator()(void *ptr) noexcept
  - zmq::poller_t::add_impl
  - zmq::poller_t::add_impl
  - '&operator<<(std::ostream &os, const message_t &msg)'
  - zmq::timers::timers
  - zmq::timers::timers
  - '&operator=(const timers &other)'
  - ~timers()
  - zmq::timers::add
  - zmq::timers::cancel
  - zmq::timers::set_interval
  - zmq::timers::reset
  - zmq::timers::timeout
  - zmq::timers::execute
  - zmq::socket_t::socket_t
  - zmq::socket_t::socket_t
  - zmq::socket_t::socket_t
  - zmq::socket_t::socket_t
  - '&operator=(socket_t &&rhs)'
  - ~socket_t()
  - operator void *()
  - operator void const *() const
  - zmq::socket_t::ZMQ_NOTHROW
  - zmq::socket_t::swap
  - operator socket_ref()
  - zmq::socket_t::socket_t
  - zmq::swap
  - zmq::proxy
  - zmq::proxy
  - zmq::proxy_steerable
  - zmq::proxy_steerable
  - zmq::monitor_t::monitor_t
  - ~monitor_t()
  - zmq::monitor_t::monitor_t
  - '&operator=(monitor_t &&rhs)'
  - zmq::monitor_t::monitor
  - zmq::monitor_t::monitor
  - zmq::monitor_t::init
  - zmq::monitor_t::init
  - zmq::monitor_t::check_event
  - zmq::monitor_t::abort
  - zmq::monitor_t::on_monitor_stopped
  - zmq::monitor_t::on_monitor_started
  - zmq::monitor_t::on_event_connected
  - zmq::monitor_t::on_event_connect_delayed
  - zmq::monitor_t::on_event_connect_retried
  - zmq::monitor_t::on_event_listening
  - zmq::monitor_t::on_event_bind_failed
  - zmq::monitor_t::on_event_accepted
  - zmq::monitor_t::on_event_accept_failed
  - zmq::monitor_t::on_event_closed
  - zmq::monitor_t::on_event_close_failed
  - zmq::monitor_t::on_event_disconnected
  - zmq::monitor_t::on_event_handshake_failed_no_detail
  - zmq::monitor_t::on_event_handshake_failed_protocol
  - zmq::monitor_t::on_event_handshake_failed_auth
  - zmq::monitor_t::on_event_handshake_succeeded
  - zmq::monitor_t::on_event_handshake_failed
  - zmq::monitor_t::on_event_handshake_succeed
  - zmq::monitor_t::on_event_unknown
  - zmq::monitor_t::process_event
  - zmq::monitor_t::monitor_socket
  - zmq::monitor_t::ZMQ_NOTHROW
  - operator|(event_flags a, event_flags b) noexcept
  - operator&(event_flags a, event_flags b) noexcept
  - operator^(event_flags a, event_flags b) noexcept
  - operator~(event_flags a) noexcept
  - zmq::poller_t::poller_t
  - zmq::poller_t::add
  - zmq::poller_t::add
  - zmq::poller_t::add
  - zmq::poller_t::add
  - zmq::poller_t::remove
  - zmq::poller_t::remove
  - zmq::poller_t::modify
  - zmq::poller_t::modify
  - zmq::poller_t::wait_all
  - zmq::poller_t::size
  - operator()(void *ptr) noexcept
  - zmq::poller_t::add_impl
  - zmq::poller_t::add_impl
  - '&operator<<(std::ostream &os, const message_t &msg)'
  - zmq::timers::timers
  - zmq::timers::timers
  - '&operator=(const timers &other)'
  - ~timers()
  - zmq::timers::add
  - zmq::timers::cancel
  - zmq::timers::set_interval
  - zmq::timers::reset
  - zmq::timers::timeout
  - zmq::timers::execute
  source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
  types:
    enum:
    - enumerators:
      - name: blocky
        value: ZMQ_BLOCKY
      - name: thread_sched_policy
        value: ZMQ_THREAD_SCHED_POLICY
      - name: io_threads
        value: ZMQ_IO_THREADS
      - name: thread_affinity_cpu_add
        value: ZMQ_THREAD_AFFINITY_CPU_ADD
      - name: thread_priority
        value: ZMQ_THREAD_PRIORITY
      - name: thread_affinity_cpu_remove
        value: ZMQ_THREAD_AFFINITY_CPU_REMOVE
      - name: thread_name_prefix
        value: ZMQ_THREAD_NAME_PREFIX
      - name: max_msgsz
        value: ZMQ_MAX_MSGSZ
      - name: zero_copy_recv
        value: ZMQ_ZERO_COPY_RECV
      - name: max_sockets
        value: ZMQ_MAX_SOCKETS
      - name: msg_t_size
        value: ZMQ_MSG_T_SIZE
      - name: ipv6
        value: ZMQ_IPV6
      - name: socket_limit
        value: ZMQ_SOCKET_LIMIT
      item_type: enum
      name: ctxopt
      pos:
        line_end: 796
        line_start: 755
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - enumerators:
      - name: none
        value: '0'
      - name: dontwait
        value: ZMQ_DONTWAIT
      - name: sndmore
        value: ZMQ_SNDMORE
      item_type: enum
      name: send_flags
      pos:
        line_end: 1036
        line_start: 1031
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - enumerators:
      - name: none
        value: '0'
      - name: dontwait
        value: ZMQ_DONTWAIT
      item_type: enum
      name: recv_flags
      pos:
        line_end: 1060
        line_start: 1056
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - enumerators:
      - name: req
        value: ZMQ_REQ
      - name: router
        value: ZMQ_ROUTER
      - name: xsub
        value: ZMQ_XSUB
      - name: client
        value: ZMQ_CLIENT
      - name: peer
        value: ZMQ_PEER
      - name: scatter
        value: ZMQ_SCATTER
      - name: dealer
        value: ZMQ_DEALER
      - name: xpub
        value: ZMQ_XPUB
      - name: gather
        value: ZMQ_GATHER
      - name: rep
        value: ZMQ_REP
      - name: sub
        value: ZMQ_SUB
      - name: pull
        value: ZMQ_PULL
      - name: server
        value: ZMQ_SERVER
      - name: dish
        value: ZMQ_DISH
      - name: channel
        value: ZMQ_CHANNEL
      - name: pair
        value: ZMQ_PAIR
      - name: pub
        value: ZMQ_PUB
      - name: push
        value: ZMQ_PUSH
      - name: dgram
        value: ZMQ_DGRAM
      - name: radio
        value: ZMQ_RADIO
      - name: stream
        value: ZMQ_STREAM
      item_type: enum
      name: socket_type
      pos:
        line_end: 1415
        line_start: 1386
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - enumerators:
      - name: none
        value: '0'
      - name: pollerr
        value: ZMQ_POLLERR
      - name: pollout
        value: ZMQ_POLLOUT
      - name: pollin
        value: ZMQ_POLLIN
      - name: pollpri
        value: ZMQ_POLLPRI
      item_type: enum
      name: event_flags
      pos:
        line_end: 2629
        line_start: 2622
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - enumerators:
      - name: none
        value: '0'
      - name: pollerr
        value: ZMQ_POLLERR
      - name: pollout
        value: ZMQ_POLLOUT
      - name: pollin
        value: ZMQ_POLLIN
      - name: pollpri
        value: ZMQ_POLLPRI
      item_type: enum
      name: event_flags
      pos:
        line_end: 2629
        line_start: 2622
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    preproc_defs:
    - item_type: preproc_def
      name: CPPZMQ_LANG
      pos:
        line_end: 39
        line_start: 38
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: _MSVC_LANG
    - item_type: preproc_def
      name: CPPZMQ_LANG
      pos:
        line_end: 41
        line_start: 40
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: __cplusplus
    - item_type: preproc_def
      name: CPPZMQ_LANG
      pos:
        line_end: 46
        line_start: 45
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: 201402L
    - item_type: preproc_def
      name: CPPZMQ_LANG
      pos:
        line_end: 50
        line_start: 49
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: 201703L
    - item_type: preproc_def
      name: ZMQ_NODISCARD
      pos:
        line_end: 75
        line_start: 74
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: '[[nodiscard]]'
    - item_type: preproc_def
      name: ZMQ_NOTHROW
      pos:
        line_end: 81
        line_start: 80
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: noexcept
    - item_type: preproc_def
      name: ZMQ_EXPLICIT
      pos:
        line_end: 82
        line_start: 81
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: explicit
    - item_type: preproc_def
      name: ZMQ_OVERRIDE
      pos:
        line_end: 83
        line_start: 82
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: override
    - item_type: preproc_def
      name: ZMQ_NULLPTR
      pos:
        line_end: 84
        line_start: 83
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: nullptr
    - item_type: preproc_def
      name: ZMQ_CONSTEXPR_FN
      pos:
        line_end: 85
        line_start: 84
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: constexpr
    - item_type: preproc_def
      name: ZMQ_CONSTEXPR_VAR
      pos:
        line_end: 86
        line_start: 85
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: constexpr
    - item_type: preproc_def
      name: ZMQ_NOTHROW
      pos:
        line_end: 89
        line_start: 88
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: throw()
    - item_type: preproc_def
      name: ZMQ_NULLPTR
      pos:
        line_end: 92
        line_start: 91
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: ZMQ_CONSTEXPR_VAR
      pos:
        line_end: 94
        line_start: 93
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: const
    - item_type: preproc_def
      name: ZMQ_INLINE_VAR
      pos:
        line_end: 101
        line_start: 100
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: inline
    - item_type: preproc_def
      name: ZMQ_CONSTEXPR_IF
      pos:
        line_end: 102
        line_start: 101
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: constexpr
    - item_type: preproc_def
      name: CPPZMQ_HAS_OPTIONAL
      pos:
        line_end: 132
        line_start: 131
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: CPPZMQ_HAS_OPTIONAL
      pos:
        line_end: 135
        line_start: 134
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: CPPZMQ_HAS_STRING_VIEW
      pos:
        line_end: 141
        line_start: 140
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: '1'
    - item_type: preproc_def
      name: CPPZMQ_HAS_STRING_VIEW
      pos:
        line_end: 144
        line_start: 143
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: CPPZMQ_VERSION_MAJOR
      pos:
        line_end: 150
        line_start: 149
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: '4'
    - item_type: preproc_def
      name: CPPZMQ_VERSION_MINOR
      pos:
        line_end: 151
        line_start: 150
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: '11'
    - item_type: preproc_def
      name: CPPZMQ_VERSION_PATCH
      pos:
        line_end: 152
        line_start: 151
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: '0'
    - item_type: preproc_def
      name: CPPZMQ_VERSION
      pos:
        line_end: 156
        line_start: 153
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: "ZMQ_MAKE_VERSION(CPPZMQ_VERSION_MAJOR, CPPZMQ_VERSION_MINOR,
        \                   \\\n                     CPPZMQ_VERSION_PATCH)"
    - item_type: preproc_def
      name: ZMQ_DELETED_FUNCTION
      pos:
        line_end: 162
        line_start: 161
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: = delete
    - item_type: preproc_def
      name: ZMQ_DELETED_FUNCTION
      pos:
        line_end: 169
        line_start: 168
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: = delete
    - item_type: preproc_def
      name: ZMQ_DELETED_FUNCTION
      pos:
        line_end: 175
        line_start: 174
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type_or_value: = delete
    structs:
    - fields:
      - name: event
        type: uint16_t
      - name: value
        type: int32_t
      item_type: struct
      name: zmq_event_t
      pos:
        line_end: 211
        line_start: 207
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: is_range
      pos:
        line_end: 260
        line_start: 258
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: "is_range<\n  T,\n  void_t<decltype(\n    ranges::begin(std::declval<typename
        std::remove_reference<T>::type &>())\n    == ranges::end(std::declval<typename
        std::remove_reference<T>::type &>()))>>"
      pos:
        line_end: 270
        line_start: 263
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: is_range
      pos:
        line_end: 260
        line_start: 258
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: "is_range<\n  T,\n  void_t<decltype(\n    ranges::begin(std::declval<typename
        std::remove_reference<T>::type &>())\n    == ranges::end(std::declval<typename
        std::remove_reference<T>::type &>()))>>"
      pos:
        line_end: 270
        line_start: 263
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: is_char_type
      pos:
        line_end: 402
        line_start: 396
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: is_char_type
      pos:
        line_end: 402
        line_start: 396
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: is_range
      pos:
        line_end: 260
        line_start: 258
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: "is_range<\n  T,\n  void_t<decltype(\n    ranges::begin(std::declval<typename
        std::remove_reference<T>::type &>())\n    == ranges::end(std::declval<typename
        std::remove_reference<T>::type &>()))>>"
      pos:
        line_end: 270
        line_start: 263
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: is_range
      pos:
        line_end: 260
        line_start: 258
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: "is_range<\n  T,\n  void_t<decltype(\n    ranges::begin(std::declval<typename
        std::remove_reference<T>::type &>())\n    == ranges::end(std::declval<typename
        std::remove_reference<T>::type &>()))>>"
      pos:
        line_end: 270
        line_start: 263
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: is_char_type
      pos:
        line_end: 402
        line_start: 396
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: is_char_type
      pos:
        line_end: 402
        line_start: 396
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields:
      - name: size
        type: size_t
      - name: untruncated_size
        type: size_t
      item_type: struct
      name: recv_buffer_size
      pos:
        line_end: 929
        line_start: 920
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: is_buffer
      pos:
        line_end: 1195
        line_start: 1191
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: is_pod_like
      pos:
        line_end: 1205
        line_start: 1197
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: is_buffer
      pos:
        line_end: 1195
        line_start: 1191
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields:
      - name: value
        type: bool
      item_type: struct
      name: is_pod_like
      pos:
        line_end: 1205
        line_start: 1197
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: integral_option
      pos:
        line_end: 1427
        line_start: 1425
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: array_option
      pos:
        line_end: 1435
        line_start: 1433
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: integral_option
      pos:
        line_end: 1427
        line_start: 1425
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: array_option
      pos:
        line_end: 1435
        line_start: 1433
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields:
      - name: ZMQ_EXPLICIT
        type: ZMQ_CONSTEXPR_FN
      item_type: struct
      name: from_handle_t
      pos:
        line_end: 2107
        line_start: 2101
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: _private
      pos:
        line_end: 2105
        line_start: 2103
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: hash<zmq::socket_ref>
      pos:
        line_end: 2182
        line_start: 2176
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: hash<zmq::socket_ref>
      pos:
        line_end: 2182
        line_start: 2176
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields:
      - name: socket
        type: socket_ref
      - name: fd
        type: ::zmq::fd_t
      - name: '*user_data'
        type: T
      - name: events
        type: event_flags
      item_type: struct
      name: poller_event
      pos:
        line_end: 2657
        line_start: 2651
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: destroy_poller_t
      pos:
        line_end: 2768
        line_start: 2761
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields:
      - name: socket
        type: socket_ref
      - name: fd
        type: ::zmq::fd_t
      - name: '*user_data'
        type: T
      - name: events
        type: event_flags
      item_type: struct
      name: poller_event
      pos:
        line_end: 2657
        line_start: 2651
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    - fields: []
      item_type: struct
      name: destroy_poller_t
      pos:
        line_end: 2768
        line_start: 2761
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
    typedefs:
    - item_type: typedef
      name: free_fn
      pos:
        line_end: 275
        line_start: 275
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type: zmq_free_fn
    - item_type: typedef
      name: pollitem_t
      pos:
        line_end: 276
        line_start: 276
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type: zmq_pollitem_t
    - item_type: typedef
      name: fd_t
      pos:
        line_end: 281
        line_start: 281
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type: unsigned __int64
    - item_type: typedef
      name: fd_t
      pos:
        line_end: 283
        line_start: 283
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type: unsigned int
    - item_type: typedef
      name: fd_t
      pos:
        line_end: 286
        line_start: 286
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type: int
    - item_type: typedef
      name: value_t
      pos:
        line_end: 426
        line_start: 426
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type: typename std::iterator_traits<ForwardIter>::value_type
    - item_type: typedef
      name: free_fn
      pos:
        line_end: 275
        line_start: 275
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type: zmq_free_fn
    - item_type: typedef
      name: pollitem_t
      pos:
        line_end: 276
        line_start: 276
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type: zmq_pollitem_t
    - item_type: typedef
      name: fd_t
      pos:
        line_end: 281
        line_start: 281
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type: unsigned __int64
    - item_type: typedef
      name: fd_t
      pos:
        line_end: 283
        line_start: 283
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type: unsigned int
    - item_type: typedef
      name: fd_t
      pos:
        line_end: 286
        line_start: 286
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type: int
    - item_type: typedef
      name: value_t
      pos:
        line_end: 426
        line_start: 426
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq.hpp
      type: typename std::iterator_traits<ForwardIter>::value_type
    union: []
- function_names:
  - zmq::poller_ref_t::poller_ref_t
  - zmq::poller_ref_t::poller_ref_t
  - zmq::poller_ref_t::poller_ref_t
  - zmq::poller_ref_t::hash
  - operator == (const poller_ref_t& o) const
  - zmq::poller_ref_t::hash_combine
  - zmq::poller_ref_t::poller_ref_t
  - zmq::poller_ref_t::poller_ref_t
  - zmq::poller_ref_t::poller_ref_t
  - zmq::poller_ref_t::hash
  - operator == (const poller_ref_t& o) const
  - zmq::poller_ref_t::hash_combine
  - operator()(const zmq::poller_ref_t& ref) const
  - zmq::detail::recv_multipart_n
  - zmq::detail::ZMQ_CONSTEXPR_IF
  - zmq::detail::is_little_endian
  - zmq::detail::write_network_order
  - zmq::detail::read_u32_network_order
  - zmq::detail::recv_multipart_n
  - zmq::detail::ZMQ_CONSTEXPR_IF
  - zmq::detail::is_little_endian
  - zmq::detail::write_network_order
  - zmq::detail::read_u32_network_order
  - zmq::recv_result_t::recv_multipart
  - zmq::recv_result_t::recv_multipart_n
  - zmq::send_multipart
  - zmq::encode
  - zmq::decode
  - zmq::multipart_t::multipart_t
  - zmq::multipart_t::multipart_t
  - zmq::multipart_t::multipart_t
  - zmq::multipart_t::multipart_t
  - zmq::multipart_t::multipart_t
  - zmq::multipart_t::multipart_t
  - '&operator=(multipart_t &&other)'
  - ~multipart_t()
  - '&operator[](size_t n)'
  - '&operator[](size_t n) const'
  - '&at(size_t n)'
  - '&at(size_t n) const'
  - zmq::multipart_t::begin
  - zmq::multipart_t::begin
  - zmq::multipart_t::cbegin
  - zmq::multipart_t::rbegin
  - zmq::multipart_t::rbegin
  - zmq::multipart_t::end
  - zmq::multipart_t::end
  - zmq::multipart_t::cend
  - zmq::multipart_t::rend
  - zmq::multipart_t::rend
  - zmq::multipart_t::clear
  - zmq::multipart_t::size
  - zmq::multipart_t::empty
  - zmq::multipart_t::recv
  - zmq::multipart_t::send
  - zmq::multipart_t::prepend
  - zmq::multipart_t::append
  - zmq::multipart_t::pushmem
  - zmq::multipart_t::addmem
  - zmq::multipart_t::pushstr
  - zmq::multipart_t::addstr
  - zmq::multipart_t::pushtyp
  - zmq::multipart_t::addtyp
  - zmq::multipart_t::push
  - zmq::multipart_t::add
  - zmq::multipart_t::push_back
  - zmq::multipart_t::popstr
  - zmq::multipart_t::poptyp
  - zmq::multipart_t::pop
  - zmq::multipart_t::remove
  - '&front()'
  - '&back()'
  - zmq::multipart_t::peek
  - zmq::multipart_t::peekstr
  - zmq::multipart_t::peektyp
  - zmq::multipart_t::create
  - zmq::multipart_t::clone
  - zmq::multipart_t::str
  - zmq::multipart_t::equal
  - operator==(const multipart_t &other) const
  - operator!=(const multipart_t &other) const
  - zmq::multipart_t::encode
  - zmq::multipart_t::decode_append
  - zmq::multipart_t::decode
  - '&operator<<(std::ostream &os, const multipart_t &msg)'
  - zmq::active_poller_t::active_poller_t
  - ~active_poller_t()
  - zmq::active_poller_t::active_poller_t
  - '&operator=(const active_poller_t &)'
  - zmq::active_poller_t::active_poller_t
  - '&operator=(active_poller_t &&src)'
  - zmq::active_poller_t::add
  - zmq::active_poller_t::add
  - zmq::active_poller_t::remove
  - zmq::active_poller_t::remove
  - zmq::active_poller_t::modify
  - zmq::active_poller_t::modify
  - zmq::active_poller_t::wait
  - zmq::active_poller_t::empty
  - zmq::active_poller_t::size
  - zmq::detail::recv_multipart_n
  - zmq::detail::ZMQ_CONSTEXPR_IF
  - zmq::detail::is_little_endian
  - zmq::detail::write_network_order
  - zmq::detail::read_u32_network_order
  - zmq::detail::recv_multipart_n
  - zmq::detail::ZMQ_CONSTEXPR_IF
  - zmq::detail::is_little_endian
  - zmq::detail::write_network_order
  - zmq::detail::read_u32_network_order
  - zmq::recv_result_t::recv_multipart
  - zmq::recv_result_t::recv_multipart_n
  - zmq::send_multipart
  - zmq::encode
  - zmq::decode
  - zmq::multipart_t::multipart_t
  - zmq::multipart_t::multipart_t
  - zmq::multipart_t::multipart_t
  - zmq::multipart_t::multipart_t
  - zmq::multipart_t::multipart_t
  - zmq::multipart_t::multipart_t
  - '&operator=(multipart_t &&other)'
  - ~multipart_t()
  - '&operator[](size_t n)'
  - '&operator[](size_t n) const'
  - '&at(size_t n)'
  - '&at(size_t n) const'
  - zmq::multipart_t::begin
  - zmq::multipart_t::begin
  - zmq::multipart_t::cbegin
  - zmq::multipart_t::rbegin
  - zmq::multipart_t::rbegin
  - zmq::multipart_t::end
  - zmq::multipart_t::end
  - zmq::multipart_t::cend
  - zmq::multipart_t::rend
  - zmq::multipart_t::rend
  - zmq::multipart_t::clear
  - zmq::multipart_t::size
  - zmq::multipart_t::empty
  - zmq::multipart_t::recv
  - zmq::multipart_t::send
  - zmq::multipart_t::prepend
  - zmq::multipart_t::append
  - zmq::multipart_t::pushmem
  - zmq::multipart_t::addmem
  - zmq::multipart_t::pushstr
  - zmq::multipart_t::addstr
  - zmq::multipart_t::pushtyp
  - zmq::multipart_t::addtyp
  - zmq::multipart_t::push
  - zmq::multipart_t::add
  - zmq::multipart_t::push_back
  - zmq::multipart_t::popstr
  - zmq::multipart_t::poptyp
  - zmq::multipart_t::pop
  - zmq::multipart_t::remove
  - '&front()'
  - '&back()'
  - zmq::multipart_t::peek
  - zmq::multipart_t::peekstr
  - zmq::multipart_t::peektyp
  - zmq::multipart_t::create
  - zmq::multipart_t::clone
  - zmq::multipart_t::str
  - zmq::multipart_t::equal
  - operator==(const multipart_t &other) const
  - operator!=(const multipart_t &other) const
  - zmq::multipart_t::encode
  - zmq::multipart_t::decode_append
  - zmq::multipart_t::decode
  - '&operator<<(std::ostream &os, const multipart_t &msg)'
  - zmq::active_poller_t::active_poller_t
  - ~active_poller_t()
  - zmq::active_poller_t::active_poller_t
  - '&operator=(const active_poller_t &)'
  - zmq::active_poller_t::active_poller_t
  - '&operator=(active_poller_t &&src)'
  - zmq::active_poller_t::add
  - zmq::active_poller_t::add
  - zmq::active_poller_t::remove
  - zmq::active_poller_t::remove
  - zmq::active_poller_t::modify
  - zmq::active_poller_t::modify
  - zmq::active_poller_t::wait
  - zmq::active_poller_t::empty
  - zmq::active_poller_t::size
  source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
  types:
    enum:
    - enumerators:
      - name: RT_SOCKET
      - name: RT_FD
      item_type: enum
      name: RefType
      pos:
        line_end: 47
        line_start: 43
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    - enumerators:
      - name: RT_SOCKET
      - name: RT_FD
      item_type: enum
      name: RefType
      pos:
        line_end: 47
        line_start: 43
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    preproc_defs: []
    structs:
    - fields: []
      item_type: struct
      name: std::hash<zmq::poller_ref_t>
      pos:
        line_end: 93
        line_start: 87
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
    typedefs:
    - item_type: typedef
      name: value_type
      pos:
        line_end: 379
        line_start: 379
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
      type: deque<message_t>::value_type
    - item_type: typedef
      name: iterator
      pos:
        line_end: 381
        line_start: 381
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
      type: deque<message_t>::iterator
    - item_type: typedef
      name: const_iterator
      pos:
        line_end: 382
        line_start: 382
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
      type: deque<message_t>::const_iterator
    - item_type: typedef
      name: reverse_iterator
      pos:
        line_end: 384
        line_start: 384
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
      type: deque<message_t>::reverse_iterator
    - item_type: typedef
      name: const_reverse_iterator
      pos:
        line_end: 385
        line_start: 385
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
      type: deque<message_t>::const_reverse_iterator
    - item_type: typedef
      name: value_type
      pos:
        line_end: 379
        line_start: 379
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
      type: deque<message_t>::value_type
    - item_type: typedef
      name: iterator
      pos:
        line_end: 381
        line_start: 381
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
      type: deque<message_t>::iterator
    - item_type: typedef
      name: const_iterator
      pos:
        line_end: 382
        line_start: 382
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
      type: deque<message_t>::const_iterator
    - item_type: typedef
      name: reverse_iterator
      pos:
        line_end: 384
        line_start: 384
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
      type: deque<message_t>::reverse_iterator
    - item_type: typedef
      name: const_reverse_iterator
      pos:
        line_end: 385
        line_start: 385
        source_file: /src/behaviortreecpp/3rdparty/cppzmq/zmq_addon.hpp
      type: deque<message_t>::const_reverse_iterator
    union: []
- function_names:
  - TIXML_SNPRINTF
  - TIXML_VSNPRINTF
  - TIXML_VSCPRINTF
  - TIXML_VSCPRINTF
  - StrPair::~StrPair()
  - tinyxml2::StrPair::TransferTo
  - tinyxml2::StrPair::Reset
  - tinyxml2::StrPair::SetStr
  - tinyxml2::StrPair::ParseText
  - tinyxml2::StrPair::ParseName
  - tinyxml2::StrPair::CollapseWhitespace
  - tinyxml2::StrPair::GetStr
  - tinyxml2::XMLUtil::SetBoolSerialization
  - tinyxml2::XMLUtil::ReadBOM
  - tinyxml2::XMLUtil::ConvertUTF32ToUTF8
  - tinyxml2::XMLUtil::GetCharacterRef
  - tinyxml2::XMLUtil::ToStr
  - tinyxml2::XMLUtil::ToStr
  - tinyxml2::XMLUtil::ToStr
  - tinyxml2::XMLUtil::ToStr
  - tinyxml2::XMLUtil::ToStr
  - tinyxml2::XMLUtil::ToStr
  - tinyxml2::XMLUtil::ToStr
  - tinyxml2::XMLUtil::ToInt
  - tinyxml2::XMLUtil::ToUnsigned
  - tinyxml2::XMLUtil::ToBool
  - tinyxml2::XMLUtil::ToFloat
  - tinyxml2::XMLUtil::ToDouble
  - tinyxml2::XMLUtil::ToInt64
  - tinyxml2::XMLUtil::ToUnsigned64
  - tinyxml2::XMLDocument::Identify
  - tinyxml2::XMLDocument::Accept
  - tinyxml2::XMLNode::XMLNode
  - XMLNode::~XMLNode()
  - tinyxml2::XMLNode::ChildElementCount
  - tinyxml2::XMLNode::ChildElementCount
  - tinyxml2::XMLNode::Value
  - tinyxml2::XMLNode::SetValue
  - tinyxml2::XMLNode::DeepClone
  - tinyxml2::XMLNode::DeleteChildren
  - tinyxml2::XMLNode::Unlink
  - tinyxml2::XMLNode::DeleteChild
  - tinyxml2::XMLNode::InsertEndChild
  - tinyxml2::XMLNode::InsertFirstChild
  - tinyxml2::XMLNode::InsertAfterChild
  - tinyxml2::XMLNode::FirstChildElement
  - tinyxml2::XMLNode::LastChildElement
  - tinyxml2::XMLNode::NextSiblingElement
  - tinyxml2::XMLNode::PreviousSiblingElement
  - tinyxml2::XMLNode::ParseDeep
  - tinyxml2::XMLNode::DeleteNode
  - tinyxml2::XMLNode::InsertChildPreamble
  - tinyxml2::XMLNode::ToElementWithName
  - tinyxml2::XMLText::ParseDeep
  - tinyxml2::XMLText::ShallowClone
  - tinyxml2::XMLText::ShallowEqual
  - tinyxml2::XMLText::Accept
  - tinyxml2::XMLComment::XMLComment
  - XMLComment::~XMLComment()
  - tinyxml2::XMLComment::ParseDeep
  - tinyxml2::XMLComment::ShallowClone
  - tinyxml2::XMLComment::ShallowEqual
  - tinyxml2::XMLComment::Accept
  - tinyxml2::XMLDeclaration::XMLDeclaration
  - XMLDeclaration::~XMLDeclaration()
  - tinyxml2::XMLDeclaration::ParseDeep
  - tinyxml2::XMLDeclaration::ShallowClone
  - tinyxml2::XMLDeclaration::ShallowEqual
  - tinyxml2::XMLDeclaration::Accept
  - tinyxml2::XMLUnknown::XMLUnknown
  - XMLUnknown::~XMLUnknown()
  - tinyxml2::XMLUnknown::ParseDeep
  - tinyxml2::XMLUnknown::ShallowClone
  - tinyxml2::XMLUnknown::ShallowEqual
  - tinyxml2::XMLUnknown::Accept
  - tinyxml2::XMLAttribute::Name
  - tinyxml2::XMLAttribute::Value
  - tinyxml2::XMLAttribute::ParseDeep
  - tinyxml2::XMLAttribute::SetName
  - tinyxml2::XMLAttribute::QueryIntValue
  - tinyxml2::XMLAttribute::QueryUnsignedValue
  - tinyxml2::XMLAttribute::QueryInt64Value
  - tinyxml2::XMLAttribute::QueryUnsigned64Value
  - tinyxml2::XMLAttribute::QueryBoolValue
  - tinyxml2::XMLAttribute::QueryFloatValue
  - tinyxml2::XMLAttribute::QueryDoubleValue
  - tinyxml2::XMLAttribute::SetAttribute
  - tinyxml2::XMLAttribute::SetAttribute
  - tinyxml2::XMLAttribute::SetAttribute
  - tinyxml2::XMLAttribute::SetAttribute
  - tinyxml2::XMLAttribute::SetAttribute
  - tinyxml2::XMLAttribute::SetAttribute
  - tinyxml2::XMLAttribute::SetAttribute
  - tinyxml2::XMLAttribute::SetAttribute
  - tinyxml2::XMLElement::XMLElement
  - XMLElement::~XMLElement()
  - tinyxml2::XMLElement::FindAttribute
  - tinyxml2::XMLElement::Attribute
  - tinyxml2::XMLElement::IntAttribute
  - tinyxml2::XMLElement::UnsignedAttribute
  - tinyxml2::XMLElement::Int64Attribute
  - tinyxml2::XMLElement::Unsigned64Attribute
  - tinyxml2::XMLElement::BoolAttribute
  - tinyxml2::XMLElement::DoubleAttribute
  - tinyxml2::XMLElement::FloatAttribute
  - tinyxml2::XMLElement::GetText
  - tinyxml2::XMLElement::SetText
  - tinyxml2::XMLElement::SetText
  - tinyxml2::XMLElement::SetText
  - tinyxml2::XMLElement::SetText
  - tinyxml2::XMLElement::SetText
  - tinyxml2::XMLElement::SetText
  - tinyxml2::XMLElement::SetText
  - tinyxml2::XMLElement::SetText
  - tinyxml2::XMLElement::QueryIntText
  - tinyxml2::XMLElement::QueryUnsignedText
  - tinyxml2::XMLElement::QueryInt64Text
  - tinyxml2::XMLElement::QueryUnsigned64Text
  - tinyxml2::XMLElement::QueryBoolText
  - tinyxml2::XMLElement::QueryDoubleText
  - tinyxml2::XMLElement::QueryFloatText
  - tinyxml2::XMLElement::IntText
  - tinyxml2::XMLElement::UnsignedText
  - tinyxml2::XMLElement::Int64Text
  - tinyxml2::XMLElement::Unsigned64Text
  - tinyxml2::XMLElement::BoolText
  - tinyxml2::XMLElement::DoubleText
  - tinyxml2::XMLElement::FloatText
  - tinyxml2::XMLElement::FindOrCreateAttribute
  - tinyxml2::XMLElement::DeleteAttribute
  - tinyxml2::XMLElement::ParseAttributes
  - tinyxml2::XMLElement::DeleteAttribute
  - tinyxml2::XMLElement::CreateAttribute
  - tinyxml2::XMLElement::InsertNewChildElement
  - tinyxml2::XMLElement::InsertNewComment
  - tinyxml2::XMLElement::InsertNewText
  - tinyxml2::XMLElement::InsertNewDeclaration
  - tinyxml2::XMLElement::InsertNewUnknown
  - tinyxml2::XMLElement::ParseDeep
  - tinyxml2::XMLElement::ShallowClone
  - tinyxml2::XMLElement::ShallowEqual
  - tinyxml2::XMLElement::Accept
  - tinyxml2::XMLDocument::XMLDocument
  - XMLDocument::~XMLDocument()
  - tinyxml2::XMLDocument::MarkInUse
  - tinyxml2::XMLDocument::Clear
  - tinyxml2::XMLDocument::DeepCopy
  - tinyxml2::XMLDocument::NewElement
  - tinyxml2::XMLDocument::NewComment
  - tinyxml2::XMLDocument::NewText
  - tinyxml2::XMLDocument::NewDeclaration
  - tinyxml2::XMLDocument::NewUnknown
  - tinyxml2::callfopen
  - tinyxml2::XMLDocument::DeleteNode
  - tinyxml2::XMLDocument::LoadFile
  - tinyxml2::XMLDocument::LoadFile
  - tinyxml2::XMLDocument::SaveFile
  - tinyxml2::XMLDocument::SaveFile
  - tinyxml2::XMLDocument::Parse
  - tinyxml2::XMLDocument::Print
  - tinyxml2::XMLDocument::ClearError
  - tinyxml2::XMLDocument::SetError
  - tinyxml2::XMLDocument::ErrorIDToName
  - tinyxml2::XMLDocument::ErrorStr
  - tinyxml2::XMLDocument::PrintError
  - tinyxml2::XMLDocument::ErrorName
  - tinyxml2::XMLDocument::Parse
  - tinyxml2::XMLDocument::PushDepth
  - tinyxml2::XMLDocument::PopDepth
  - tinyxml2::XMLPrinter::XMLPrinter
  - tinyxml2::XMLPrinter::Print
  - tinyxml2::XMLPrinter::Write
  - tinyxml2::XMLPrinter::Putc
  - tinyxml2::XMLPrinter::PrintSpace
  - tinyxml2::XMLPrinter::PrintString
  - tinyxml2::XMLPrinter::PushHeader
  - tinyxml2::XMLPrinter::PrepareForNewNode
  - tinyxml2::XMLPrinter::OpenElement
  - tinyxml2::XMLPrinter::PushAttribute
  - tinyxml2::XMLPrinter::PushAttribute
  - tinyxml2::XMLPrinter::PushAttribute
  - tinyxml2::XMLPrinter::PushAttribute
  - tinyxml2::XMLPrinter::PushAttribute
  - tinyxml2::XMLPrinter::PushAttribute
  - tinyxml2::XMLPrinter::PushAttribute
  - tinyxml2::XMLPrinter::CloseElement
  - tinyxml2::XMLPrinter::SealElementIfJustOpened
  - tinyxml2::XMLPrinter::PushText
  - tinyxml2::XMLPrinter::PushText
  - tinyxml2::XMLPrinter::PushText
  - tinyxml2::XMLPrinter::PushText
  - tinyxml2::XMLPrinter::PushText
  - tinyxml2::XMLPrinter::PushText
  - tinyxml2::XMLPrinter::PushText
  - tinyxml2::XMLPrinter::PushText
  - tinyxml2::XMLPrinter::PushComment
  - tinyxml2::XMLPrinter::PushDeclaration
  - tinyxml2::XMLPrinter::PushUnknown
  - tinyxml2::XMLPrinter::VisitEnter
  - tinyxml2::XMLPrinter::VisitEnter
  - tinyxml2::XMLPrinter::VisitExit
  - tinyxml2::XMLPrinter::Visit
  - tinyxml2::XMLPrinter::Visit
  - tinyxml2::XMLPrinter::Visit
  - tinyxml2::XMLPrinter::Visit
  - StrPair::~StrPair()
  - tinyxml2::StrPair::TransferTo
  - tinyxml2::StrPair::Reset
  - tinyxml2::StrPair::SetStr
  - tinyxml2::StrPair::ParseText
  - tinyxml2::StrPair::ParseName
  - tinyxml2::StrPair::CollapseWhitespace
  - tinyxml2::StrPair::GetStr
  - tinyxml2::XMLUtil::SetBoolSerialization
  - tinyxml2::XMLUtil::ReadBOM
  - tinyxml2::XMLUtil::ConvertUTF32ToUTF8
  - tinyxml2::XMLUtil::GetCharacterRef
  - tinyxml2::XMLUtil::ToStr
  - tinyxml2::XMLUtil::ToStr
  - tinyxml2::XMLUtil::ToStr
  - tinyxml2::XMLUtil::ToStr
  - tinyxml2::XMLUtil::ToStr
  - tinyxml2::XMLUtil::ToStr
  - tinyxml2::XMLUtil::ToStr
  - tinyxml2::XMLUtil::ToInt
  - tinyxml2::XMLUtil::ToUnsigned
  - tinyxml2::XMLUtil::ToBool
  - tinyxml2::XMLUtil::ToFloat
  - tinyxml2::XMLUtil::ToDouble
  - tinyxml2::XMLUtil::ToInt64
  - tinyxml2::XMLUtil::ToUnsigned64
  - tinyxml2::XMLDocument::Identify
  - tinyxml2::XMLDocument::Accept
  - tinyxml2::XMLNode::XMLNode
  - XMLNode::~XMLNode()
  - tinyxml2::XMLNode::ChildElementCount
  - tinyxml2::XMLNode::ChildElementCount
  - tinyxml2::XMLNode::Value
  - tinyxml2::XMLNode::SetValue
  - tinyxml2::XMLNode::DeepClone
  - tinyxml2::XMLNode::DeleteChildren
  - tinyxml2::XMLNode::Unlink
  - tinyxml2::XMLNode::DeleteChild
  - tinyxml2::XMLNode::InsertEndChild
  - tinyxml2::XMLNode::InsertFirstChild
  - tinyxml2::XMLNode::InsertAfterChild
  - tinyxml2::XMLNode::FirstChildElement
  - tinyxml2::XMLNode::LastChildElement
  - tinyxml2::XMLNode::NextSiblingElement
  - tinyxml2::XMLNode::PreviousSiblingElement
  - tinyxml2::XMLNode::ParseDeep
  - tinyxml2::XMLNode::DeleteNode
  - tinyxml2::XMLNode::InsertChildPreamble
  - tinyxml2::XMLNode::ToElementWithName
  - tinyxml2::XMLText::ParseDeep
  - tinyxml2::XMLText::ShallowClone
  - tinyxml2::XMLText::ShallowEqual
  - tinyxml2::XMLText::Accept
  - tinyxml2::XMLComment::XMLComment
  - XMLComment::~XMLComment()
  - tinyxml2::XMLComment::ParseDeep
  - tinyxml2::XMLComment::ShallowClone
  - tinyxml2::XMLComment::ShallowEqual
  - tinyxml2::XMLComment::Accept
  - tinyxml2::XMLDeclaration::XMLDeclaration
  - XMLDeclaration::~XMLDeclaration()
  - tinyxml2::XMLDeclaration::ParseDeep
  - tinyxml2::XMLDeclaration::ShallowClone
  - tinyxml2::XMLDeclaration::ShallowEqual
  - tinyxml2::XMLDeclaration::Accept
  - tinyxml2::XMLUnknown::XMLUnknown
  - XMLUnknown::~XMLUnknown()
  - tinyxml2::XMLUnknown::ParseDeep
  - tinyxml2::XMLUnknown::ShallowClone
  - tinyxml2::XMLUnknown::ShallowEqual
  - tinyxml2::XMLUnknown::Accept
  - tinyxml2::XMLAttribute::Name
  - tinyxml2::XMLAttribute::Value
  - tinyxml2::XMLAttribute::ParseDeep
  - tinyxml2::XMLAttribute::SetName
  - tinyxml2::XMLAttribute::QueryIntValue
  - tinyxml2::XMLAttribute::QueryUnsignedValue
  - tinyxml2::XMLAttribute::QueryInt64Value
  - tinyxml2::XMLAttribute::QueryUnsigned64Value
  - tinyxml2::XMLAttribute::QueryBoolValue
  - tinyxml2::XMLAttribute::QueryFloatValue
  - tinyxml2::XMLAttribute::QueryDoubleValue
  - tinyxml2::XMLAttribute::SetAttribute
  - tinyxml2::XMLAttribute::SetAttribute
  - tinyxml2::XMLAttribute::SetAttribute
  - tinyxml2::XMLAttribute::SetAttribute
  - tinyxml2::XMLAttribute::SetAttribute
  - tinyxml2::XMLAttribute::SetAttribute
  - tinyxml2::XMLAttribute::SetAttribute
  - tinyxml2::XMLAttribute::SetAttribute
  - tinyxml2::XMLElement::XMLElement
  - XMLElement::~XMLElement()
  - tinyxml2::XMLElement::FindAttribute
  - tinyxml2::XMLElement::Attribute
  - tinyxml2::XMLElement::IntAttribute
  - tinyxml2::XMLElement::UnsignedAttribute
  - tinyxml2::XMLElement::Int64Attribute
  - tinyxml2::XMLElement::Unsigned64Attribute
  - tinyxml2::XMLElement::BoolAttribute
  - tinyxml2::XMLElement::DoubleAttribute
  - tinyxml2::XMLElement::FloatAttribute
  - tinyxml2::XMLElement::GetText
  - tinyxml2::XMLElement::SetText
  - tinyxml2::XMLElement::SetText
  - tinyxml2::XMLElement::SetText
  - tinyxml2::XMLElement::SetText
  - tinyxml2::XMLElement::SetText
  - tinyxml2::XMLElement::SetText
  - tinyxml2::XMLElement::SetText
  - tinyxml2::XMLElement::SetText
  - tinyxml2::XMLElement::QueryIntText
  - tinyxml2::XMLElement::QueryUnsignedText
  - tinyxml2::XMLElement::QueryInt64Text
  - tinyxml2::XMLElement::QueryUnsigned64Text
  - tinyxml2::XMLElement::QueryBoolText
  - tinyxml2::XMLElement::QueryDoubleText
  - tinyxml2::XMLElement::QueryFloatText
  - tinyxml2::XMLElement::IntText
  - tinyxml2::XMLElement::UnsignedText
  - tinyxml2::XMLElement::Int64Text
  - tinyxml2::XMLElement::Unsigned64Text
  - tinyxml2::XMLElement::BoolText
  - tinyxml2::XMLElement::DoubleText
  - tinyxml2::XMLElement::FloatText
  - tinyxml2::XMLElement::FindOrCreateAttribute
  - tinyxml2::XMLElement::DeleteAttribute
  - tinyxml2::XMLElement::ParseAttributes
  - tinyxml2::XMLElement::DeleteAttribute
  - tinyxml2::XMLElement::CreateAttribute
  - tinyxml2::XMLElement::InsertNewChildElement
  - tinyxml2::XMLElement::InsertNewComment
  - tinyxml2::XMLElement::InsertNewText
  - tinyxml2::XMLElement::InsertNewDeclaration
  - tinyxml2::XMLElement::InsertNewUnknown
  - tinyxml2::XMLElement::ParseDeep
  - tinyxml2::XMLElement::ShallowClone
  - tinyxml2::XMLElement::ShallowEqual
  - tinyxml2::XMLElement::Accept
  - tinyxml2::XMLDocument::XMLDocument
  - XMLDocument::~XMLDocument()
  - tinyxml2::XMLDocument::MarkInUse
  - tinyxml2::XMLDocument::Clear
  - tinyxml2::XMLDocument::DeepCopy
  - tinyxml2::XMLDocument::NewElement
  - tinyxml2::XMLDocument::NewComment
  - tinyxml2::XMLDocument::NewText
  - tinyxml2::XMLDocument::NewDeclaration
  - tinyxml2::XMLDocument::NewUnknown
  - tinyxml2::callfopen
  - tinyxml2::XMLDocument::DeleteNode
  - tinyxml2::XMLDocument::LoadFile
  - tinyxml2::XMLDocument::LoadFile
  - tinyxml2::XMLDocument::SaveFile
  - tinyxml2::XMLDocument::SaveFile
  - tinyxml2::XMLDocument::Parse
  - tinyxml2::XMLDocument::Print
  - tinyxml2::XMLDocument::ClearError
  - tinyxml2::XMLDocument::SetError
  - tinyxml2::XMLDocument::ErrorIDToName
  - tinyxml2::XMLDocument::ErrorStr
  - tinyxml2::XMLDocument::PrintError
  - tinyxml2::XMLDocument::ErrorName
  - tinyxml2::XMLDocument::Parse
  - tinyxml2::XMLDocument::PushDepth
  - tinyxml2::XMLDocument::PopDepth
  - tinyxml2::XMLPrinter::XMLPrinter
  - tinyxml2::XMLPrinter::Print
  - tinyxml2::XMLPrinter::Write
  - tinyxml2::XMLPrinter::Putc
  - tinyxml2::XMLPrinter::PrintSpace
  - tinyxml2::XMLPrinter::PrintString
  - tinyxml2::XMLPrinter::PushHeader
  - tinyxml2::XMLPrinter::PrepareForNewNode
  - tinyxml2::XMLPrinter::OpenElement
  - tinyxml2::XMLPrinter::PushAttribute
  - tinyxml2::XMLPrinter::PushAttribute
  - tinyxml2::XMLPrinter::PushAttribute
  - tinyxml2::XMLPrinter::PushAttribute
  - tinyxml2::XMLPrinter::PushAttribute
  - tinyxml2::XMLPrinter::PushAttribute
  - tinyxml2::XMLPrinter::PushAttribute
  - tinyxml2::XMLPrinter::CloseElement
  - tinyxml2::XMLPrinter::SealElementIfJustOpened
  - tinyxml2::XMLPrinter::PushText
  - tinyxml2::XMLPrinter::PushText
  - tinyxml2::XMLPrinter::PushText
  - tinyxml2::XMLPrinter::PushText
  - tinyxml2::XMLPrinter::PushText
  - tinyxml2::XMLPrinter::PushText
  - tinyxml2::XMLPrinter::PushText
  - tinyxml2::XMLPrinter::PushText
  - tinyxml2::XMLPrinter::PushComment
  - tinyxml2::XMLPrinter::PushDeclaration
  - tinyxml2::XMLPrinter::PushUnknown
  - tinyxml2::XMLPrinter::VisitEnter
  - tinyxml2::XMLPrinter::VisitEnter
  - tinyxml2::XMLPrinter::VisitExit
  - tinyxml2::XMLPrinter::Visit
  - tinyxml2::XMLPrinter::Visit
  - tinyxml2::XMLPrinter::Visit
  - tinyxml2::XMLPrinter::Visit
  source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
  types:
    enum: []
    preproc_defs:
    - item_type: preproc_def
      name: TIXML_VSCPRINTF
      pos:
        line_end: 59
        line_start: 58
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "_vscprintf\r"
    - item_type: preproc_def
      name: TIXML_SSCANF
      pos:
        line_end: 60
        line_start: 59
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "sscanf_s\r"
    - item_type: preproc_def
      name: TIXML_SNPRINTF
      pos:
        line_end: 63
        line_start: 62
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "_snprintf\r"
    - item_type: preproc_def
      name: TIXML_VSNPRINTF
      pos:
        line_end: 64
        line_start: 63
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "_vsnprintf\r"
    - item_type: preproc_def
      name: TIXML_SSCANF
      pos:
        line_end: 65
        line_start: 64
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "sscanf\r"
    - item_type: preproc_def
      name: TIXML_VSCPRINTF
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "_vscprintf // VS2003's C runtime has this, but VC6 C runtime
        or WinCE SDK doesn't have.\r"
    - item_type: preproc_def
      name: TIXML_SNPRINTF
      pos:
        line_end: 92
        line_start: 91
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "snprintf\r"
    - item_type: preproc_def
      name: TIXML_VSNPRINTF
      pos:
        line_end: 93
        line_start: 92
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "vsnprintf\r"
    - item_type: preproc_def
      name: TIXML_SSCANF
      pos:
        line_end: 100
        line_start: 99
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "sscanf\r"
    - item_type: preproc_def
      name: TIXML_FSEEK
      pos:
        line_end: 104
        line_start: 103
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "_fseeki64\r"
    - item_type: preproc_def
      name: TIXML_FTELL
      pos:
        line_end: 105
        line_start: 104
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "_ftelli64\r"
    - item_type: preproc_def
      name: TIXML_FSEEK
      pos:
        line_end: 107
        line_start: 106
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "fseeko\r"
    - item_type: preproc_def
      name: TIXML_FTELL
      pos:
        line_end: 108
        line_start: 107
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "ftello\r"
    - item_type: preproc_def
      name: TIXML_FSEEK
      pos:
        line_end: 110
        line_start: 109
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "fseeko64\r"
    - item_type: preproc_def
      name: TIXML_FTELL
      pos:
        line_end: 111
        line_start: 110
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "ftello64\r"
    - item_type: preproc_def
      name: TIXML_FSEEK
      pos:
        line_end: 113
        line_start: 112
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "fseek\r"
    - item_type: preproc_def
      name: TIXML_FTELL
      pos:
        line_end: 114
        line_start: 113
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
      type_or_value: "ftell\r"
    structs:
    - fields:
      - name: '* pattern'
        type: char
      - name: length
        type: int
      - name: value
        type: char
      item_type: struct
      name: Entity
      pos:
        line_end: 139
        line_start: 135
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    - fields:
      - name: '* pattern'
        type: char
      - name: length
        type: int
      - name: value
        type: char
      item_type: struct
      name: Entity
      pos:
        line_end: 139
        line_start: 135
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.cpp
    typedefs: []
    union: []
- function_names:
  - TIXMLASSERT
  - TIXMLASSERT
  - TIXMLASSERT
  - tinyxml2::StrPair
  - tinyxml2::StrPair
  - tinyxml2::Set
  - tinyxml2::Empty
  - tinyxml2::SetInternedStr
  - tinyxml2::DynArray::DynArray
  - ~DynArray()
  - tinyxml2::DynArray::Clear
  - tinyxml2::DynArray::Push
  - tinyxml2::DynArray::PushArr
  - tinyxml2::DynArray::Pop
  - tinyxml2::DynArray::PopArr
  - tinyxml2::DynArray::Empty
  - '& operator[](size_t i)'
  - '& operator[](size_t i) const'
  - '& PeekTop() const'
  - tinyxml2::DynArray::Size
  - tinyxml2::DynArray::Capacity
  - tinyxml2::DynArray::SwapRemove
  - tinyxml2::DynArray::Mem
  - tinyxml2::DynArray::Mem
  - tinyxml2::DynArray::EnsureCapacity
  - tinyxml2::MemPool::MemPool
  - ~MemPool()
  - tinyxml2::MemPoolT::MemPoolT
  - ~MemPoolT()
  - tinyxml2::MemPoolT::Clear
  - tinyxml2::MemPoolT::ItemSize
  - tinyxml2::MemPoolT::CurrentAllocs
  - tinyxml2::MemPoolT::Alloc
  - tinyxml2::MemPoolT::Free
  - tinyxml2::MemPoolT::Trace
  - tinyxml2::MemPoolT::SetTracked
  - tinyxml2::MemPoolT::Untracked
  - tinyxml2::XMLVisitor
  - tinyxml2::VisitEnter
  - tinyxml2::VisitExit
  - tinyxml2::VisitEnter
  - tinyxml2::VisitExit
  - tinyxml2::Visit
  - tinyxml2::Visit
  - tinyxml2::Visit
  - tinyxml2::Visit
  - tinyxml2::XMLUtil
  - tinyxml2::SkipWhiteSpace
  - tinyxml2::IsWhiteSpace
  - tinyxml2::IsNameStartChar
  - tinyxml2::IsNameChar
  - tinyxml2::IsPrefixHex
  - tinyxml2::StringEqual
  - tinyxml2::IsUTF8Continuation
  - tinyxml2::StrPair
  - tinyxml2::StrPair
  - tinyxml2::Set
  - tinyxml2::Empty
  - tinyxml2::SetInternedStr
  - tinyxml2::DynArray::DynArray
  - ~DynArray()
  - tinyxml2::DynArray::Clear
  - tinyxml2::DynArray::Push
  - tinyxml2::DynArray::PushArr
  - tinyxml2::DynArray::Pop
  - tinyxml2::DynArray::PopArr
  - tinyxml2::DynArray::Empty
  - '& operator[](size_t i)'
  - '& operator[](size_t i) const'
  - '& PeekTop() const'
  - tinyxml2::DynArray::Size
  - tinyxml2::DynArray::Capacity
  - tinyxml2::DynArray::SwapRemove
  - tinyxml2::DynArray::Mem
  - tinyxml2::DynArray::Mem
  - tinyxml2::DynArray::EnsureCapacity
  - tinyxml2::MemPool::MemPool
  - ~MemPool()
  - tinyxml2::MemPoolT::MemPoolT
  - ~MemPoolT()
  - tinyxml2::MemPoolT::Clear
  - tinyxml2::MemPoolT::ItemSize
  - tinyxml2::MemPoolT::CurrentAllocs
  - tinyxml2::MemPoolT::Alloc
  - tinyxml2::MemPoolT::Free
  - tinyxml2::MemPoolT::Trace
  - tinyxml2::MemPoolT::SetTracked
  - tinyxml2::MemPoolT::Untracked
  - tinyxml2::XMLVisitor
  - tinyxml2::VisitEnter
  - tinyxml2::VisitExit
  - tinyxml2::VisitEnter
  - tinyxml2::VisitExit
  - tinyxml2::Visit
  - tinyxml2::Visit
  - tinyxml2::Visit
  - tinyxml2::Visit
  - tinyxml2::XMLUtil
  - tinyxml2::SkipWhiteSpace
  - tinyxml2::IsWhiteSpace
  - tinyxml2::IsNameStartChar
  - tinyxml2::IsNameChar
  - tinyxml2::IsPrefixHex
  - tinyxml2::StringEqual
  - tinyxml2::IsUTF8Continuation
  - XMLNode
  - GetDocument
  - ToElement
  - ToText
  - ToComment
  - ToDocument
  - ToDeclaration
  - ToUnknown
  - ToElement
  - ToText
  - ToComment
  - ToDocument
  - ToDeclaration
  - ToUnknown
  - GetLineNum
  - Parent
  - Parent
  - NoChildren
  - FirstChild
  - FirstChild
  - FirstChildElement
  - LastChild
  - LastChild
  - LastChildElement
  - PreviousSibling
  - PreviousSibling
  - PreviousSiblingElement
  - NextSibling
  - NextSibling
  - NextSiblingElement
  - LinkEndChild
  - SetUserData
  - GetUserData
  - XMLText
  - ToText
  - ToText
  - SetCData
  - CData
  - ~XMLText()
  - XMLComment
  - ToComment
  - XMLDeclaration
  - ToDeclaration
  - XMLUnknown
  - ToUnknown
  - XMLAttribute
  - GetLineNum
  - Next
  - IntValue
  - Int64Value
  - Unsigned64Value
  - UnsignedValue
  - BoolValue
  - DoubleValue
  - FloatValue
  - XMLAttribute
  - ~XMLAttribute()
  - XMLElement
  - SetName
  - ToElement
  - ToElement
  - QueryIntAttribute
  - QueryUnsignedAttribute
  - QueryInt64Attribute
  - QueryUnsigned64Attribute
  - QueryBoolAttribute
  - QueryDoubleAttribute
  - QueryFloatAttribute
  - QueryStringAttribute
  - QueryAttribute
  - QueryAttribute
  - QueryAttribute
  - QueryAttribute
  - QueryAttribute
  - QueryAttribute
  - QueryAttribute
  - QueryAttribute
  - SetAttribute
  - SetAttribute
  - SetAttribute
  - SetAttribute
  - SetAttribute
  - SetAttribute
  - SetAttribute
  - SetAttribute
  - FirstAttribute
  - ClosingType
  - XMLDocument
  - ToDocument
  - ToDocument
  - ProcessEntities
  - WhitespaceMode
  - HasBOM
  - SetBOM
  - RootElement
  - RootElement
  - Error
  - ErrorID
  - ErrorLineNum
  - ShallowClone
  - ShallowEqual
  - DepthTracker::DepthTracker
  - ~DepthTracker()
  - XMLDocument::CreateUnlinkedNode
  - XMLHandle
  - XMLHandle
  - '& operator=( const XMLHandle& ref )'
  - FirstChild
  - FirstChildElement
  - LastChild
  - LastChildElement
  - PreviousSibling
  - PreviousSiblingElement
  - NextSibling
  - NextSiblingElement
  - ToNode
  - ToElement
  - ToText
  - ToUnknown
  - ToDeclaration
  - XMLConstHandle
  - XMLConstHandle
  - '& operator=( const XMLConstHandle& ref )'
  - FirstChild
  - FirstChildElement
  - LastChild
  - LastChildElement
  - PreviousSibling
  - PreviousSiblingElement
  - NextSibling
  - NextSiblingElement
  - ToNode
  - ToElement
  - ToText
  - ToUnknown
  - ToDeclaration
  - XMLPrinter
  - ~XMLPrinter()
  - VisitExit
  - CStr
  - CStrSize
  - ClearBuffer
  - Write
  source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
  types:
    enum:
    - enumerators:
      - name: NEEDS_ENTITY_PROCESSING
        value: '0x01'
      - name: NEEDS_WHITESPACE_COLLAPSING
        value: '0x04'
      - name: NEEDS_NEWLINE_NORMALIZATION
        value: '0x02'
      - name: TEXT_ELEMENT_LEAVE_ENTITIES
        value: NEEDS_NEWLINE_NORMALIZATION
      - name: TEXT_ELEMENT
        value: NEEDS_ENTITY_PROCESSING | NEEDS_NEWLINE_NORMALIZATION
      - name: ATTRIBUTE_NAME
        value: '0'
      - name: ATTRIBUTE_VALUE
        value: NEEDS_ENTITY_PROCESSING | NEEDS_NEWLINE_NORMALIZATION
      - name: ATTRIBUTE_VALUE_LEAVE_ENTITIES
        value: NEEDS_NEWLINE_NORMALIZATION
      - name: COMMENT
        value: NEEDS_NEWLINE_NORMALIZATION
      item_type: enum
      name: Mode
      pos:
        line_end: 146
        line_start: 135
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    - enumerators:
      - name: XML_NO_ATTRIBUTE
      - name: XML_ERROR_FILE_READ_ERROR
      - name: XML_ERROR_PARSING_CDATA
      - name: XML_ERROR_EMPTY_DOCUMENT
      - name: XML_ERROR_FILE_COULD_NOT_BE_OPENED
      - name: XML_ERROR_PARSING_TEXT
      - name: XML_ERROR_PARSING_UNKNOWN
      - name: XML_ELEMENT_DEPTH_EXCEEDED
      - name: XML_ERROR_COUNT
      - name: XML_SUCCESS
        value: '0'
      - name: XML_ERROR_FILE_NOT_FOUND
      - name: XML_ERROR_PARSING_ATTRIBUTE
      - name: XML_ERROR_PARSING_DECLARATION
      - name: XML_ERROR_PARSING
      - name: XML_NO_TEXT_NODE
      - name: XML_WRONG_ATTRIBUTE_TYPE
      - name: XML_ERROR_PARSING_ELEMENT
      - name: XML_ERROR_MISMATCHED_ELEMENT
      - name: XML_ERROR_PARSING_COMMENT
      - name: XML_CAN_NOT_CONVERT_TEXT
      item_type: enum
      name: XMLError
      pos:
        line_end: 540
        line_start: 518
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    - enumerators:
      - name: NEEDS_ENTITY_PROCESSING
        value: '0x01'
      - name: NEEDS_WHITESPACE_COLLAPSING
        value: '0x04'
      - name: NEEDS_NEWLINE_NORMALIZATION
        value: '0x02'
      - name: TEXT_ELEMENT_LEAVE_ENTITIES
        value: NEEDS_NEWLINE_NORMALIZATION
      - name: TEXT_ELEMENT
        value: NEEDS_ENTITY_PROCESSING | NEEDS_NEWLINE_NORMALIZATION
      - name: ATTRIBUTE_NAME
        value: '0'
      - name: ATTRIBUTE_VALUE
        value: NEEDS_ENTITY_PROCESSING | NEEDS_NEWLINE_NORMALIZATION
      - name: ATTRIBUTE_VALUE_LEAVE_ENTITIES
        value: NEEDS_NEWLINE_NORMALIZATION
      - name: COMMENT
        value: NEEDS_NEWLINE_NORMALIZATION
      item_type: enum
      name: Mode
      pos:
        line_end: 146
        line_start: 135
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    - enumerators:
      - name: XML_NO_ATTRIBUTE
      - name: XML_ERROR_FILE_READ_ERROR
      - name: XML_ERROR_PARSING_CDATA
      - name: XML_ERROR_EMPTY_DOCUMENT
      - name: XML_ERROR_FILE_COULD_NOT_BE_OPENED
      - name: XML_ERROR_PARSING_TEXT
      - name: XML_ERROR_PARSING_UNKNOWN
      - name: XML_ELEMENT_DEPTH_EXCEEDED
      - name: XML_ERROR_COUNT
      - name: XML_SUCCESS
        value: '0'
      - name: XML_ERROR_FILE_NOT_FOUND
      - name: XML_ERROR_PARSING_ATTRIBUTE
      - name: XML_ERROR_PARSING_DECLARATION
      - name: XML_ERROR_PARSING
      - name: XML_NO_TEXT_NODE
      - name: XML_WRONG_ATTRIBUTE_TYPE
      - name: XML_ERROR_PARSING_ELEMENT
      - name: XML_ERROR_MISMATCHED_ELEMENT
      - name: XML_ERROR_PARSING_COMMENT
      - name: XML_CAN_NOT_CONVERT_TEXT
      item_type: enum
      name: XMLError
      pos:
        line_end: 540
        line_start: 518
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    - enumerators:
      - name: OPEN
      - name: CLOSING
      - name: CLOSED
      item_type: enum
      name: ElementClosingType
      pos:
        line_end: 1676
        line_start: 1672
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    - enumerators:
      - name: PRESERVE_WHITESPACE
      - name: COLLAPSE_WHITESPACE
      - name: PEDANTIC_WHITESPACE
      item_type: enum
      name: Whitespace
      pos:
        line_end: 1710
        line_start: 1706
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    preproc_defs:
    - item_type: preproc_def
      name: TINYXML2_LIB
      pos:
        line_end: 66
        line_start: 65
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
      type_or_value: "__declspec(dllexport)\r"
    - item_type: preproc_def
      name: TINYXML2_LIB
      pos:
        line_end: 68
        line_start: 67
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
      type_or_value: "__declspec(dllimport)\r"
    - item_type: preproc_def
      name: TINYXML2_LIB
      pos:
        line_end: 73
        line_start: 72
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
      type_or_value: "__attribute__((visibility(\"default\")))\r"
    - item_type: preproc_def
      name: TIXMLASSERT
      pos:
        line_end: 89
        line_start: 88
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
      type_or_value: "assert\r"
    - item_type: preproc_def
      name: TINYXML2_MAJOR_VERSION
      pos:
        line_end: 103
        line_start: 102
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
      type_or_value: "11\r"
    - item_type: preproc_def
      name: TINYXML2_MINOR_VERSION
      pos:
        line_end: 104
        line_start: 103
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
      type_or_value: "0\r"
    - item_type: preproc_def
      name: TINYXML2_PATCH_VERSION
      pos:
        line_end: 105
        line_start: 104
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
      type_or_value: "0\r"
    structs:
    - fields:
      - name: items[ITEMS_PER_BLOCK]
        type: Item
      item_type: struct
      name: Block
      pos:
        line_end: 445
        line_start: 443
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    - fields:
      - name: items[ITEMS_PER_BLOCK]
        type: Item
      item_type: struct
      name: Block
      pos:
        line_end: 445
        line_start: 443
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    typedefs: []
    union:
    - fields:
      - name: '*   next'
        type: Item
      - name: itemData[static_cast<size_t>(ITEM_SIZE)]
        type: char
      item_type: union
      name: Item
      pos:
        line_end: 442
        line_start: 439
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
    - fields:
      - name: '*   next'
        type: Item
      - name: itemData[static_cast<size_t>(ITEM_SIZE)]
        type: char
      item_type: union
      name: Item
      pos:
        line_end: 442
        line_start: 439
        source_file: /src/behaviortreecpp/3rdparty/tinyxml2/tinyxml2.h
- function_names:
  - ExceptionFilter::isExpectedException
  - BlackboardFuzzer::generateKey
  - BlackboardFuzzer::fuzzSingleBB
  - BlackboardFuzzer::createBlackboardHierarchy
  - BlackboardFuzzer::fuzzJsonOperations
  - BlackboardFuzzer::BlackboardFuzzer
  - BlackboardFuzzer::fuzz
  - LLVMFuzzerTestOneInput
  source_file: /src/behaviortreecpp/fuzzing/bb_fuzzer.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - generateFuzzedNodeXML
  - LLVMFuzzerTestOneInput
  source_file: /src/behaviortreecpp/fuzzing/bt_fuzzer.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
- function_names:
  - LLVMFuzzerTestOneInput
  source_file: /src/behaviortreecpp/fuzzing/script_fuzzer.cpp
  types:
    enum: []
    preproc_defs: []
    structs: []
    typedefs: []
    union: []
